net/ixgbe: increase vf reset timeout
Checks
Commit Message
When vf issues a reset to pf there is a 50 msec wait plus an additional
max of 1 msec for the pf to indicate the reset is complete before
timeout.
In some cases, it is seen that the reset is timing out, in which case
the reset does not complete and an error is returned.
In order to account for this, continue to wait an initial 50 msecs,
but then allow a max of an additional 50 msecs for the command to
complete.
Fixes: af75078fece3 ("first public release")
Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
---
drivers/net/ixgbe/base/ixgbe_type.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
Hi Bruce,
I see you are the lucky delegate for this patch :-)
https://patchwork.dpdk.org/project/dpdk/patch/20240130100027.39466-1-ktraynor@redhat.com/
Just wondering if any comment and if it's planned for 23.03 or later
release ?
thanks,
Kevin.
On 30/01/2024 10:00, Kevin Traynor wrote:
> When vf issues a reset to pf there is a 50 msec wait plus an additional
> max of 1 msec for the pf to indicate the reset is complete before
> timeout.
>
> In some cases, it is seen that the reset is timing out, in which case
> the reset does not complete and an error is returned.
>
> In order to account for this, continue to wait an initial 50 msecs,
> but then allow a max of an additional 50 msecs for the command to
> complete.
>
> Fixes: af75078fece3 ("first public release")
>
> Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
> ---
> drivers/net/ixgbe/base/ixgbe_type.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ixgbe/base/ixgbe_type.h b/drivers/net/ixgbe/base/ixgbe_type.h
> index 1094df5891..35212a561b 100644
> --- a/drivers/net/ixgbe/base/ixgbe_type.h
> +++ b/drivers/net/ixgbe/base/ixgbe_type.h
> @@ -1801,5 +1801,5 @@ enum {
> #define IXGBE_VFRE_ENABLE_ALL 0xFFFFFFFF
>
> -#define IXGBE_VF_INIT_TIMEOUT 200 /* Number of retries to clear RSTI */
> +#define IXGBE_VF_INIT_TIMEOUT 10000 /* Number of retries to clear RSTI */
>
> /* RDHMPN and TDHMPN bitmasks */
On 30/01/2024 10:00, Kevin Traynor wrote:
> When vf issues a reset to pf there is a 50 msec wait plus an additional
> max of 1 msec for the pf to indicate the reset is complete before
> timeout.
>
> In some cases, it is seen that the reset is timing out, in which case
> the reset does not complete and an error is returned.
>
> In order to account for this, continue to wait an initial 50 msecs,
> but then allow a max of an additional 50 msecs for the command to
> complete.
>
> Fixes: af75078fece3 ("first public release")
>
> Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
> ---
> drivers/net/ixgbe/base/ixgbe_type.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ixgbe/base/ixgbe_type.h b/drivers/net/ixgbe/base/ixgbe_type.h
> index 1094df5891..35212a561b 100644
> --- a/drivers/net/ixgbe/base/ixgbe_type.h
> +++ b/drivers/net/ixgbe/base/ixgbe_type.h
> @@ -1801,5 +1801,5 @@ enum {
> #define IXGBE_VFRE_ENABLE_ALL 0xFFFFFFFF
>
> -#define IXGBE_VF_INIT_TIMEOUT 200 /* Number of retries to clear RSTI */
> +#define IXGBE_VF_INIT_TIMEOUT 10000 /* Number of retries to clear RSTI */
>
> /* RDHMPN and TDHMPN bitmasks */
Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
On Tue, Feb 27, 2024 at 12:35:28PM +0000, Medvedkin, Vladimir wrote:
> On 30/01/2024 10:00, Kevin Traynor wrote:
> > When vf issues a reset to pf there is a 50 msec wait plus an additional
> > max of 1 msec for the pf to indicate the reset is complete before
> > timeout.
> >
> > In some cases, it is seen that the reset is timing out, in which case
> > the reset does not complete and an error is returned.
> >
> > In order to account for this, continue to wait an initial 50 msecs,
> > but then allow a max of an additional 50 msecs for the command to
> > complete.
> >
> > Fixes: af75078fece3 ("first public release")
Cc: stable@dpdk.org
> >
> > Signed-off-by: Kevin Traynor <ktraynor@redhat.com>
> > ---
> > drivers/net/ixgbe/base/ixgbe_type.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ixgbe/base/ixgbe_type.h b/drivers/net/ixgbe/base/ixgbe_type.h
> > index 1094df5891..35212a561b 100644
> > --- a/drivers/net/ixgbe/base/ixgbe_type.h
> > +++ b/drivers/net/ixgbe/base/ixgbe_type.h
> > @@ -1801,5 +1801,5 @@ enum {
> > #define IXGBE_VFRE_ENABLE_ALL 0xFFFFFFFF
> > -#define IXGBE_VF_INIT_TIMEOUT 200 /* Number of retries to clear RSTI */
> > +#define IXGBE_VF_INIT_TIMEOUT 10000 /* Number of retries to clear RSTI */
> > /* RDHMPN and TDHMPN bitmasks */
>
> Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
>
This changes the code in the "base" directory, which is not ideal, but I
see no other way to fix the issue reported.
Applied to dpdk-next-net-intel.
Thanks,
/Bruce
@@ -1801,5 +1801,5 @@ enum {
#define IXGBE_VFRE_ENABLE_ALL 0xFFFFFFFF
-#define IXGBE_VF_INIT_TIMEOUT 200 /* Number of retries to clear RSTI */
+#define IXGBE_VF_INIT_TIMEOUT 10000 /* Number of retries to clear RSTI */
/* RDHMPN and TDHMPN bitmasks */