From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756624AbcHCIJd (ORCPT ); Wed, 3 Aug 2016 04:09:33 -0400 Received: from mail-wm0-f48.google.com ([74.125.82.48]:36958 "EHLO mail-wm0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755301AbcHCII6 (ORCPT ); Wed, 3 Aug 2016 04:08:58 -0400 MIME-Version: 1.0 In-Reply-To: <20160803004226.GF2356@ZenIV.linux.org.uk> References: <20160803004226.GF2356@ZenIV.linux.org.uk> From: Konstantin Khlebnikov Date: Wed, 3 Aug 2016 11:07:28 +0300 Message-ID: Subject: Re: Please don't replace numeric parameter like 0444 with macro To: Al Viro Cc: Linus Torvalds , Greg Kroah-Hartman , Heiko Carstens , Russell King - ARM Linux , Linux Kernel Mailing List , Baole Ni , Pavel Machek , chuansheng.liu@intel.com, "linux-arm-kernel@lists.infradead.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Aug 3, 2016 at 3:42 AM, Al Viro wrote: > On Tue, Aug 02, 2016 at 04:58:29PM -0400, Linus Torvalds wrote: >> [ So I answered similarly to another patch, but I'll just re-iterate >> and change the subject line so that it stands out a bit from the >> millions of actual patches ] >> >> On Tue, Aug 2, 2016 at 1:42 PM, Pavel Machek wrote: >> > >> > Everyone knows what 0644 is, but noone can read S_IRUSR | S_IWUSR | >> > S_IRCRP | S_IROTH (*). Please don't do this. >> >> Absolutely. 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. > > Except that you are inviting the mixes like S_IFDIR | 17 /* oops, should've > been 017, or do we spell it 0017? */ that way. I certainly agree that this > patch series had been a huge pile of manure, but "let's convert it in other > direction" is inviting pretty much the same thing, with lovely potential for > typos, etc. We could add several macro with readable names for really used rwx combinations, like: #define KERN_SECRET_RO 0400 #define KERN_SECRET_RW 0600 #define KERN_SECRET_WO 0200 #define KERN_SECRET_DIR 0500 #define KERN_PUBLIC_RO 0444 #define KERN_PUBLIC_RW 0644 #define KERN_PUBLIC_DIR 0555 #define KERN_UNSAFE_RW 0666 #define KERN_UNSAFE_WO 0222 #define KERN_UNSAFE_DIR 0777 > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel