Fedora 27 Repository for Patched QEMU and Linux 4.15.15

Its optional, it shouldn’t be needed at all as the card won’t be using the pci-stub driver. should just be able to add the device to the VM after changing the pcie_acs_override.

… something went wrong)

which one is right parametr: pcie_acs_patch=
or pcie_acs_override=

?
PS
kernel v.: 4.15.13-300.fc27.x86_64

I haven’t heard of pcie_acs_patch= but I’ve used pcie_acs_override= with this kernel on Fedora 27 and it works.

The acs patch isn’t in the 4.15.13-300.fc27.x86_64 kernel and the latest version in the copr repo at this time is 4.15.9-300.acs.fc27.x86_64. Are you sure your loading the kernel with the acs patch applied?

… not at all now : -(

I’m noob in linux))

So I just execute the commands :

sudo dnf copr enable kebrx/QEMU-Patched
Then just sudo dnf update and you’ll pull down the patched versions.

May be I should downgrade the kernel before making this update?

The copr repo includes the kernel you need, you shouldn’t need to downgrade anything, just run:

sudo dnf copr enable kebrx/QEMU-Patched
sudo dnf update

which should download and install the new kernel and select it in your grub options when booting. If dnf update can’t find it manaully install it with:

sudo dnf install kernel-4.15.9-300.acs.fc27.x86_64

If you are using nvidia drivers you may also need to install the kernel-devel as well.

Yeeesss!

Thank you!!!
I see my devices in separate groups now!))

… but startx don’t want to start x)
I try to execute dnf install kernel-devel - it’s installs the kernel-devel 4.15.13
May be I need another version?

1 Like

Are you using Nvidia drivers? if so run:

sudo dnf install kernel-devel-4.15.9-300.acs.fc27.x86_64

also it should do it automatically but you can force build the akmod with:

sudo akmods --kernels 4.15.9-300.acs.fc27.x86_64

… sorry for too many questions :slight_smile:

… I installed kernel-devel-4.15.9-300.acs.fc27.x86_64

akmods wrote me that no akmod packages found

I try Xorg -configure , but - no result
… tried to remove xorg.conf - the same result

“…no screens found…”

beause akmods can’t find the packages mustn’t be using the proprietary nvidia drivers, what does /var/log/Xorg.0.log say when you run startx?

You should never use pci-stub. that’s been replaced by vfio.

pcie_acs_override is the correct parameter.

Looks like I need to update my package. :confused:

1 Like

Thank you!!!

:blush:

… there in the log: “failed to initialize the nvidia kernel module”

How did you install nvidia drivers?

… I have nvidia drivers installed during installation virtualization package …

UPD: I uninstalled nvidia driver now and then x-windows starts with nouveau

I am happy now ))
I started win10 with my new usb-hub card - so I don’t need passthrough usb ports any more)

Thank all of you !!!
It’s a big deal for me )

2 Likes

Update: I’m currently building the ACS patch into the latest Fedora kernel.

https://copr.fedorainfracloud.org/coprs/kebrx/QEMU-Patched/build/736944/

Update should land this evening.

2 Likes

So, 4.15.14 was released. Working on the package now.

1 Like

I’m aware that the packages are out of date. I’ll be updating them in the next 48 hours. I’ve got a lot going on at work right now.

I need to update both QEMU and Linux.

EDIT: the new version of QEMU will will include looking glass ivshmem patches and side-button support for the virtual mouse device.

1 Like

Lots of builds in the queue right now, probably not going to be ready until tomorrow. (Too bad I can’t upload my own binaries)

QEMU Build: https://copr.fedorainfracloud.org/coprs/kebrx/QEMU-Patched/build/740070/ Failed.

Kernel Build: https://copr.fedorainfracloud.org/coprs/kebrx/QEMU-Patched/build/740071/

EDIT: QEMU build failed. Here’s the new one: https://copr.fedorainfracloud.org/coprs/kebrx/QEMU-Patched/build/740110/

2 Likes

@SgtAwesomesauce I guess your repo is the only one that currently exist? it’s for intel under fedora 28 ?

By the way does anyone of you have a wiki page or something that explain what’s an ACS patch and what’s the acronym for and what’s the same thing about npt?

I’ve stopped maintaining the repo. I simply don’t have time to maintain a passthrough VM and I sure don’t have time to maintain the kernel patches with proper testing.

That said, this is another repo to sort that out:

https://copr.fedorainfracloud.org/coprs/jlay/kernel-acspatch/

NPT stands for Nested Page Tables. Here’s a whitepaper on it. It’s a bit dry, but you’ll fully understand it after you read through:

ACS stands for Access Control Services. What’s important to you is that ACS is how the kernel builds IOMMU groups. Using the ACS override, you can separate all the PCI devices out into their own IOMMU group, allowing you to pass a single device to a single VM.

I wrote about ACS briefly in this article:

3 Likes