Messages in this thread | | | Date | Wed, 8 May 2024 17:27:49 -0400 | From | Kent Overstreet <> | Subject | Re: [PATCH v3 1/1] bcachefs: Move BCACHEFS_STATFS_MAGIC value to UAPI magic.h |
| |
On Wed, May 08, 2024 at 11:17:59PM +0200, Petr Vorel wrote: > HI Su, Kent, > > > > 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. > > Unfortunately Kent was faster, it's already merged without your SUSE address > (and your RBT you added in the end): > > https://evilpiepirate.org/git/bcachefs.git/commit/?h=for-next&id=ce8f9355f23be9756e499682d0d642a741db6c3a > > @Kent: Maybe it can be even now amended (with Su Yue's RBT).
..sure, make me invalidate my test results :)
> > > Signed-off-by: Petr Vorel <pvorel@suse.cz> > > > --- > > > Changes v2->v3: > > > * Align tab with other entries. > ... > > > #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. > > Thanks for info. But for struct statfs in statfs() or fstatfs() only 0xca451a4e > is needed, right? I would not expose the other(s) unless it's really needed. > Also we'd need to backport UUID_INIT() into UAPI :(. > > > Anyway, it looks good to me so far: > > Reviewed-by: Su Yue <glass.su@suse.com> > > And also without your RBT. > > Kind regards, > Petr > > > — > > Su
| |