Since 620 RC4


reiner

Recommended Posts

I'm start the win7 vm from an unassigned nvme- after the update to rc4 this:

 

Execution error

 

internal error: process exited while connecting to monitor: 2016-08-19T13:33:14.482162Z qemu-system-x86_64: -device vfio-pci,host=00:1f.3,id=hostdev1,bus=pci.0,addr=0x6: vfio: error, group 9 is not viable, please ensure all devices within the iommu_group are bound to their vfio bus driver.

2016-08-19T13:33:14.482185Z qemu-system-x86_64: -device vfio-pci,host=00:1f.3,id=hostdev1,bus=pci.0,addr=0x6: vfio: failed to get group 9

2016-08-19T13:33:14.482192Z qemu-system-x86_64: -device vfio-pci,host=00:1f.3,id=hostdev1,bus=pci.0,addr=0x6: Device initialization failed

Link to comment

What kind of device are you trying to pass through?  What motherboard?  Where is your diagnostics.zip file?

 

We cannot fix anything without more information.

 

Error:

2016-08-20T19:58:53.569418Z qemu-system-x86_64: -device vfio-pci,host=00:1f.3,id=hostdev1,bus=pci.0,addr=0x8: vfio: error, group 9 is not viable, please ensure all devices within the iommu_group are bound to their vfio bus driver.
2016-08-20T19:58:53.569456Z qemu-system-x86_64: -device vfio-pci,host=00:1f.3,id=hostdev1,bus=pci.0,addr=0x8: vfio: failed to get group 9
2016-08-20T19:58:53.569470Z qemu-system-x86_64: -device vfio-pci,host=00:1f.3,id=hostdev1,bus=pci.0,addr=0x8: Device initialization failed

 

PCI Devices

00:00.0 Host bridge [0600]: Intel Corporation Skylake Host Bridge/DRAM Registers [8086:191f] (rev 07)
00:01.0 PCI bridge [0604]: Intel Corporation Skylake PCIe Controller (x16) [8086:1901] (rev 07)
00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:1912] (rev 06)
00:08.0 System peripheral [0880]: Intel Corporation Skylake Gaussian Mixture Model [8086:1911]
00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller [8086:a12f] (rev 31)
00:14.2 Signal processing controller [1180]: Intel Corporation Sunrise Point-H Thermal subsystem [8086:a131] (rev 31)
00:15.0 Signal processing controller [1180]: Intel Corporation Sunrise Point-H Serial IO I2C Controller #0 [8086:a160] (rev 31)
00:15.1 Signal processing controller [1180]: Intel Corporation Sunrise Point-H Serial IO I2C Controller #1 [8086:a161] (rev 31)
00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-H CSME HECI #1 [8086:a13a] (rev 31)
00:17.0 SATA controller [0106]: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] [8086:a102] (rev 31)
00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #5 [8086:a114] (rev f1)
00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-H LPC Controller [8086:a143] (rev 31)
00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-H PMC [8086:a121] (rev 31)
00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-H HD Audio [8086:a170] (rev 31)
00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-H SMBus [8086:a123] (rev 31)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204 [GeForce GTX 970] [10de:13c2] (rev a1)
01:00.1 Audio device [0403]: NVIDIA Corporation GM204 High Definition Audio Controller [10de:0fbb] (rev a1)
02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15)

 

IOMMU Groups

/sys/kernel/iommu_groups/0/devices/0000:00:00.0
/sys/kernel/iommu_groups/1/devices/0000:00:01.0
/sys/kernel/iommu_groups/2/devices/0000:00:02.0
/sys/kernel/iommu_groups/3/devices/0000:00:08.0
/sys/kernel/iommu_groups/4/devices/0000:00:14.0
/sys/kernel/iommu_groups/4/devices/0000:00:14.2
/sys/kernel/iommu_groups/5/devices/0000:00:15.0
/sys/kernel/iommu_groups/5/devices/0000:00:15.1
/sys/kernel/iommu_groups/6/devices/0000:00:16.0
/sys/kernel/iommu_groups/7/devices/0000:00:17.0
/sys/kernel/iommu_groups/8/devices/0000:00:1c.0
/sys/kernel/iommu_groups/8/devices/0000:02:00.0
/sys/kernel/iommu_groups/9/devices/0000:00:1f.0
/sys/kernel/iommu_groups/9/devices/0000:00:1f.2
/sys/kernel/iommu_groups/9/devices/0000:00:1f.3
/sys/kernel/iommu_groups/9/devices/0000:00:1f.4
/sys/kernel/iommu_groups/10/devices/0000:01:00.0
/sys/kernel/iommu_groups/10/devices/0000:01:00.1

