Messages in this thread | | | Subject | Re: [PATCH v3 1/1] bcachefs: Move BCACHEFS_STATFS_MAGIC value to UAPI magic.h | From | Glass Su <> | Date | Wed, 8 May 2024 10:08:01 +0800 |
| |
> On May 7, 2024, at 23:37, Petr Vorel <pvorel@suse.cz> wrote: > > Move BCACHEFS_STATFS_MAGIC value to UAPI <linux/magic.h> under > BCACHEFS_SUPER_MAGIC definition (use common approach for name) and reuse the > definition in bcachefs_format.h BCACHEFS_STATFS_MAGIC. > > There are other bcachefs magic definitions: BCACHE_MAGIC, BCHFS_MAGIC, > which use UUID_INIT() and are used only in libbcachefs. Therefore move > only BCACHEFS_STATFS_MAGIC value, which can be used outside of > libbcachefs for f_type field in struct statfs in statfs() or fstatfs(). > > Suggested-by: Su Yue <l@damenly.org>
Would you kindly amend it to Su Yue <glass.su@suse.com> or Kent can help if the patch is going to be applied.
> Signed-off-by: Petr Vorel <pvorel@suse.cz> > --- > Changes v2->v3: > * Align tab with other entries. > > Changes v1->v2 (all suggested by Brian Foster - thanks!): > * rename constant to BCACHEFS_SUPER_MAGIC, > * keep BCACHEFS_STATFS_MAGIC in bcachefs_format.h, just include > <uapi/linux/magic.h> and use BCACHEFS_SUPER_MAGIC definition, > * move the constant to the first chunk. > > Kind regards, > Petr > > fs/bcachefs/bcachefs_format.h | 3 ++- > include/uapi/linux/magic.h | 1 + > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/fs/bcachefs/bcachefs_format.h b/fs/bcachefs/bcachefs_format.h > index f7fbfccd2b1e..3b831415409b 100644 > --- a/fs/bcachefs/bcachefs_format.h > +++ b/fs/bcachefs/bcachefs_format.h > @@ -76,6 +76,7 @@ > #include <asm/byteorder.h> > #include <linux/kernel.h> > #include <linux/uuid.h> > +#include <uapi/linux/magic.h> > #include "vstructs.h" > > #ifdef __KERNEL__ > @@ -1275,7 +1276,7 @@ enum bch_compression_opts { > UUID_INIT(0xc68573f6, 0x66ce, 0x90a9, \ > 0xd9, 0x6a, 0x60, 0xcf, 0x80, 0x3d, 0xf7, 0xef) > > -#define BCACHEFS_STATFS_MAGIC 0xca451a4e > +#define BCACHEFS_STATFS_MAGIC BCACHEFS_SUPER_MAGIC > > #define JSET_MAGIC __cpu_to_le64(0x245235c1a3625032ULL) > #define BSET_MAGIC __cpu_to_le64(0x90135c78b99e07f5ULL) > diff --git a/include/uapi/linux/magic.h b/include/uapi/linux/magic.h > index 1b40a968ba91..bb575f3ab45e 100644 > --- a/include/uapi/linux/magic.h > +++ b/include/uapi/linux/magic.h > @@ -37,6 +37,7 @@ > #define HOSTFS_SUPER_MAGIC 0x00c0ffee > #define OVERLAYFS_SUPER_MAGIC 0x794c7630 > #define FUSE_SUPER_MAGIC 0x65735546 > +#define BCACHEFS_SUPER_MAGIC 0xca451a4e
IIUC, due to some historical reasons bcachefs used to switched ondisk sb magic from BCACHE_MAGIC to BCHFS_MAGIC. Other major fses uses *_SUPER_MAGIC both for ondisk sb magic, kstatfs::f_type and super_block::s_magic. However, for bcacehfs there are three magic numbers.
Anyway, it looks good to me so far: Reviewed-by: Su Yue <glass.su@suse.com>
— Su
> #define MINIX_SUPER_MAGIC 0x137F /* minix v1 fs, 14 char names */ > #define MINIX_SUPER_MAGIC2 0x138F /* minix v1 fs, 30 char names */ > -- > 2.43.0 > >
| |