First let me thank you for your quick and informative and very helpful
responses.

Installing the mainline kernel is not really an option for the following
reason: The server is at a client and was built about a month before
Ubuntu 18.04 was released, so I opted to install Ubuntu Server 17.10 to
get the latest updates in KVM and then upgrade to 18.04 as soon as it
became available. This upgrade lead to PCI graphics adapter not
forwarded (needed for 3D graphics used on VM) as well as the USB PCI
card and it caused. Fortunately Christian got my heart rate back to
normal after pointing out how I could fix the Graphics pass-through
(which was at the time crucial to get the office firing on all
cylinders). In the mean time I used other solutions to get round a
number of USB issues (including falling back to a old VirtualBox VM for
one application and using Dosbox for interfacing with a USB to Serial
device). So at this point I am reluctant to try a kernel that is not
released via the Ubuntu repositories as I think you can understand. How
long do you think it will take for this current mainline kernel release
you meniuned to make its way into Ubuntu repositories?

There is one side effect of the USB pass-through that I don't think I
have mentioned to now, but I am not very clear on its relevance and even
if this is a real issue. Every time I have ever worked with USB devices,
I always relied on the USB device ID (e.g. 1d6b:0002). For some peculiar
reason in the Windows 10 pro VM this ID is nowhere to be found when
going through the device properties in the device manager. I only saw
this after trying to identify the correct USB device for updating a
driver and it might be that Windows just never show the ID, or it could
be because of changes to the way USB devices connected to a USB
controller card is now shared to a VM when only the card is passed to
the VM using pass-through. The most likely explanation is that I try to
steer clear of Windows wherever possible and therefore does not know too
much on what to expect when I am faced with a situation where I have to
look deeper. In any event, you would know best what to make of this.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1781891

Title:
  PCI USB card passthrough does not work any more

Status in linux package in Ubuntu:
  Incomplete

Bug description:
  System information:
  Ubuntu 18.04 LTS (server edition) with kernel 4.15.0-24-generic x86_64
  Upgraded from Ubuntu server 17.10

  Software:
  qemu-kvm:
    Installed: 1:2.11+dfsg-1ubuntu7.4
    Candidate: 1:2.11+dfsg-1ubuntu7.4
    Version table:
   *** 1:2.11+dfsg-1ubuntu7.4 500
          500 http://za.archive.ubuntu.com/ubuntu bionic-updates/main amd64 
Packages
          100 /var/lib/dpkg/status
       1:2.11+dfsg-1ubuntu7.3 500
          500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 
Packages
       1:2.11+dfsg-1ubuntu7 500
          500 http://za.archive.ubuntu.com/ubuntu bionic/main amd64 Packages

  
  Hardware: 
  Motherboard: X370 Killer SLI
  CPU: AMD Ryzen 7 1800X

  PCI device: 
  27:00.0 USB controller: VIA Technologies, Inc. VL805 USB 3.0 Host Controller 
(rev 01)
  IOMMU Group 15 27:00.0 USB controller [0c03]: VIA Technologies, Inc. VL805 
USB 3.0 Host Controller [1106:3483] (rev 01)

  USB controller of PCI card:
  Bus 003 Device 002: ID 2109:3431 VIA Labs, Inc. Hub

  Loaded device drivers:

  
  Before upgrading to Ubuntu 18.04, this PCI device was added to pci-stub.ids 
which allowed the device to be passed to a Windows 10 VM. In turn, all USB 
devices connected to this card worked in the VM and drivers could successfully 
be installed.

  Since the upgrade from Ubuntu 17.10 to Ubuntu 18.04, I have tried
  several approaches to have this device not bound to the xhci driver
  but all in vain. (In every test I did, I always performed update-
  initramfs -u as well as update-grub)

  pci-stub.ids does not stop xhci from grabbing device. So passing PCI
  card to VM does not work

  Adding the device ID to /etc/modprobe.d/vfio.conf (options) does seem
  to load the connect the vfio driver to it, but xhci still binds to it
  as well, so passing PCI device to VM does not work.

  Adding "0000:27:00.0,xhci" to /etc/unbindpci also did not work.

  By adding the USB controller to the VM, USB devices connected to it
  does seem to be USB devices on the VM, but some of the drivers does
  not load correctly in Windows 10. For example, I need to install a
  device driver for a ROCKEY4 USB dongle and even though the driver
  installs (which must be done with device disconnected), the driver
  does not seem to ever bind correctly to the device because the
  software that uses the dongle does not recognise it.

  I have successfully bound a PCI graphics adapter to the VM, so in
  principle PCI passthrough works, bit in the case of the USB PCI card
  there seems to be no way to pass the device to a VM.

  Expected result:

  PCI passthrough should be available to all types of PCI devices and 
instructions should be available from qemu or kvm documentation even though it 
involves different parts of the OS (such as making use of 
/etc/modprobe/vfio.conf, /etc/unbindpci etc)
  --- 
  AlsaVersion: Advanced Linux Sound Architecture Driver Version 
k4.15.0-24-generic.
  AplayDevices: Error: [Errno 2] No such file or directory: 'aplay': 'aplay'
  ApportVersion: 2.20.9-0ubuntu7.1
  Architecture: amd64
  ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord': 
'arecord'
  AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/by-path', 
'/dev/snd/hwC0D0', '/dev/snd/pcmC0D0c', '/dev/snd/pcmC0D0p', 
'/dev/snd/controlC0', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
  Card0.Amixer.info: Error: [Errno 2] No such file or directory: 'amixer': 
'amixer'
  Card0.Amixer.values: Error: [Errno 2] No such file or directory: 'amixer': 
'amixer'
  DistroRelease: Ubuntu 18.04
  HibernationDevice: RESUME=UUID=087ca1e6-4fd0-4a4b-a323-8b8ce733b3c7
  InstallationDate: Installed on 2018-03-14 (124 days ago)
  InstallationMedia: Ubuntu-Server 16.04.3 LTS "Xenial Xerus" - Release amd64 
(20170801)
  IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig': 'iwconfig'
  Lsusb:
   Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
   Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
   Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
   Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
  MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
  Package: linux (not installed)
  ProcFB: 0 qxldrmfb
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-24-generic 
root=UUID=0286b7bc-6ce2-494c-89aa-6c4402876bad ro
  ProcVersionSignature: Ubuntu 4.15.0-24.26-generic 4.15.18
  RelatedPackageVersions:
   linux-restricted-modules-4.15.0-24-generic N/A
   linux-backports-modules-4.15.0-24-generic  N/A
   linux-firmware                             1.173
  RfKill: Error: [Errno 2] No such file or directory: 'rfkill': 'rfkill'
  Tags:  bionic
  Uname: Linux 4.15.0-24-generic x86_64
  UpgradeStatus: Upgraded to bionic on 2018-05-11 (66 days ago)
  UserGroups:
   
  _MarkForUpload: True
  dmi.bios.date: 02/06/2015
  dmi.bios.vendor: EFI Development Kit II / OVMF
  dmi.bios.version: 0.0.0
  dmi.chassis.type: 1
  dmi.chassis.vendor: QEMU
  dmi.chassis.version: pc-i440fx-artful
  dmi.modalias: 
dmi:bvnEFIDevelopmentKitII/OVMF:bvr0.0.0:bd02/06/2015:svnQEMU:pnStandardPC(i440FX+PIIX,1996):pvrpc-i440fx-artful:cvnQEMU:ct1:cvrpc-i440fx-artful:
  dmi.product.name: Standard PC (i440FX + PIIX, 1996)
  dmi.product.version: pc-i440fx-artful
  dmi.sys.vendor: QEMU

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1781891/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to