[dpdk-dev] [PATCH v2] net/sfc: do not panic if alarms are not supported

Ferruh Yigit ferruh.yigit at intel.com
Fri Jan 20 13:36:40 CET 2017


On 1/19/2017 11:12 AM, Andrew Rybchenko wrote:
> Alarms are not supported on the FreeBSD.
> Application must poll link status periodically itself using
> rte_eth_link_get_nowait() to avoid management event queue overflow.
> 
> Fixes: 2de39f4e1310 ("net/sfc: periodic management EVQ polling using alarm")
> 
> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
> Reviewed-by: Andrew Lee <alee at solarflare.com>
> Reviewed-by: Andy Moreton <amoreton at solarflare.com>
> ---
> v2:
>  - fix spelling
> 
>  drivers/net/sfc/sfc_ev.c | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/net/sfc/sfc_ev.c b/drivers/net/sfc/sfc_ev.c
> index c788986..fe6de6f 100644
> --- a/drivers/net/sfc/sfc_ev.c
> +++ b/drivers/net/sfc/sfc_ev.c
> @@ -499,10 +499,14 @@
>  
>  	rc = rte_eal_alarm_set(SFC_MGMT_EV_QPOLL_PERIOD_US,
>  			       sfc_ev_mgmt_periodic_qpoll, sa);
> -	if (rc != 0)
> -		sfc_panic(sa,
> -			  "cannot rearm management EVQ polling alarm (rc=%d)",
> -			  rc);
> +	if (rc == -ENOTSUP) {
> +		sfc_warn(sa, "alarms are not supported");
> +		sfc_warn(sa, "management EVQ must be polled indirectly using no-wait link status update");

Who is the audience of this message, I am just trying to understand.

If this is for application developer, perhaps function should return and
error and log should be a debug log.

Or if it is for end user of the application, and this issue is something
that prevents app run properly, perhaps application should return error
instead of logging warning.

Overall I am a little suspicious about warn/err level of logs that does
not alter the execution path. I would like to hear more comments indeed.


> +	} else if (rc != 0) {
> +		sfc_err(sa,
> +			"cannot rearm management EVQ polling alarm (rc=%d)",
> +			rc);
> +	}
>  }
>  
>  static void
> 



More information about the dev mailing list