[dpdk-stable] patch 'igb_uio: fix unexpected removal for hot-unplug' has been queued to LTS release 17.11.5

Yongseok Koh yskoh at mellanox.com
Thu Dec 20 01:18:35 CET 2018


Hi,

This patch is being removed from stable/17.11 as it was mistakenly merged.
Patches having 'fix' keyword in the title were merged even though those don't
have "Cc: stable at dpdk.org" tag in the commit message.

If you think this patch is still needed for stable/17.11, please let me know.
Then I'll take it back.


Thanks,
Yongseok


> On Nov 29, 2018, at 3:11 PM, Yongseok Koh <yskoh at mellanox.com> wrote:
> 
> Hi,
> 
> FYI, your patch has been queued to LTS release 17.11.5
> 
> Note it hasn't been pushed to https://emea01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fdpdk.org%2Fbrowse%2Fdpdk-stable&data=02%7C01%7Cyskoh%40mellanox.com%7C9a85707264f84fa23fbc08d656506c13%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C636791300746459390&sdata=RiJcaNBcf8to1Bfkg%2FfrK7lG%2FxBlKu%2F5EYnIxD2MBhI%3D&reserved=0 yet.
> It will be pushed if I get no objections before 12/01/18. So please
> shout if anyone has objections.
> 
> Also note that after the patch there's a diff of the upstream commit vs the patch applied
> to the branch. If the code is different (ie: not only metadata diffs), due for example to
> a change in context or macro names, please double check it.
> 
> Thanks.
> 
> Yongseok
> 
> ---
> From 8933c679415efb064aa46025fc84df6765577897 Mon Sep 17 00:00:00 2001
> From: Jeff Guo <jia.guo at intel.com>
> Date: Thu, 18 Oct 2018 14:27:15 +0800
> Subject: [PATCH] igb_uio: fix unexpected removal for hot-unplug
> 
> [ upstream commit 70efa4116420b6f7a0734711dd603d3024366c79 ]
> 
> When a device is hot-unplugged, pci_remove will be invoked unexpectedly
> before pci_release, it will caused kernel hung issue which will throw the
> error info of "Trying to free already-free IRQ XXX". And on the other hand,
> if pci_remove before pci_release, the interrupt will not got chance to be
> disabled. So this patch aim to fix this issue by adding pci_release call
> in pci_remove, it will gurranty that all pci clean up will be done before
> pci removal.
> 
> Signed-off-by: Jeff Guo <jia.guo at intel.com>
> Acked-by: Ferruh Yigit <ferruh.yigit at intel.com>
> ---
> lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 2 ++
> 1 file changed, 2 insertions(+)
> 
> diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> index 45d70272d..22484ac14 100644
> --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> @@ -577,6 +577,8 @@ igbuio_pci_remove(struct pci_dev *dev)
> {
> 	struct rte_uio_pci_dev *udev = pci_get_drvdata(dev);
> 
> +	igbuio_pci_release(&udev->info, NULL);
> +
> 	sysfs_remove_group(&dev->dev.kobj, &dev_attr_grp);
> 	uio_unregister_device(&udev->info);
> 	igbuio_pci_release_iomem(&udev->info);
> -- 
> 2.11.0
> 
> ---
>  Diff of the applied patch vs upstream commit (please double-check if non-empty:
> ---
> --- -	2018-11-29 15:01:48.264909796 -0800
> +++ 0069-igb_uio-fix-unexpected-removal-for-hot-unplug.patch	2018-11-29 15:01:45.176961000 -0800
> @@ -1,8 +1,10 @@
> -From 70efa4116420b6f7a0734711dd603d3024366c79 Mon Sep 17 00:00:00 2001
> +From 8933c679415efb064aa46025fc84df6765577897 Mon Sep 17 00:00:00 2001
> From: Jeff Guo <jia.guo at intel.com>
> Date: Thu, 18 Oct 2018 14:27:15 +0800
> Subject: [PATCH] igb_uio: fix unexpected removal for hot-unplug
> 
> +[ upstream commit 70efa4116420b6f7a0734711dd603d3024366c79 ]
> +
> When a device is hot-unplugged, pci_remove will be invoked unexpectedly
> before pci_release, it will caused kernel hung issue which will throw the
> error info of "Trying to free already-free IRQ XXX". And on the other hand,
> @@ -14,14 +16,14 @@
> Signed-off-by: Jeff Guo <jia.guo at intel.com>
> Acked-by: Ferruh Yigit <ferruh.yigit at intel.com>
> ---
> - kernel/linux/igb_uio/igb_uio.c | 2 ++
> + lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> -diff --git a/kernel/linux/igb_uio/igb_uio.c b/kernel/linux/igb_uio/igb_uio.c
> -index fede66cf2..3cf394bdf 100644
> ---- a/kernel/linux/igb_uio/igb_uio.c
> -+++ b/kernel/linux/igb_uio/igb_uio.c
> -@@ -570,6 +570,8 @@ igbuio_pci_remove(struct pci_dev *dev)
> +diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> +index 45d70272d..22484ac14 100644
> +--- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> ++++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> +@@ -577,6 +577,8 @@ igbuio_pci_remove(struct pci_dev *dev)
>  {
>  	struct rte_uio_pci_dev *udev = pci_get_drvdata(dev);
> 



More information about the stable mailing list