On 7/21/25 12:41 AM, Stephen Rothwell wrote: > Hi all, > > Changes since 20250718: > on i386 (i.e., 32-bit): In file included from ../include/linux/bits.h:5, from ../include/linux/string_helpers.h:5, from ../include/linux/seq_file.h:7, from ../fs/erofs/super.c:8: ../fs/erofs/internal.h: In function 'erofs_inode_in_metabox': ../include/vdso/bits.h:7:40: warning: left shift count >= width of type [-Wshift-count-overflow] 7 | #define BIT(nr) (UL(1) << (nr)) | ^~ ../fs/erofs/internal.h:305:38: note: in expansion of macro 'BIT' 305 | return EROFS_I(inode)->nid & BIT(EROFS_DIRENT_NID_METABOX_BIT); | ^~~ Only super.c is shown here, but the warnings happen any time that the macro: #define EROFS_DIRENT_NID_METABOX_BIT 63 is used (on 32-bit), all (or mostly) from internal.h erofs_nid_to_ino64(): return ((nid << 1) & GENMASK_ULL(63, 32)) | (nid & GENMASK(30, 0)) | ((nid >> EROFS_DIRENT_NID_METABOX_BIT) << 31); -- ~Randy