[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <so239116-75sq-89rs-nron-35nsq660rs8n@vanv.qr>
Date: Fri, 10 Jun 2022 11:22:46 +0200 (CEST)
From: Jan Engelhardt <jengelh@...i.de>
To: David Laight <David.Laight@...LAB.COM>
cc: 'Bill Wendling' <morbo@...gle.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Bill Wendling <isanbard@...il.com>,
Tony Luck <tony.luck@...el.com>,
Borislav Petkov <bp@...en8.de>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
Dave Hansen <dave.hansen@...ux.intel.com>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@...nel.org>,
"H. Peter Anvin" <hpa@...or.com>,
Phillip Potter <phil@...lpotter.co.uk>,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
Jan Kara <jack@...e.com>,
Pablo Neira Ayuso <pablo@...filter.org>,
Jozsef Kadlecsik <kadlec@...filter.org>,
Florian Westphal <fw@...len.de>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.com>,
Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Tom Rix <trix@...hat.com>,
Ross Philipson <ross.philipson@...cle.com>,
Daniel Kiper <daniel.kiper@...cle.com>,
"linux-edac@...r.kernel.org" <linux-edac@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"netfilter-devel@...r.kernel.org" <netfilter-devel@...r.kernel.org>,
"coreteam@...filter.org" <coreteam@...filter.org>,
Networking <netdev@...r.kernel.org>,
"alsa-devel@...a-project.org" <alsa-devel@...a-project.org>,
clang-built-linux <llvm@...ts.linux.dev>
Subject: RE: [PATCH 00/12] Clang -Wformat warning fixes
On Friday 2022-06-10 11:14, David Laight wrote:
>> >Yep, IMHO definitely should be fixed.
>> >It is even possible that using "%s" is faster because the printf
>> >code doesn't have to scan the string for format effectors.
>>
>> I see no special handling; the vsnprintf function just loops
>> over fmt as usual and I see no special casing of fmt by
>> e.g. strcmp(fmt, "%s") == 0 to take a shortcut.
>
>Consider the difference between:
> printf("fubar");
>and
> printf("%s", "fubar");
>In the former all of "fubar" is checked for '%'.
>In the latter only the length of "fubar" has to be counted.
To check the length of "fubar", printf first needs to know that there
even is an argument to be pulled from the stack, which it does by
evaluating the format string.
So, in fairness, it's more like:
>> In the latter, all of "%s" is checked for '%'.
Powered by blists - more mailing lists