Comment 10 for bug 1947422

Revision history for this message
Jacob Martin (jacobmartin) wrote :

Something to note, with the Q35/PCIe the resource is reassigned to the same address range it had originally. While with the i440FX/PCI, the resource is reassigned to a different address range.

An example, both running test 12 on the respective storage controller:

With Q35 (and thus PCIe):
[ 29.366793] ltp_tpci: assign resource #4
[ 29.366793] ltp_tpci: name = 0000:03:00.0, flags = 1319436, start 0xfe600000, end 0xfe603fff
[ 29.366800] virtio-pci 0000:03:00.0: BAR 4: releasing [mem 0xfe600000-0xfe603fff 64bit pref]
[ 29.366805] virtio-pci 0000:03:00.0: BAR 4: assigned [mem 0xfe600000-0xfe603fff 64bit pref]
[ 29.369398] ltp_tpci: assign resource to '4', ret '0'

With i440FX (and thus PCI):
[ 389.243214] ltp_tpci: assign resource #4
[ 389.243214] ltp_tpci: name = 0000:00:08.0, flags = 1319436, start 0xfebf4000, end 0xfebf7fff
[ 389.243216] virtio-pci 0000:00:08.0: BAR 4: releasing [mem 0xfebf4000-0xfebf7fff 64bit pref]
[ 389.243223] virtio-pci 0000:00:08.0: BAR 4: assigned [mem 0x240004000-0x240007fff 64bit pref]
[ 389.244118] ltp_tpci: assign resource to '4', ret '0'

Maybe reassigning a PCI device resource changes address ranges that the higher level drivers expect to remain constant?