Re: [PATCH 4/4] igb_uio: bind error if pcie bridge
From: Ferruh Yigit <hidden>
Date: 2018-03-26 18:21:01
On 3/26/2018 7:05 PM, Scott Branden wrote:
Hi Ferruh, On 18-03-26 10:24 AM, Ferruh Yigit wrote:quoted
On 3/21/2018 6:06 PM, Ajit Khaparde wrote:quoted
From: Darren Edamura <redacted> Probe function should exit immediately if pcie bridge detected Signed-off-by: Darren Edamura <redacted> Signed-off-by: Rahul Gupta <redacted> Signed-off-by: Scott Branden <scott.branden@broadcom.com> Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com> --- lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 3 +++ 1 file changed, 3 insertions(+)diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c index 4cae4dd27..3fabbfc4d 100644 --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c@@ -473,6 +473,9 @@ igbuio_pci_probe(struct pci_dev *dev, const struct pci_device_id *id) void *map_addr; int err; + if (pci_is_bridge(dev)) + return -ENODEV;What do you think printing a log here?I think it brings little value. ENODEV is already returned?
User should not provide bridge address at first place, I guess this is a protection in case user provides bridge address by mistake. In that case no device will be probed and user won't have any idea why. I think a log in dmesg saying bridge device is provided may help to the user.
quoted
quoted
+ udev = kzalloc(sizeof(struct rte_uio_pci_dev), GFP_KERNEL); if (!udev) return -ENOMEM;Regards, Scott