All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Dilger <adilger@dilger.ca>
To: Christian Brauner <christian.brauner@ubuntu.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>,
	Thomas Gleixner <tglx@linutronix.de>,
	Kate Stewart <kstewart@linuxfoundation.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Philippe Ombredanne <pombredanne@nexb.com>,
	Linux FS Devel <linux-fsdevel@vger.kernel.org>,
	linux-kernel@vger.kernel.org, serge@hallyn.com
Subject: Re: [PATCH 2/6] statfs: use << to align with fs header
Date: Fri, 13 Apr 2018 11:35:11 -0600	[thread overview]
Message-ID: <833FF27F-CFAD-4011-A21C-86B3947BB7D5@dilger.ca> (raw)
In-Reply-To: <20180413161126.31313-3-christian.brauner@ubuntu.com>

[-- Attachment #1: Type: text/plain, Size: 2856 bytes --]

On Apr 13, 2018, at 10:11 AM, Christian Brauner <christian.brauner@ubuntu.com> wrote:
> 
> Consistenly use << to define ST_* constants. This also aligns them with
> their MS_* counterparts in fs.h

IMHO, using (1 << 10) makes the code harder to debug.  If you see a field
in a structure like 0x8354, it is non-trivial to map this to the ST_*
flags if they are declared in the form (1 << 10) or BIT(10).  If they are
declared in the form 0x100 (as they are now) then it is trivial that the
ST_APPEND flag is set in 0x8354, and easy to understand the other flags.

So, my preference would be to NOT land this or the previous patch.

Cheers, Andreas

> Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
> ---
> include/linux/statfs.h | 26 +++++++++++++-------------
> 1 file changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/include/linux/statfs.h b/include/linux/statfs.h
> index 3142e98546ac..b336c04e793c 100644
> --- a/include/linux/statfs.h
> +++ b/include/linux/statfs.h
> @@ -27,18 +27,18 @@ struct kstatfs {
>  * ABI.  The exception is ST_VALID which has the same value as MS_REMOUNT
>  * which doesn't make any sense for statfs.
>  */
> -#define ST_RDONLY	0x0001	/* mount read-only */
> -#define ST_NOSUID	0x0002	/* ignore suid and sgid bits */
> -#define ST_NODEV	0x0004	/* disallow access to device special files */
> -#define ST_NOEXEC	0x0008	/* disallow program execution */
> -#define ST_SYNCHRONOUS	0x0010	/* writes are synced at once */
> -#define ST_VALID	0x0020	/* f_flags support is implemented */
> -#define ST_MANDLOCK	0x0040	/* allow mandatory locks on an FS */
> -/* 0x0080 used for ST_WRITE in glibc */
> -/* 0x0100 used for ST_APPEND in glibc */
> -/* 0x0200 used for ST_IMMUTABLE in glibc */
> -#define ST_NOATIME	0x0400	/* do not update access times */
> -#define ST_NODIRATIME	0x0800	/* do not update directory access times */
> -#define ST_RELATIME	0x1000	/* update atime relative to mtime/ctime */
> +#define ST_RDONLY	(1<<0) /* mount read-only */
> +#define ST_NOSUID	(1<<1) /* ignore suid and sgid bits */
> +#define ST_NODEV	(1<<2) /* disallow access to device special files */
> +#define ST_NOEXEC	(1<<3) /* disallow program execution */
> +#define ST_SYNCHRONOUS	(1<<4) /* writes are synced at once */
> +#define ST_VALID	(1<<5) /* f_flags support is implemented */
> +#define ST_MANDLOCK	(1<<6) /* allow mandatory locks on an FS */
> +/* (1<<7) used for ST_WRITE in glibc */
> +/* (1<<8) used for ST_APPEND in glibc */
> +/* (1<<9) used for ST_IMMUTABLE in glibc */
> +#define ST_NOATIME	(1<<10) /* do not update access times */
> +#define ST_NODIRATIME	(1<<11) /* do not update directory access times */
> +#define ST_RELATIME	(1<<12) /* update atime relative to mtime/ctime */
> 
> #endif
> --
> 2.17.0
> 


Cheers, Andreas






[-- Attachment #2: Message signed with OpenPGP --]
[-- Type: application/pgp-signature, Size: 873 bytes --]

  parent reply	other threads:[~2018-04-13 17:35 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-13 16:11 [PATCH 0/6] statfs: handle mount propagation Christian Brauner
2018-04-13 16:11 ` [PATCH 1/6] fs: use << for MS_* flags Christian Brauner
2018-04-13 16:45   ` Randy Dunlap
2018-04-13 20:19     ` Greg KH
2018-04-13 16:11 ` [PATCH 2/6] statfs: use << to align with fs header Christian Brauner
2018-04-13 16:47   ` Randy Dunlap
2018-04-13 17:35   ` Andreas Dilger [this message]
2018-04-13 17:55     ` Randy Dunlap
2018-04-13 18:32       ` Christian Brauner
2018-04-13 16:11 ` [PATCH 3/6] statfs: add ST_UNBINDABLE Christian Brauner
2018-04-13 16:11 ` [PATCH 4/6] statfs: add ST_SHARED Christian Brauner
2018-04-13 16:11 ` [PATCH 5/6] statfs: add ST_PRIVATE Christian Brauner
2018-04-13 16:11 ` [PATCH 6/6] statfs: add ST_SLAVE Christian Brauner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=833FF27F-CFAD-4011-A21C-86B3947BB7D5@dilger.ca \
    --to=adilger@dilger.ca \
    --cc=christian.brauner@ubuntu.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=kstewart@linuxfoundation.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pombredanne@nexb.com \
    --cc=serge@hallyn.com \
    --cc=tglx@linutronix.de \
    --cc=viro@zeniv.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.