Hi Christian

As you pointed out this does appear to be an issue with the reduced
kernel kvm image. I ran the same setup using a standard image and the
interface showed up. However after running your suggested updates from
comment A on the kvm kernal image, the interface still did not show up.


If I bring up the guest using a generic image (not the kvm specific
kernal) the interface appears for SRIOV VF


Linux emsk8sm1 5.4.0-47-generic #51-Ubuntu SMP Fri Sep 4 19:50:52 UTC 2020 
x86_64 x86_64 x86_64 GNU/Linux
$ ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group 
default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP 
group default qlen 1000
    link/ether 52:54:00:8a:9c:ea brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.243/22 brd 192.168.51.255 scope global ens3
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe8a:9cea/64 scope link 
       valid_lft forever preferred_lft forever
3: ens6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group 
default qlen 1000
    link/ether e2:7e:67:02:77:11 brd ff:ff:ff:ff:ff:ff
    inet 10.72.2.21/22 brd 10.72.3.255 scope global ens6
       valid_lft forever preferred_lft forever
    inet6 fe80::e07e:67ff:fe02:7711/64 scope link 
       valid_lft forever preferred_lft forever

              
This is the output from Linux 5.4.0-1020-kvm before any updates to linux-image
           
           
$ ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group 
default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP 
group default qlen 1000
    link/ether 52:54:00:8a:9c:ea brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.243/22 brd 192.168.51.255 scope global ens3
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe8a:9cea/64 scope link 
       valid_lft forever preferred_lft forever
3: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
4: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
        
        
$ lsmod
Module                  Size  Used by
loop                   28672  6
nls_utf8               12288  0
nls_iso8859_1          12288  1
nls_cp437              16384  1
vfat                   16384  1
fat                    57344  1 vfat
dm_multipath           20480  0
dm_mod                 86016  2 dm_multipath
kvm_intel             176128  0
pata_acpi              12288  0
ip_tables              20480  0
x_tables               24576  1 ip_tables


$ lspci -v
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: fast devsel

00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: medium devsel

00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] 
(prog-if 80 [ISA Compatibility mode-only controller, supports bus mastering])
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: bus master, medium devsel, latency 0
        Memory at 000001f0 (32-bit, non-prefetchable) [virtual] [size=8]
        Memory at 000003f0 (type 3, non-prefetchable) [virtual]
        Memory at 00000170 (32-bit, non-prefetchable) [virtual] [size=8]
        Memory at 00000370 (type 3, non-prefetchable) [virtual]
        I/O ports at c0e0 [virtual] [size=16]
        Kernel driver in use: ata_piix
        Kernel modules: pata_acpi

00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: medium devsel, IRQ 9

00:02.0 VGA compatible controller: Cirrus Logic GD 5446 (prog-if 00 [VGA 
controller])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: fast devsel
        Memory at fc000000 (32-bit, prefetchable) [size=32M]
        Memory at feb90000 (32-bit, non-prefetchable) [size=4K]
        Expansion ROM at 000c0000 [disabled] [size=128K]

00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
        Subsystem: Red Hat, Inc. Virtio network device
        Physical Slot: 3
        Flags: bus master, fast devsel, latency 0, IRQ 11
        I/O ports at c040 [size=32]
        Memory at feb91000 (32-bit, non-prefetchable) [size=4K]
        Memory at fe010000 (64-bit, prefetchable) [size=16K]
        Expansion ROM at feb00000 [disabled] [size=512K]
        Capabilities: <access denied>
        Kernel driver in use: virtio-pci

00:04.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI 
Controller #1 (rev 03) (prog-if 00 [UHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 11
        I/O ports at c060 [size=32]

00:04.1 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI 
Controller #2 (rev 03) (prog-if 00 [UHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 10
        I/O ports at c080 [size=32]

00:04.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI 
Controller #3 (rev 03) (prog-if 00 [UHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 10
        I/O ports at c0a0 [size=32]

00:04.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI 
Controller #1 (rev 03) (prog-if 20 [EHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 11
        Memory at feb92000 (32-bit, non-prefetchable) [size=4K]

00:05.0 SCSI storage controller: Red Hat, Inc. Virtio block device
        Subsystem: Red Hat, Inc. Virtio block device
        Physical Slot: 5
        Flags: bus master, fast devsel, latency 0, IRQ 10
        I/O ports at c000 [size=64]
        Memory at feb93000 (32-bit, non-prefetchable) [size=4K]
        Memory at fe014000 (64-bit, prefetchable) [size=16K]
        Capabilities: <access denied>
        Kernel driver in use: virtio-pci

00:06.0 Ethernet controller: Intel Corporation Ethernet Virtual Function 700 
Series (rev 02)
        Subsystem: Intel Corporation Ethernet Virtual Function 700 Series
        Physical Slot: 6
        Flags: fast devsel
        Memory at fe000000 (64-bit, prefetchable) [size=64K]
        Memory at fe018000 (64-bit, prefetchable) [size=16K]
        Capabilities: <access denied>

