All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Burakov, Anatoly" <anatoly.burakov@intel.com>
To: Marko Kovacevic <marko.kovacevic@intel.com>, dev@dpdk.org
Cc: vipin.varghese@intel.com, bruce.richardson@intel.com, stable@dpdk.org
Subject: Re: [PATCH v1] eal: add error check for core options
Date: Thu, 1 Feb 2018 16:38:01 +0000	[thread overview]
Message-ID: <9ba4c406-dfbb-8c32-7c48-d95277c9f3f1@intel.com> (raw)
In-Reply-To: <20180201153956.15021-1-marko.kovacevic@intel.com>

On 01-Feb-18 3:39 PM, Marko Kovacevic wrote:
> Error information on the current core
> usage list,mask and map were incomplete.
> Added states to differentiate core usage
> and to inform user.

Nitpicking, but line width on commit message is a little on the short 
side...

> 
> Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
> ---
>   doc/guides/testpmd_app_ug/run_app.rst      |  4 ++++
>   lib/librte_eal/common/eal_common_options.c | 33 +++++++++++++++++++++++++++---
>   2 files changed, 34 insertions(+), 3 deletions(-)
> 
> diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst
> index 46da1df..26500bf 100644
> --- a/doc/guides/testpmd_app_ug/run_app.rst
> +++ b/doc/guides/testpmd_app_ug/run_app.rst
> @@ -62,6 +62,10 @@ See the DPDK Getting Started Guides for more information on these options.
>       The grouping ``()`` can be omitted for single element group.
>       The ``@`` can be omitted if cpus and lcores have the same value.
>   
> +.. Note::
> +   When ``--lcores`` is in use, the options ``-l`` and ``-c`` cannot be used.
> +
> +
>   *   ``--master-lcore ID``
>   
>       Core ID that is used as master.
> diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
> index b6d2762..6604c64 100644
> --- a/lib/librte_eal/common/eal_common_options.c
> +++ b/lib/librte_eal/common/eal_common_options.c
> @@ -57,6 +57,9 @@
>   #include "eal_filesystem.h"
>   
>   #define BITS_PER_HEX 4
> +#define LCORE_OPT_LST 1
> +#define LCORE_OPT_MSK 2
> +#define LCORE_OPT_MAP 3
>   
>   const char
>   eal_short_options[] =
> @@ -1028,7 +1031,15 @@ eal_parse_common_option(int opt, const char *optarg,
>   			RTE_LOG(ERR, EAL, "invalid coremask\n");
>   			return -1;
>   		}
> -		core_parsed = 1;
> +
> +		if (core_parsed) {
> +			RTE_LOG(ERR, EAL, "Core Mask Option is ignored, because core (%s) is set!\n",
> +				(core_parsed == LCORE_OPT_LST)?"LIST" :
> +				(core_parsed == LCORE_OPT_MAP)?"MAP" : "Unknown");

i think "LIST" and "MAP" are terribly undescriptive. It would be better 
to put the respective cmdline arguments ("-l" or "-c") there instead. 
Same applies to other cases.

Otherwise,

Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>

> +			return -1;
> +		}
> +
> +		core_parsed = LCORE_OPT_MSK;
>   		break;
>   	/* corelist */
>   	case 'l':
> @@ -1036,7 +1047,15 @@ eal_parse_common_option(int opt, const char *optarg,
>   			RTE_LOG(ERR, EAL, "invalid core list\n");
>   			return -1;
>   		}
> -		core_parsed = 1;
> +
> +		if (core_parsed) {
> +			RTE_LOG(ERR, EAL, "Core List Option is ignored, because core (%s) is set!\n",
> +				(core_parsed == LCORE_OPT_MSK)?"LIST" :
> +				(core_parsed == LCORE_OPT_MAP)?"MAP" : "Unknown");
> +			return -1;
> +		}
> +
> +		core_parsed = LCORE_OPT_LST;
>   		break;
>   	/* service coremask */
>   	case 's':
> @@ -1156,7 +1175,15 @@ eal_parse_common_option(int opt, const char *optarg,
>   				OPT_LCORES "\n");
>   			return -1;
>   		}
> -		core_parsed = 1;
> +
> +		if (core_parsed) {
> +			RTE_LOG(ERR, EAL, "Core Map Option is ignored, because core (%s) is set!\n",
> +				(core_parsed == LCORE_OPT_LST)?"LIST" :
> +				(core_parsed == LCORE_OPT_MSK)?"MASK" : "Unknown");
> +			return -1;
> +		}
> +
> +		core_parsed = LCORE_OPT_MAP;
>   		break;
>   
>   	/* don't know what to do, leave this to caller */
> 


-- 
Thanks,
Anatoly

  reply	other threads:[~2018-02-01 16:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-01 15:39 [PATCH v1] eal: add error check for core options Marko Kovacevic
2018-02-01 16:38 ` Burakov, Anatoly [this message]
2018-02-01 17:07 ` [PATCH v2] " Marko Kovacevic
2018-02-01 17:13   ` Burakov, Anatoly
2018-02-02 14:51   ` [PATCH v3] " Marko Kovacevic
2018-02-02 15:33     ` Bruce Richardson
2018-02-05 23:11       ` [dpdk-stable] " Thomas Monjalon
2018-02-22 10:10       ` O Mahony, Billy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9ba4c406-dfbb-8c32-7c48-d95277c9f3f1@intel.com \
    --to=anatoly.burakov@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=marko.kovacevic@intel.com \
    --cc=stable@dpdk.org \
    --cc=vipin.varghese@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.