* [dpdk-dev] [PATCH] net/ixgbe: fix port close in FreeBSD OS
@ 2019-10-25 4:52 Di ChenxuX
2019-10-28 5:50 ` Yang, Qiming
2019-11-01 2:26 ` [dpdk-dev] [PATCH v2] " Di ChenxuX
0 siblings, 2 replies; 4+ messages in thread
From: Di ChenxuX @ 2019-10-25 4:52 UTC (permalink / raw)
To: dev; +Cc: Wenzhuo Lu, Yang Qiming, Di ChenxuX
FreeBSD OS don't support igb_uio interrupt, so it will fail
that unregister intr callback when port close.
Fix by passing -ENOENT when check the return value of
unregister intr callback function.
Fixes: f2f4990eff94 ("net/ixgbe: release port upon close")
Signed-off-by: Di ChenxuX <chenxux.di@intel.com>
---
drivers/net/ixgbe/ixgbe_ethdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index dbce7a80e..0a654accb 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -2978,7 +2978,7 @@ ixgbe_dev_close(struct rte_eth_dev *dev)
do {
ret = rte_intr_callback_unregister(intr_handle,
ixgbe_dev_interrupt_handler, dev);
- if (ret >= 0) {
+ if (ret >= 0 || ret == -ENOENT) {
break;
} else if (ret != -EAGAIN) {
PMD_INIT_LOG(ERR,
--
2.17.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] [PATCH] net/ixgbe: fix port close in FreeBSD OS
2019-10-25 4:52 [dpdk-dev] [PATCH] net/ixgbe: fix port close in FreeBSD OS Di ChenxuX
@ 2019-10-28 5:50 ` Yang, Qiming
2019-11-01 2:26 ` [dpdk-dev] [PATCH v2] " Di ChenxuX
1 sibling, 0 replies; 4+ messages in thread
From: Yang, Qiming @ 2019-10-28 5:50 UTC (permalink / raw)
To: Di, ChenxuX, dev; +Cc: Lu, Wenzhuo
Hi, Chenxu
> -----Original Message-----
> From: Di, ChenxuX
> Sent: Friday, October 25, 2019 12:53 PM
> To: dev@dpdk.org
> Cc: Lu, Wenzhuo <wenzhuo.lu@intel.com>; Yang, Qiming
> <qiming.yang@intel.com>; Di, ChenxuX <chenxux.di@intel.com>
> Subject: [PATCH] net/ixgbe: fix port close in FreeBSD OS
>
> FreeBSD OS don't support igb_uio interrupt, so it will fail that unregister intr
> callback when port close.
it will fail when unregister the interrupt callback in port close.
> Fix by passing -ENOENT when check the return value of unregister intr
> callback function.
We can fix the issue by ... / please use interrupt not intr in commit message.
>
> Fixes: f2f4990eff94 ("net/ixgbe: release port upon close")
>
> Signed-off-by: Di ChenxuX <chenxux.di@intel.com>
> ---
> drivers/net/ixgbe/ixgbe_ethdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c
> b/drivers/net/ixgbe/ixgbe_ethdev.c
> index dbce7a80e..0a654accb 100644
> --- a/drivers/net/ixgbe/ixgbe_ethdev.c
> +++ b/drivers/net/ixgbe/ixgbe_ethdev.c
> @@ -2978,7 +2978,7 @@ ixgbe_dev_close(struct rte_eth_dev *dev)
> do {
> ret = rte_intr_callback_unregister(intr_handle,
> ixgbe_dev_interrupt_handler, dev);
> - if (ret >= 0) {
> + if (ret >= 0 || ret == -ENOENT) {
> break;
> } else if (ret != -EAGAIN) {
> PMD_INIT_LOG(ERR,
> --
> 2.17.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* [dpdk-dev] [PATCH v2] net/ixgbe: fix port close in FreeBSD OS
2019-10-25 4:52 [dpdk-dev] [PATCH] net/ixgbe: fix port close in FreeBSD OS Di ChenxuX
2019-10-28 5:50 ` Yang, Qiming
@ 2019-11-01 2:26 ` Di ChenxuX
2019-11-04 5:16 ` Ye Xiaolong
1 sibling, 1 reply; 4+ messages in thread
From: Di ChenxuX @ 2019-11-01 2:26 UTC (permalink / raw)
To: dev; +Cc: Yang Qiming, Di ChenxuX
FreeBSD OS don't support igb_uio interrupt, so it will fail
when unregister the interrupt callback in port close.
We can fix the issue by passing -ENOENT when check the
return value of unregister interrupt callback function.
Fixes: f2f4990eff94 ("net/ixgbe: release port upon close")
Signed-off-by: Di ChenxuX <chenxux.di@intel.com>
v2:
Modified commit log.
---
drivers/net/ixgbe/ixgbe_ethdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index dbce7a80e..0a654accb 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -2978,7 +2978,7 @@ ixgbe_dev_close(struct rte_eth_dev *dev)
do {
ret = rte_intr_callback_unregister(intr_handle,
ixgbe_dev_interrupt_handler, dev);
- if (ret >= 0) {
+ if (ret >= 0 || ret == -ENOENT) {
break;
} else if (ret != -EAGAIN) {
PMD_INIT_LOG(ERR,
--
2.17.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-dev] [PATCH v2] net/ixgbe: fix port close in FreeBSD OS
2019-11-01 2:26 ` [dpdk-dev] [PATCH v2] " Di ChenxuX
@ 2019-11-04 5:16 ` Ye Xiaolong
0 siblings, 0 replies; 4+ messages in thread
From: Ye Xiaolong @ 2019-11-04 5:16 UTC (permalink / raw)
To: Di ChenxuX; +Cc: dev, Yang Qiming
Seems i40e driver has the same issue, could you help to cook another fix patch
as well?
On 11/01, Di ChenxuX wrote:
>FreeBSD OS don't support igb_uio interrupt, so it will fail
> when unregister the interrupt callback in port close.
>We can fix the issue by passing -ENOENT when check the
> return value of unregister interrupt callback function.
>
>Fixes: f2f4990eff94 ("net/ixgbe: release port upon close")
>
>Signed-off-by: Di ChenxuX <chenxux.di@intel.com>
>
>v2:
>Modified commit log.
>---
> drivers/net/ixgbe/ixgbe_ethdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
>index dbce7a80e..0a654accb 100644
>--- a/drivers/net/ixgbe/ixgbe_ethdev.c
>+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
>@@ -2978,7 +2978,7 @@ ixgbe_dev_close(struct rte_eth_dev *dev)
> do {
> ret = rte_intr_callback_unregister(intr_handle,
> ixgbe_dev_interrupt_handler, dev);
>- if (ret >= 0) {
>+ if (ret >= 0 || ret == -ENOENT) {
> break;
> } else if (ret != -EAGAIN) {
> PMD_INIT_LOG(ERR,
>--
>2.17.1
>
Acked-by: Xiaolong Ye <xiaolong.ye@intel.com>
Applied to dpdk-next-net-intel. Thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-11-04 5:20 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-25 4:52 [dpdk-dev] [PATCH] net/ixgbe: fix port close in FreeBSD OS Di ChenxuX
2019-10-28 5:50 ` Yang, Qiming
2019-11-01 2:26 ` [dpdk-dev] [PATCH v2] " Di ChenxuX
2019-11-04 5:16 ` Ye Xiaolong
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).