patches for DPDK stable branches
 help / color / Atom feed
* [dpdk-stable] [PATCH] eal: fix log message print for regex
@ 2020-02-27  8:25 Sunil Kumar Kori
  2020-02-27 10:57 ` David Marchand
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Sunil Kumar Kori @ 2020-02-27  8:25 UTC (permalink / raw)
  To: olivier.matz, thomas, david.marchand; +Cc: dev, stable, Sunil Kumar Kori

If user passes log-level eal parameter to enable log level based on regex
then in case of error message is being printed for pattern match instead of
regex. Following is the warning message thrown:

Compiling C object 'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
In function ‘eal_parse_log_level’,
   inlined from ‘eal_parse_common_option’ at ../lib/librte_eal/common/eal_common_options.c:1418:7:
../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
 1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1054 |     pattern, priority);
      |     ~~~~~~~~~~~~~~~~~~

Fixes: 7f0bb634a140 ("log: add ability to match log type with globbing")

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
---
 lib/librte_eal/common/eal_common_options.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
index 75974dd5b..525e51e7d 100644
--- a/lib/librte_eal/common/eal_common_options.c
+++ b/lib/librte_eal/common/eal_common_options.c
@@ -1046,7 +1046,7 @@ eal_parse_log_level(const char *arg)
 	if (regex) {
 		if (rte_log_set_level_regexp(regex, priority) < 0) {
 			fprintf(stderr, "cannot set log level %s,%d\n",
-				pattern, priority);
+				regex, priority);
 			goto fail;
 		}
 		if (rte_log_save_regexp(regex, priority) < 0)
-- 
2.17.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-stable] [PATCH] eal: fix log message print for regex
  2020-02-27  8:25 [dpdk-stable] [PATCH] eal: fix log message print for regex Sunil Kumar Kori
@ 2020-02-27 10:57 ` David Marchand
  2020-02-27 11:02   ` [dpdk-stable] [EXT] " Sunil Kumar Kori
  2020-03-09  6:15 ` [dpdk-stable] [PATCH v2 1/1] " Sunil Kumar Kori
  2020-03-09  6:17 ` Sunil Kumar Kori
  2 siblings, 1 reply; 8+ messages in thread
From: David Marchand @ 2020-02-27 10:57 UTC (permalink / raw)
  To: Sunil Kumar Kori; +Cc: Olivier Matz, Thomas Monjalon, dev, dpdk stable

On Thu, Feb 27, 2020 at 9:25 AM Sunil Kumar Kori <skori@marvell.com> wrote:
>
> If user passes log-level eal parameter to enable log level based on regex
> then in case of error message is being printed for pattern match instead of
> regex. Following is the warning message thrown:
>
> Compiling C object 'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
> In function ‘eal_parse_log_level’,
>    inlined from ‘eal_parse_common_option’ at ../lib/librte_eal/common/eal_common_options.c:1418:7:
> ../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
>  1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
>       |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>  1054 |     pattern, priority);
>       |     ~~~~~~~~~~~~~~~~~~
>

Good catch.

Just to understand, how did you catch it?
Extra cflags? specific compiler?


> Fixes: 7f0bb634a140 ("log: add ability to match log type with globbing")

Missing Cc: stable.


>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> ---
>  lib/librte_eal/common/eal_common_options.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
> index 75974dd5b..525e51e7d 100644
> --- a/lib/librte_eal/common/eal_common_options.c
> +++ b/lib/librte_eal/common/eal_common_options.c
> @@ -1046,7 +1046,7 @@ eal_parse_log_level(const char *arg)
>         if (regex) {
>                 if (rte_log_set_level_regexp(regex, priority) < 0) {
>                         fprintf(stderr, "cannot set log level %s,%d\n",
> -                               pattern, priority);
> +                               regex, priority);
>                         goto fail;
>                 }
>                 if (rte_log_save_regexp(regex, priority) < 0)
> --
> 2.17.1
>

Acked-by: David Marchand <david.marchand@redhat.com>



--
David Marchand


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-stable] [EXT] Re: [PATCH] eal: fix log message print for regex
  2020-02-27 10:57 ` David Marchand
@ 2020-02-27 11:02   ` " Sunil Kumar Kori
  2020-03-03  9:55     ` David Marchand
  0 siblings, 1 reply; 8+ messages in thread
