]> git.karo-electronics.de Git - karo-tx-linux.git/commit
PCI: Finish SR-IOV VF setup before adding the device
authorXudong Hao <xudong.hao@intel.com>
Fri, 31 May 2013 04:21:29 +0000 (12:21 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 22 Jul 2013 01:21:30 +0000 (18:21 -0700)
commitc723caeecf4240abbdafbc4ccd96ef08828a2d4f
treeaafcf8b728ede495cdcbe7705f3614d79c553e08
parent323af551c09ddc7cac1c22486b1419aeb1cccdd5
PCI: Finish SR-IOV VF setup before adding the device

commit fbf33f516bdbcc2ab1ba1e54dfb720b0cfaa6874 upstream.

Commit 4f535093cf "PCI: Put pci_dev in device tree as early as possible"
moves device registering from pci_bus_add_devices() to pci_device_add().
That causes problems for virtual functions because device_add(&virtfn->dev)
is called before setting the virtfn->is_virtfn flag, which then causes Xen
to report PCI virtual functions as PCI physical functions.

Fix it by setting virtfn->is_virtfn before calling pci_device_add().

[Jiang Liu]: Move the setting of virtfn->is_virtfn ahead further for better
readability and modify changelog.

Signed-off-by: Xudong Hao <xudong.hao@intel.com>
Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/pci/iov.c