Ah makes sense, sorry I missed that entirely in the patch series, I'll revisit and will be more careful about what goes in libext2fs. Thanks, Harshad On Wed, Dec 2, 2020 at 8:50 AM Theodore Y. Ts'o <tytso@xxxxxxx> wrote: > > On Fri, Nov 20, 2020 at 11:15:53AM -0800, Harshad Shirwadkar wrote: > > diff --git a/lib/ext2fs/bitops.h b/lib/ext2fs/bitops.h > > index 505b3c9c..3c7b2496 100644 > > --- a/lib/ext2fs/bitops.h > > +++ b/lib/ext2fs/bitops.h > > @@ -247,6 +247,14 @@ extern errcode_t ext2fs_find_first_set_generic_bmap(ext2fs_generic_bitmap bitmap > > #endif /* __STDC_VERSION__ >= 199901L */ > > #endif /* INCLUDE_INLINE_FUNCS */ > > > > +/* Macros for kernel compatibility */ > > +#define be32_to_cpu(x) ext2fs_be32_to_cpu(x) > > +#define le32_to_cpu(x) ext2fs_le32_to_cpu(x) > > +#define le16_to_cpu(x) ext2fs_le16_to_cpu(x) > > + > > +#define cpu_to_be32(x) ext2fs_cpu_to_be32(x) > > +#define cpu_to_be16(x) ext2fs_cpu_to_be16(x) > > +#define cpu_to_le16(x) ext2fs_cpu_to_le16(x) > > /* > > * Fast bit set/clear functions that doesn't need to return the > > * previous bit value. > > Kernel compatibility #define's should be in e2fsck/jfs_user.h. > > The problem with putting them in lib/ext2fs/bitops.h is that this a > published header file which will be pulled in by external userspace > applications which #include <ext2fs/ext2fs.h>. And we don't want to > have namespace leakage which might interfere with other header files > or the application's definition of these cpp macros. > > - Ted