linux-next: Tree for Jul 21 (fs/erofs/*.c)

Randy Dunlap rdunlap at infradead.org
Tue Jul 22 07:31:25 AEST 2025



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



More information about the Linux-erofs mailing list