From: Sunil Kumar Kori @ 2020-02-27 11:02 UTC (permalink / raw)
  To: David Marchand; +Cc: Olivier Matz, Thomas Monjalon, dev, dpdk stable

Hello David,

We have two build machine with two different version of GCC. 
So the issue is reported on one setup only not on the other one.
It looks like because of different version of GCC, this warning is caught. 

Regards
Sunil Kumar Kori

>-----Original Message-----
>From: David Marchand <david.marchand@redhat.com>
>Sent: Thursday, February 27, 2020 4:28 PM
>To: Sunil Kumar Kori <skori@marvell.com>
>Cc: Olivier Matz <olivier.matz@6wind.com>; Thomas Monjalon
><thomas@monjalon.net>; dev <dev@dpdk.org>; dpdk stable
><stable@dpdk.org>
>Subject: [EXT] Re: [dpdk-stable] [PATCH] eal: fix log message print for regex
>
>External Email
>
>----------------------------------------------------------------------
>On Thu, Feb 27, 2020 at 9:25 AM Sunil Kumar Kori <skori@marvell.com>
>wrote:
>>
>> If user passes log-level eal parameter to enable log level based on
>> regex then in case of error message is being printed for pattern match
>> instead of regex. Following is the warning message thrown:
>>
>> Compiling C object
>'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
>> In function ‘eal_parse_log_level’,
>>    inlined from ‘eal_parse_common_option’ at
>../lib/librte_eal/common/eal_common_options.c:1418:7:
>> ../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’
>directive argument is null [-Wformat-overflow=]
>>  1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
>>       |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>  1054 |     pattern, priority);
>>       |     ~~~~~~~~~~~~~~~~~~
>>
>
>Good catch.
>
>Just to understand, how did you catch it?
>Extra cflags? specific compiler?
>
>
>> Fixes: 7f0bb634a140 ("log: add ability to match log type with
>> globbing")
>
>Missing Cc: stable.
>
>
>>
>> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
>> ---
>>  lib/librte_eal/common/eal_common_options.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/lib/librte_eal/common/eal_common_options.c
>> b/lib/librte_eal/common/eal_common_options.c
>> index 75974dd5b..525e51e7d 100644
>> --- a/lib/librte_eal/common/eal_common_options.c
>> +++ b/lib/librte_eal/common/eal_common_options.c
>> @@ -1046,7 +1046,7 @@ eal_parse_log_level(const char *arg)
>>         if (regex) {
>>                 if (rte_log_set_level_regexp(regex, priority) < 0) {
>>                         fprintf(stderr, "cannot set log level %s,%d\n",
>> -                               pattern, priority);
>> +                               regex, priority);
>>                         goto fail;
>>                 }
>>                 if (rte_log_save_regexp(regex, priority) < 0)
>> --
>> 2.17.1
>>
>
>Acked-by: David Marchand <david.marchand@redhat.com>
>
>
>
>--
>David Marchand


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-stable] [EXT] Re: [PATCH] eal: fix log message print for regex
  2020-02-27 11:02   ` [dpdk-stable] [EXT] " Sunil Kumar Kori
@ 2020-03-03  9:55     ` David Marchand
  0 siblings, 0 replies; 8+ messages in thread
From: David Marchand @ 2020-03-03  9:55 UTC (permalink / raw)
  To: Sunil Kumar Kori; +Cc: Olivier Matz, Thomas Monjalon, dev, dpdk stable

On Thu, Feb 27, 2020 at 12:03 PM Sunil Kumar Kori <skori@marvell.com> wrote:
> We have two build machine with two different version of GCC.
> So the issue is reported on one setup only not on the other one.
> It looks like because of different version of GCC, this warning is caught.

