Hi,

> -----Original Message-----
> From: dev <dev-boun...@dpdk.org> On Behalf Of Junyu Jiang
> Sent: Wednesday, October 14, 2020 4:30 PM
> To: dev@dpdk.org
> Cc: Beilei Xing <beilei.x...@intel.com>; Wenzhuo Lu <wenzhuo...@intel.com>;
> Junyu Jiang <junyux.ji...@intel.com>; sta...@dpdk.org
> Subject: [dpdk-dev] [PATCH] app/testpmd: fix flow flush with invalid port
> 
> There is no error info displayed when running flow flush command with invalid
> port. This patch fixed the issue.
> 
> Fixes: 2a449871a12d ("app/testpmd: align behaviour of multi-port detach")
> Cc: sta...@dpdk.org
> 
> Signed-off-by: Junyu Jiang <junyux.ji...@intel.com>
> ---
>  app/test-pmd/config.c | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index
> fe31a9d52..cc4527386 100644
> --- a/app/test-pmd/config.c
> +++ b/app/test-pmd/config.c
> @@ -1775,16 +1775,17 @@ port_flow_flush(portid_t port_id)
>       struct rte_port *port = &ports[port_id];
>       int ret = 0;
> 
> +     if (port_id_is_invalid(port_id, ENABLED_WARN) ||
> +             port_id == (portid_t)RTE_PORT_ALL)
> +             return -EINVAL;
> +

Also better to move the port initialize after this check to make the code clean?
Reviewed-by: Suanming Mou <suanmi...@nvidia.com>

>       if (port->flow_list == NULL)
>               return ret;
> 
>       /* Poisoning to make sure PMDs update it in case of error. */
>       memset(&error, 0x44, sizeof(error));
>       if (rte_flow_flush(port_id, &error)) {
> -             ret = port_flow_complain(&error);
> -             if (port_id_is_invalid(port_id, DISABLED_WARN) ||
> -                 port_id == (portid_t)RTE_PORT_ALL)
> -                     return ret;
> +             port_flow_complain(&error);
>       }
> 
>       while (port->flow_list) {
> --
> 2.17.1

Reply via email to