[dpdk-stable] [PATCH] test/mbuf: skip field registration at busy offset

David Marchand david.marchand at redhat.com
Sat Oct 31 15:57:17 CET 2020


On Sat, Oct 31, 2020 at 3:37 PM Thomas Monjalon <thomas at monjalon.net> wrote:
>
> There is a test for dynamic field registration at a specific offset.
> Depending on which driver is probed, some dynamic fields may be
> already registered at this offset.
> This failure is skipped with a warning.
>
> Fixes: 4958ca3a443a ("mbuf: support dynamic fields and flags")
> Cc: stable at dpdk.org
>
> Reported-by: David Marchand <david.marchand at redhat.com>
> Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
> ---
>  app/test/test_mbuf.c | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/app/test/test_mbuf.c b/app/test/test_mbuf.c
> index 80d1850da9..3a13cf4e1f 100644
> --- a/app/test/test_mbuf.c
> +++ b/app/test/test_mbuf.c
> @@ -2608,9 +2608,13 @@ test_mbuf_dyn(struct rte_mempool *pktmbuf_pool)
>
>         offset3 = rte_mbuf_dynfield_register_offset(&dynfield3,
>                                 offsetof(struct rte_mbuf, dynfield1[1]));
> -       if (offset3 != offsetof(struct rte_mbuf, dynfield1[1]))
> -               GOTO_FAIL("failed to register dynamic field 3, offset=%d: %s",
> -                       offset3, strerror(errno));
> +       if (offset3 != offsetof(struct rte_mbuf, dynfield1[1])) {
> +               if (rte_errno == EBUSY)
> +                       printf("mbuf test error skipped: dynfield is busy\n");
> +               else
> +                       GOTO_FAIL("failed to register dynamic field 3, offset="
> +                               "%d: %s", offset3, strerror(errno));
> +       }
>
>         printf("dynfield: offset=%d, offset2=%d, offset3=%d\n",
>                 offset, offset2, offset3);
> --
> 2.28.0
>

Reviewed-by: David Marchand <david.marchand at redhat.com>


-- 
David Marchand



More information about the stable mailing list