[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1486193266.22276.82.camel@perches.com>
Date: Fri, 03 Feb 2017 23:27:46 -0800
From: Joe Perches <joe@...ches.com>
To: Guenter Roeck <linux@...ck-us.net>,
Derek Robson <robsonde@...il.com>,
Julia Lawall <julia.lawall@...6.fr>
Cc: w.d.hubbs@...il.com, chris@...-brannons.com, kirk@...sers.ca,
samuel.thibault@...-lyon.org, gregkh@...uxfoundation.org,
shraddha.6596@...il.com, alan@...ux.intel.com, shiva@...ev.nl,
amitoj1606@...il.com, amsfield22@...il.com, bhumirks@...il.com,
waltfeasel@...il.com, speakup@...ux-speakup.org,
devel@...verdev.osuosl.org, linux-kernel@...r.kernel.org
Subject: Re: Staging: speakup - syle fix permissions to octal
(adding Julia Lawall)
On Fri, 2017-02-03 at 20:44 -0800, Guenter Roeck wrote:
> On Sat, Jan 28, 2017 at 07:05:09PM +1300, Derek Robson wrote:
> > A style fix across whole driver.
> > changed permissions to octal style, found using checkpatch
> >
> > Signed-off-by: Derek Robson <robsonde@...il.com>
>
> FWIW, I think changes like this are best done using coccinelle.
I think checkpatch does it reasonably well.
Julia? Can coccinelle do this?
I believe cocinelle doesn't handle the substitution
and octal addition very well when multiple flags
are used.
> That ensures that the results can be reproduced and are well defined.
> As it is, someone will have to check each line of your patches to ensure
> that the conversion is correct.
>
> It would also ensure (hopefully) that we don't end up with constructs
> such as
>
> > -#define USER_R (S_IFREG|S_IRUGO)
> > -#define USER_W (S_IFREG|S_IWUGO)
> > +#define USER_R (S_IFREG|0444)
> > +#define USER_W (S_IFREG|0666)
>
> which really defeat the purpose of the whole exercise.
Why do you think mixing file specific attributes
with octal permissions is a bad thing?
$ git log -1 f90774e1fd2700d
commit f90774e1fd2700de4a6e0d62866d34a26c544bd0
Author: Joe Perches <joe@...ches.com>
Date: Tue Oct 11 13:51:47 2016 -0700
checkpatch: look for symbolic permissions and suggest octal instead
S_<FOO> uses should be avoided where octal is more intelligible.
Linus didst say:
: It's *much* easier to parse and understand the octal numbers, while the
: symbolic macro names are just random line noise and hard as hell to
: understand. You really have to think about it.
:
: So we should rather go the other way: convert existing bad symbolic
: permission bit macro use to just use the octal numbers.
:
: The symbolic names are good for the *other* bits (ie sticky bit, and the
: inode mode _type_ numbers etc), but for the permission bits, the symbolic
: names are just insane crap. Nobody sane should ever use them. Not in the
: kernel, not in user space.
(http://lkml.kernel.org/r/CA+55aFw5v23T-zvDZp-MmD_EYxF8WbafwwB59934FV7g21uMGQ@mail.gmail.com)
Link: http://lkml.kernel.org/r/7232ef011d05a92f4caa86a5e9830d87966a2eaf.1470180926.git.joe@perches.com
Signed-off-by: Joe Perches <joe@...ches.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>
Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@...ux-foundation.org>
Powered by blists - more mailing lists