fenix-diagnostics-20160820-2343.zip

Link to comment

You need to turn on the ACS override in settings --> VM settings.

The problem is that you have other stuff in the same iommu group as your sound card.

I had already enabled ACS override...

 

Enviado de meu SM-G930F usando Tapatalk

Then I don't see what else you can do. I guess the sound card you try to pass through is the onboard?

Try using the graphics card audio instead. Looks like your only option, unless someone else have any good suggestions.

 

Link to comment

You need to turn on the ACS override in settings --> VM settings.

The problem is that you have other stuff in the same iommu group as your sound card.

I had already enabled ACS override...

 

Enviado de meu SM-G930F usando Tapatalk

Then I don't see what else you can do. I guess the sound card you try to pass through is the onboard?

Try using the graphics card audio instead. Looks like your only option, unless someone else have any good suggestions.

 

Yes, onboard sound card...  in rc3 version worked  :-\

 

How rollback to rc3?

Link to comment

I had the exact same issue upgrading from rc3 to rc4. I didn't change anything explicitly, bt when I went to my WM settings, I found that there were two sound cards being passed through - the onboard one and the GPU one. I disabled the onboard one (set "first sound card" to the GPU sound card and the second to "none") and then I was able to boot my VM as before, and sound (through HDMI) works fine again.

Link to comment

Hi lads,

 

yeah the problem are the sound cards. to disable the onboard is no option because the (2nd) nvida  has no function , i will not the nvidia!!!

sorry , but malfunction on kvm is a no go area for the professional area,

 

It's something kernel 4.4.18. I used the kernel (rc3) in rc4 image and worked without issues...

Link to comment

The problem is that a bug fix in the kernel indirectly "broke" Skylake onboard audio pass through.  In Skylake, Intel put the onboard audio in the same IOMMU group as the SMBus controller.  A kernel bug prevented this SMBus controller from being recognized correctly, thus preventing assignment of the SMBus driver.  But once this bug got fixed, we now have a situation where a device in an IOMMU group has a kernel driver assigned, preventing it, and any other device in the same IOMMU group from being assignable to a VM.  Hence, for Skylake, onboard audio passthrough was working "by accident" in 4.4.17 and below  :o

 

ACS override may not work because these devices are behind a ISA bridge.  One fix if you are using a Skylake processor, and you want to pass through onboard audio, is going to be that you have to also stub the SMBus controller.  We're working on a few possible solutions...

Link to comment

Same issue here.

Passing through onboard sound worked suprisingly well (no acs needed), considering then iommu groups.

 

After going to rc4 I got the same error mentioned above. Turned on acs and updated bios, no effect.

Went back to rc3, its working again.

 

dAigo, I have a old diagnostics zip (4-5 months old) from you and it looks like your on-board sound card was probably disabled back then?:

