[dpdk-dev] [PATCH] net/ixgbe: fix port close in FreeBSD OS

Yang, Qiming qiming.yang at intel.com
Mon Oct 28 06:50:18 CET 2019


Hi, Chenxu

> -----Original Message-----
> From: Di, ChenxuX
> Sent: Friday, October 25, 2019 12:53 PM
> To: dev at dpdk.org
> Cc: Lu, Wenzhuo <wenzhuo.lu at intel.com>; Yang, Qiming
> <qiming.yang at intel.com>; Di, ChenxuX <chenxux.di at 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 at 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



More information about the dev mailing list