00:07.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
        Subsystem: Red Hat, Inc. Virtio memory balloon
        Physical Slot: 7
        Flags: bus master, fast devsel, latency 0, IRQ 11
        I/O ports at c0c0 [size=32]
        Memory at fe01c000 (64-bit, prefetchable) [size=16K]
        Capabilities: <access denied>
        Kernel driver in use: virtio-pci


        
After running the following commands
$ apt install linux-image-generic
$ apt remove linux-image-kvm
$ reboot
        
Note the interface does not show up after installing linux-image-generic        
        
$ ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group 
default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP 
group default qlen 1000
    link/ether 52:54:00:8a:9c:ea brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.243/22 brd 192.168.51.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe8a:9cea/64 scope link 
       valid_lft forever preferred_lft forever
3: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
4: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0

$       lsmod
Module                  Size  Used by
nls_utf8               12288  0
nls_iso8859_1          12288  1
nls_cp437              16384  1
vfat                   16384  1
loop                   28672  6
fat                    57344  1 vfat
dm_multipath           20480  0
dm_mod                 86016  2 dm_multipath
kvm_intel             176128  0
pata_acpi              12288  0
ip_tables              20480  0
x_tables               24576  1 ip_tables


$ lspci -v
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: fast devsel

00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: medium devsel

00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] 
(prog-if 80 [ISA Compatibility mode-only controller
, supports bus mastering])
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: bus master, medium devsel, latency 0
        Memory at 000001f0 (32-bit, non-prefetchable) [virtual] [size=8]
        Memory at 000003f0 (type 3, non-prefetchable) [virtual]
        Memory at 00000170 (32-bit, non-prefetchable) [virtual] [size=8]
        Memory at 00000370 (type 3, non-prefetchable) [virtual]
        I/O ports at c0e0 [virtual] [size=16]
        Kernel driver in use: ata_piix
        Kernel modules: pata_acpi

00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
        Subsystem: Red Hat, Inc. Qemu virtual machine
        Flags: medium devsel, IRQ 9

00:02.0 VGA compatible controller: Cirrus Logic GD 5446 (prog-if 00 [VGA 
controller])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: fast devsel
        Memory at fc000000 (32-bit, prefetchable) [size=32M]
        Memory at feb90000 (32-bit, non-prefetchable) [size=4K]
        Expansion ROM at 000c0000 [disabled] [size=128K]

00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
        Subsystem: Red Hat, Inc. Virtio network device
        Physical Slot: 3
        Flags: bus master, fast devsel, latency 0, IRQ 11
        I/O ports at c040 [size=32]
        Memory at feb91000 (32-bit, non-prefetchable) [size=4K]
        Memory at fe010000 (64-bit, prefetchable) [size=16K]
        Expansion ROM at feb00000 [disabled] [size=512K]
        Capabilities: [98] MSI-X: Enable- Count=3 Masked-
        Capabilities: [84] Vendor Specific Information: VirtIO: <unknown>
        Capabilities: [70] Vendor Specific Information: VirtIO: Notify
        Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
        Capabilities: [50] Vendor Specific Information: VirtIO: ISR
        Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
        Kernel driver in use: virtio-pci

00:04.0 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI 
Controller #1 (rev 03) (prog-if 00 [UHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 11
        I/O ports at c060 [size=32]

00:04.1 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI 
Controller #2 (rev 03) (prog-if 00 [UHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 10
        I/O ports at c080 [size=32]

00:04.2 USB controller: Intel Corporation 82801I (ICH9 Family) USB UHCI 
Controller #3 (rev 03) (prog-if 00 [UHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 10
        I/O ports at c0a0 [size=32]

00:04.7 USB controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI 
Controller #1 (rev 03) (prog-if 20 [EHCI])
        Subsystem: Red Hat, Inc. QEMU Virtual Machine
        Flags: bus master, fast devsel, latency 0, IRQ 11
        Memory at feb92000 (32-bit, non-prefetchable) [size=4K]

00:05.0 SCSI storage controller: Red Hat, Inc. Virtio block device
        Subsystem: Red Hat, Inc. Virtio block device
        Physical Slot: 5
        Flags: bus master, fast devsel, latency 0, IRQ 10
        I/O ports at c000 [size=64]
        Memory at feb93000 (32-bit, non-prefetchable) [size=4K]
        Memory at fe014000 (64-bit, prefetchable) [size=16K]
        Capabilities: [98] MSI-X: Enable- Count=2 Masked-
        Capabilities: [84] Vendor Specific Information: VirtIO: <unknown>
        Capabilities: [70] Vendor Specific Information: VirtIO: Notify
        Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
        Capabilities: [50] Vendor Specific Information: VirtIO: ISR
        Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
        Kernel driver in use: virtio-pci

