[dpdk-dev] [PATCH] app/test-pmd: Fix log issue without nic binded

Qiu, Michael michael.qiu at intel.com
Thu Mar 5 02:57:39 CET 2015


Hi, all

What about this patch?

Thanks,
Michael


On 3/2/2015 4:31 PM, Qiu, Michael wrote:
> As hotplug has been enabled, start the testpmd with no nic binded
> will show one error log "Please stop the ports first":
>
> Interactive-mode selected
> Please stop the ports first
> Done
> testpmd>
>
> This issue is cause by the logic of check link status.
>
> Signed-off-by: Michael Qiu <michael.qiu at intel.com>
> ---
>  app/test-pmd/testpmd.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
> index 61291be..e556b4c 100644
> --- a/app/test-pmd/testpmd.c
> +++ b/app/test-pmd/testpmd.c
> @@ -1315,7 +1315,7 @@ port_is_closed(portid_t port_id)
>  int
>  start_port(portid_t pid)
>  {
> -	int diag, need_check_link_status = 0;
> +	int diag, need_check_link_status = -1;
>  	portid_t pi;
>  	queueid_t qi;
>  	struct rte_port *port;
> @@ -1337,6 +1337,7 @@ start_port(portid_t pid)
>  		if (pid != pi && pid != (portid_t)RTE_PORT_ALL)
>  			continue;
>  
> +		need_check_link_status = 0;
>  		port = &ports[pi];
>  		if (rte_atomic16_cmpset(&(port->port_status), RTE_PORT_STOPPED,
>  						 RTE_PORT_HANDLING) == 0) {
> @@ -1457,9 +1458,9 @@ start_port(portid_t pid)
>  		need_check_link_status = 1;
>  	}
>  
> -	if (need_check_link_status && !no_link_check)
> +	if (need_check_link_status == 1 && !no_link_check)
>  		check_all_ports_link_status(RTE_PORT_ALL);
> -	else
> +	else if (need_check_link_status == 0)
>  		printf("Please stop the ports first\n");
>  
>  	printf("Done\n");



More information about the dev mailing list