f30 gcc 9 with -Wformat-overflow (tried level 1 and 2) does not catch this.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [dpdk-stable] [PATCH v2 1/1] eal: fix log message print for regex
  2020-02-27  8:25 [dpdk-stable] [PATCH] eal: fix log message print for regex Sunil Kumar Kori
  2020-02-27 10:57 ` David Marchand
@ 2020-03-09  6:15 ` " Sunil Kumar Kori
  2020-03-09  6:17 ` Sunil Kumar Kori
  2 siblings, 0 replies; 8+ messages in thread
From: Sunil Kumar Kori @ 2020-03-09  6:15 UTC (permalink / raw)
  To: olivier.matz, thomas, david.marchand; +Cc: dev, stable, Sunil Kumar Kori

If user passes log-level eal parameter to enable log level based on regex
then in case of error message is being printed for pattern match instead of
regex. Following is the warning message thrown:

Compiling C object 'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
In function ‘eal_parse_log_level’,
   inlined from ‘eal_parse_common_option’ at ../lib/librte_eal/common/eal_common_options.c:1418:7:
../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
 1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1054 |     pattern, priority);
      |     ~~~~~~~~~~~~~~~~~~

Fixes: 7f0bb634a140 ("log: add ability to match log type with globbing")
Cc: stable@dpdk.org

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
Acked-by: David Marchand <david.marchand@redhat.com>
---
 lib/librte_eal/common/eal_common_options.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
index 75974dd5b..525e51e7d 100644
--- a/lib/librte_eal/common/eal_common_options.c
+++ b/lib/librte_eal/common/eal_common_options.c
@@ -1046,7 +1046,7 @@ eal_parse_log_level(const char *arg)
 	if (regex) {
 		if (rte_log_set_level_regexp(regex, priority) < 0) {
 			fprintf(stderr, "cannot set log level %s,%d\n",
-				pattern, priority);
+				regex, priority);
 			goto fail;
 		}
 		if (rte_log_save_regexp(regex, priority) < 0)
-- 
2.17.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [dpdk-stable] [PATCH v2 1/1] eal: fix log message print for regex
  2020-02-27  8:25 [dpdk-stable] [PATCH] eal: fix log message print for regex Sunil Kumar Kori
  2020-02-27 10:57 ` David Marchand
  2020-03-09  6:15 ` [dpdk-stable] [PATCH v2 1/1] " Sunil Kumar Kori
@ 2020-03-09  6:17 ` Sunil Kumar Kori
  2020-03-09  7:08   ` [dpdk-stable] [dpdk-dev] " Jerin Jacob
  2 siblings, 1 reply; 8+ messages in thread
From: Sunil Kumar Kori @ 2020-03-09  6:17 UTC (permalink / raw)
  To: olivier.matz, thomas, david.marchand; +Cc: dev, stable, Sunil Kumar Kori

If user passes log-level eal parameter to enable log level based on regex
then in case of error message is being printed for pattern match instead of
regex. Following is the warning message thrown:

Compiling C object 'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
In function ‘eal_parse_log_level’,
   inlined from ‘eal_parse_common_option’ at ../lib/librte_eal/common/eal_common_options.c:1418:7:
../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
 1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1054 |     pattern, priority);
      |     ~~~~~~~~~~~~~~~~~~

Fixes: 7f0bb634a140 ("log: add ability to match log type with globbing")
Cc: stable@dpdk.org

Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
Acked-by: David Marchand <david.marchand@redhat.com>
---
v2:
 - Updated Cc: stable@dpdk.org in commit message

 lib/librte_eal/common/eal_common_options.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
index 75974dd5b..525e51e7d 100644
--- a/lib/librte_eal/common/eal_common_options.c
+++ b/lib/librte_eal/common/eal_common_options.c
@@ -1046,7 +1046,7 @@ eal_parse_log_level(const char *arg)
 	if (regex) {
 		if (rte_log_set_level_regexp(regex, priority) < 0) {
 			fprintf(stderr, "cannot set log level %s,%d\n",
-				pattern, priority);
+				regex, priority);
 			goto fail;
 		}
 		if (rte_log_save_regexp(regex, priority) < 0)
-- 
2.17.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-stable] [dpdk-dev] [PATCH v2 1/1] eal: fix log message print for regex
  2020-03-09  6:17 ` Sunil Kumar Kori
@ 2020-03-09  7:08   ` " Jerin Jacob
  2020-03-13  9:46     ` David Marchand
  0 siblings, 1 reply; 8+ messages in thread
From: Jerin Jacob @ 2020-03-09  7:08 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Olivier Matz, Thomas Monjalon, David Marchand, dpdk-dev, dpdk stable