00:00.0 Host bridge [0600]: Intel Corporation Skylake Host Bridge/DRAM Registers [8086:191f] (rev 07)
Subsystem: ASUSTeK Computer Inc. Sky Lake Host Bridge/DRAM Registers [1043:8694]
00:01.0 PCI bridge [0604]: Intel Corporation Skylake PCIe Controller (x16) [8086:1901] (rev 07)
Kernel driver in use: pcieport
00:02.0 VGA compatible controller [0300]: Intel Corporation Skylake Integrated Graphics [8086:1912] (rev 06)
Subsystem: ASUSTeK Computer Inc. Sky Lake Integrated Graphics [1043:8694]
00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller [8086:a12f] (rev 31)
Subsystem: ASUSTeK Computer Inc. Sunrise Point-H USB 3.0 xHCI Controller [1043:8694]
Kernel driver in use: xhci_hcd
00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-H CSME HECI #1 [8086:a13a] (rev 31)
Subsystem: ASUSTeK Computer Inc. Sunrise Point-H CSME HECI [1043:8694]
00:17.0 SATA controller [0106]: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] [8086:a102] (rev 31)
Subsystem: ASUSTeK Computer Inc. Device [1043:8694]
Kernel driver in use: ahci
Kernel modules: ahci
00:1b.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Root Port #17 [8086:a167] (rev f1)
Kernel driver in use: pcieport
00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #1 [8086:a110] (rev f1)
Kernel driver in use: pcieport
00:1d.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #9 [8086:a118] (rev f1)
Kernel driver in use: pcieport
00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-H LPC Controller [8086:a145] (rev 31)
Subsystem: ASUSTeK Computer Inc. Sunrise Point-H LPC Controller [1043:8694]
00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-H PMC [8086:a121] (rev 31)
Subsystem: ASUSTeK Computer Inc. Sunrise Point-H PMC [1043:8694]
00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-H SMBus [8086:a123] (rev 31)
Subsystem: ASUSTeK Computer Inc. Sunrise Point-H SMBus [1043:8694]
Kernel modules: i2c_i801
00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I219-V [8086:15b8] (rev 31)
Subsystem: ASUSTeK Computer Inc. Ethernet Connection (2) I219-V [1043:8672]
Kernel driver in use: e1000e
Kernel modules: e1000e
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM200 [GeForce GTX 980 Ti] [10de:17c8] (rev a1)
Subsystem: eVga.com. Corp. GM200 [GeForce GTX 980 Ti] [3842:4991]
Kernel driver in use: vfio-pci
01:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:0fb0] (rev a1)
Subsystem: eVga.com. Corp. Device [3842:4991]
Kernel driver in use: vfio-pci
03:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM1142 USB 3.1 Host Controller [1b21:1242]
Subsystem: ASUSTeK Computer Inc. ASM1142 USB 3.1 Host Controller [1043:8675]
Kernel driver in use: xhci_hcd
04:00.0 Non-Volatile memory controller [0108]: Intel Corporation PCIe Data Center SSD [8086:0953] (rev 01)
Subsystem: Intel Corporation SSD 750 Series [2.5" SFF] [8086:370e]
Kernel driver in use: nvme
Kernel modules: nvme

 

With your on-board sound card enabled, is it showing up under PCI Devices like this now?:

00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-H HD Audio [8086:a170] (rev 31)

Link to comment

The problem is that a bug fix in the kernel indirectly "broke" Skylake onboard audio pass through.  In Skylake, Intel put the onboard audio in the same IOMMU group as the SMBus controller.  A kernel bug prevented this SMBus controller from being recognized correctly, thus preventing assignment of the SMBus driver.  But once this bug got fixed, we now have a situation where a device in an IOMMU group has a kernel driver assigned, preventing it, and any other device in the same IOMMU group from being assignable to a VM.  Hence, for Skylake, onboard audio passthrough was working "by accident" in 4.4.17 and below  :o

 

I asumed exactly that and did not post a Bug report.

 

dAigo, I have a old diagnostics zip (4-5 months old) from you and it looks like your on-board sound card was probably disabled back then?

 

With your on-board sound card enabled, is it showing up under PCI Devices like this now?:

00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-H HD Audio [8086:a170] (rev 31)

 

Yes to both, wich is why I did not post new diagnostics while using a touchscreen... Too lazy and you should know my system by now ;)

Link to comment
  • 2 weeks later...

The problem is that a bug fix in the kernel indirectly "broke" Skylake onboard audio pass through.  In Skylake, Intel put the onboard audio in the same IOMMU group as the SMBus controller.  A kernel bug prevented this SMBus controller from being recognized correctly, thus preventing assignment of the SMBus driver.  But once this bug got fixed, we now have a situation where a device in an IOMMU group has a kernel driver assigned, preventing it, and any other device in the same IOMMU group from being assignable to a VM.  Hence, for Skylake, onboard audio passthrough was working "by accident" in 4.4.17 and below  :o

 

ACS override may not work because these devices are behind a ISA bridge.  One fix if you are using a Skylake processor, and you want to pass through onboard audio, is going to be that you have to also stub the SMBus controller.  We're working on a few possible solutions...

 

What might be downsides of stubbing the SMBus controller?

Link to comment
  • 2 weeks later...
  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.