lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.10.1603140929150.2688@hadrien>
Date:	Mon, 14 Mar 2016 09:29:43 +0100 (CET)
From:	Julia Lawall <julia.lawall@...6.fr>
To:	Joe Perches <joe@...ches.com>
cc:	Julia Lawall <julia.lawall@...6.fr>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Andy Whitcroft <apw@...onical.com>,
	Dan Carpenter <error27@...il.com>,
	kernel-janitors <kernel-janitors@...r.kernel.org>,
	linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH V2] checkpatch: Check output format style of __func__
 uses



On Mon, 14 Mar 2016, Joe Perches wrote:

> On Mon, 2016-03-14 at 06:19 +0100, Julia Lawall wrote:
> > On Sun, 13 Mar 2016, Joe Perches wrote:
> > > Loggng messages that emit function names have many different forms.
> > > Perhaps it'd be better for logging consistency and grep ease to
> > > exclusively use "%s:"
> > > 
> > > As well, function tracing logging uses are generally unnecessary given
> > > the kernel's function tracing (ftrace) capability.
> > > 
> > > Right now, grep shows these mixtures of forms:
> > > 
> > > 13704 "%s:"
> > > 3839  "%s "
> > > 2787  "%s()"
> > > 
> > > Some of these are macros definitions of various styles.
> > > 
> > > Unfortunately, given the complexity of these macro definition styles,
> > > checkpatch isn't an ideal tool to find these macros.
> > > 
> > > Maybe a coccinelle script might be better suited to find and fix all
> > > the various types of uses.
> > > 
> > > Add a --fix option for these logging messages with __func__.
> >
> > I'm not good enough at perl to really understand this.  Coudl you give an 
> > example of what it does, and of what it does not do?
>
> For instance, this could do simple conversions like:
>
> $ diff --git a/arch/arm/common/mcpm_entry.c b/arch/arm/common/mcpm_entry.c
> @@ -416 +416 @@ int __init mcpm_loopback(void (*cache_disable)(void))
> -               pr_err("%s returned %d\n", __func__, ret);
> +               pr_err("%s: returned %d\n", __func__, ret);
>
> But it couldn't find/convert a string concatenation:
>
> #define pch_dbg(adap, fmt, arg...)  \
>         dev_dbg(adap->pch_adapter.dev.parent, "%s :" fmt, __func__, ##arg)

OK, are there any thoughts about what to do when __func__ is not in the
first position?

julia

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