On Mon, Mar 9, 2020 at 11:47 AM Sunil Kumar Kori <skori@marvell.com> wrote:
>
> If user passes log-level eal parameter to enable log level based on regex
> then in case of error message is being printed for pattern match instead of
> regex. Following is the warning message thrown:
>
> Compiling C object 'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
> In function ‘eal_parse_log_level’,
>    inlined from ‘eal_parse_common_option’ at ../lib/librte_eal/common/eal_common_options.c:1418:7:
> ../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
>  1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
>       |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>  1054 |     pattern, priority);
>       |     ~~~~~~~~~~~~~~~~~~
>
> Fixes: 7f0bb634a140 ("log: add ability to match log type with globbing")
> Cc: stable@dpdk.org
>
> Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> Acked-by: David Marchand <david.marchand@redhat.com>

Reviewed-by: Jerin Jacob <jerinj@marvell.com>


> ---
> v2:
>  - Updated Cc: stable@dpdk.org in commit message
>
>  lib/librte_eal/common/eal_common_options.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
> index 75974dd5b..525e51e7d 100644
> --- a/lib/librte_eal/common/eal_common_options.c
> +++ b/lib/librte_eal/common/eal_common_options.c
> @@ -1046,7 +1046,7 @@ eal_parse_log_level(const char *arg)
>         if (regex) {
>                 if (rte_log_set_level_regexp(regex, priority) < 0) {
>                         fprintf(stderr, "cannot set log level %s,%d\n",
> -                               pattern, priority);
> +                               regex, priority);
>                         goto fail;
>                 }
>                 if (rte_log_save_regexp(regex, priority) < 0)
> --
> 2.17.1
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-stable] [dpdk-dev] [PATCH v2 1/1] eal: fix log message print for regex
  2020-03-09  7:08   ` [dpdk-stable] [dpdk-dev] " Jerin Jacob
@ 2020-03-13  9:46     ` David Marchand
  0 siblings, 0 replies; 8+ messages in thread
From: David Marchand @ 2020-03-13  9:46 UTC (permalink / raw)
  To: Sunil Kumar Kori
  Cc: Olivier Matz, Thomas Monjalon, dpdk-dev, dpdk stable, Jerin Jacob

On Mon, Mar 9, 2020 at 8:08 AM Jerin Jacob <jerinjacobk@gmail.com> wrote:
>
> On Mon, Mar 9, 2020 at 11:47 AM Sunil Kumar Kori <skori@marvell.com> wrote:
> >
> > If user passes log-level eal parameter to enable log level based on regex
> > then in case of error message is being printed for pattern match instead of
> > regex. Following is the warning message thrown:
> >
> > Compiling C object 'lib/76b5a35@@rte_eal@sta/librte_eal_common_eal_common_options.c.o'.
> > In function ‘eal_parse_log_level’,
> >    inlined from ‘eal_parse_common_option’ at ../lib/librte_eal/common/eal_common_options.c:1418:7:
> > ../lib/librte_eal/common/eal_common_options.c:1053:4: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
> >  1053 |    fprintf(stderr, "cannot set log level %s,%d\n",
> >       |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >  1054 |     pattern, priority);
> >       |     ~~~~~~~~~~~~~~~~~~
> >
> > Fixes: 7f0bb634a140 ("log: add ability to match log type with globbing")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Sunil Kumar Kori <skori@marvell.com>
> > Acked-by: David Marchand <david.marchand@redhat.com>
>
> Reviewed-by: Jerin Jacob <jerinj@marvell.com>

I did not reproduce this with this format-overflow flag...
Anyway, applied.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, back to index

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-27  8:25 [dpdk-stable] [PATCH] eal: fix log message print for regex Sunil Kumar Kori
2020-02-27 10:57 ` David Marchand
2020-02-27 11:02   ` [dpdk-stable] [EXT] " Sunil Kumar Kori
2020-03-03  9:55     ` David Marchand
2020-03-09  6:15 ` [dpdk-stable] [PATCH v2 1/1] " Sunil Kumar Kori
2020-03-09  6:17 ` Sunil Kumar Kori
2020-03-09  7:08   ` [dpdk-stable] [dpdk-dev] " Jerin Jacob
2020-03-13  9:46     ` David Marchand

patches for DPDK stable branches

Archives are clonable:
	git clone --mirror http://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ http://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable


Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/ public-inbox