00:06.0 Ethernet controller: Intel Corporation Ethernet Virtual Function 700 
Series (rev 02)
        Subsystem: Intel Corporation Ethernet Virtual Function 700 Series
        Physical Slot: 6
        Flags: fast devsel
        Memory at fe000000 (64-bit, prefetchable) [size=64K]
        Memory at fe018000 (64-bit, prefetchable) [size=16K]
        Capabilities: [70] MSI-X: Enable- Count=5 Masked-
        Capabilities: [a0] Express Endpoint, MSI 00

00:07.0 Unclassified device [00ff]: Red Hat, Inc. Virtio memory balloon
        Subsystem: Red Hat, Inc. Virtio memory balloon
        Physical Slot: 7
        Flags: bus master, fast devsel, latency 0, IRQ 11
        I/O ports at c0c0 [size=32]
        Memory at fe01c000 (64-bit, prefetchable) [size=16K]
        Capabilities: [84] Vendor Specific Information: VirtIO: <unknown>
        Capabilities: [70] Vendor Specific Information: VirtIO: Notify
        Capabilities: [60] Vendor Specific Information: VirtIO: DeviceCfg
        Capabilities: [50] Vendor Specific Information: VirtIO: ISR
        Capabilities: [40] Vendor Specific Information: VirtIO: CommonCfg
        Kernel driver in use: virtio-pci

** Changed in: linux (Ubuntu)
       Status: Incomplete => Confirmed

** Changed in: qemu (Ubuntu)
       Status: Incomplete => Confirmed

-- 
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/1892422

Title:
  Pci passthrough interface not showing up in Ubuntu 20.04 but does show
  in 18.04

Status in linux package in Ubuntu:
  Confirmed
Status in qemu package in Ubuntu:
  Confirmed

Bug description:
  
  After setting up pci pass through for a virtual function it did not show up 
as an interface in Ubuntu 20.04, it did however show up as a PCI device. 
  After reverting back to 18.04 with exactly the same configuration the 
interface showed up as expected.
  Bellow is the configuration and output for both 18.04 and 20.04.

  virt-install 
      --import 
      --connect qemu:///system --name emsk8sm1 --ram 8192 
      --disk pool/emsk8sm1/emsk8sm1.img,format=img,bus=virtio   
      --disk  cidata.img,device=cdrom,format=img  
      --vcpus 4 --cpu host --os-type linux --os-variant ubuntu18.04
      --network 
bridge=br0,model=virtio,virtualport_type=openvswitch,mac=52:54:00:8a:9c:ea
      --hostdev 3b:02.5
      --console pty,target_type=serial    
      --graphics type=vnc,listen=0.0.0.0     
      --noautoconsole
      --autostart -v
        

  Configuration of 18.04 where the passthrough works

  Version
  Linux emsk8sm1 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 
x86_64 x86_64 x86_64 GNU/Linux

  virsh dumpxml emsk8sm1
  <hostdev mode='subsystem' type='pci' managed='yes'>
    <driver name='vfio'/>
    <source>
        <address domain='0x0000' bus='0x3b' slot='0x02' function='0x5'/>
    </source>
    <alias name='hostdev0'/>
    <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
  </hostdev>
        
        
  lspci | grep Ethernet
  00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
  00:06.0 Ethernet controller: Intel Corporation Ethernet Virtual Function 700 
Series (rev 02)  <--- Pass through interface

  
  ip link show [interface shows inside of vm ens6]
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode 
DEFAULT group default qlen 1000
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP 
mode DEFAULT group default qlen 1000
      link/ether 52:54:00:8a:9c:ea brd ff:ff:ff:ff:ff:ff
  3: ens6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode 
DEFAULT group default qlen 1000
      link/ether ea:99:ea:36:3e:63 brd ff:ff:ff:ff:ff:ff

        
  Configuration of 20.04 where the VF shows as a PCI device but does not show 
as an interface

  Version
  Linux emsk8sm1 5.4.0-1020-kvm #20-Ubuntu SMP Fri Jul 10 05:03:04 UTC 2020 
x86_64 x86_64 x86_64 GNU/Linux

  virsh dumpxml emsk8sm1
  <hostdev mode='subsystem' type='pci' managed='yes'>
    <driver name='vfio'/>
    <source>
        <address domain='0x0000' bus='0x3b' slot='0x02' function='0x5'/>
    </source>
    <alias name='hostdev0'/>
    <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
  </hostdev>

        
  lspci | grep Ethernet
  00:03.0 Ethernet controller: Red Hat, Inc. Virtio network device
  00:06.0 Ethernet controller: Intel Corporation Ethernet Virtual Function 700 
Series (rev 02)   <--- Pass through interface

  
  ip link show [ens 6 does not show as an interface} 
  1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode 
DEFAULT group default qlen 1000
      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP 
mode DEFAULT group default qlen 1000
      link/ether 52:54:00:8a:9c:ea brd ff:ff:ff:ff:ff:ff
  3: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group 
default qlen 1000
      link/ipip 0.0.0.0 brd 0.0.0.0
  4: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group 
default qlen 1000
      link/sit 0.0.0.0 brd 0.0.0.0

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1892422/+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