Re: linux-next: build failure after merge of the block tree

From: Matteo Croce
Date: Thu Mar 12 2020 - 06:13:33 EST


On Thu, Mar 12, 2020 at 3:55 AM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> Hi all,
>
> After merging the block tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> In file included from fs/erofs/xattr.h:10,
> from fs/erofs/inode.c:7:
> fs/erofs/inode.c: In function 'erofs_read_inode':
> fs/erofs/internal.h:197:31: error: 'PAGE_SECTORS_SHIFT' undeclared (first use in this function); did you mean 'PA_SECTION_SHIFT'?
> 197 | #define LOG_SECTORS_PER_BLOCK PAGE_SECTORS_SHIFT
> | ^~~~~~~~~~~~~~~~~~
> fs/erofs/inode.c:122:30: note: in expansion of macro 'LOG_SECTORS_PER_BLOCK'
> 122 | inode->i_blocks = nblks << LOG_SECTORS_PER_BLOCK;
> | ^~~~~~~~~~~~~~~~~~~~~
> fs/erofs/internal.h:197:31: note: each undeclared identifier is reported only once for each function it appears in
> 197 | #define LOG_SECTORS_PER_BLOCK PAGE_SECTORS_SHIFT
> | ^~~~~~~~~~~~~~~~~~
> fs/erofs/inode.c:122:30: note: in expansion of macro 'LOG_SECTORS_PER_BLOCK'
> 122 | inode->i_blocks = nblks << LOG_SECTORS_PER_BLOCK;
> | ^~~~~~~~~~~~~~~~~~~~~
> In file included from fs/erofs/data.c:7:
> fs/erofs/data.c: In function 'erofs_read_raw_page':
> fs/erofs/internal.h:197:31: error: 'PAGE_SECTORS_SHIFT' undeclared (first use in this function); did you mean 'PA_SECTION_SHIFT'?
> 197 | #define LOG_SECTORS_PER_BLOCK PAGE_SECTORS_SHIFT
> | ^~~~~~~~~~~~~~~~~~
> fs/erofs/data.c:226:4: note: in expansion of macro 'LOG_SECTORS_PER_BLOCK'
> 226 | LOG_SECTORS_PER_BLOCK;
> | ^~~~~~~~~~~~~~~~~~~~~
> fs/erofs/internal.h:197:31: note: each undeclared identifier is reported only once for each function it appears in
> 197 | #define LOG_SECTORS_PER_BLOCK PAGE_SECTORS_SHIFT
> | ^~~~~~~~~~~~~~~~~~
> fs/erofs/data.c:226:4: note: in expansion of macro 'LOG_SECTORS_PER_BLOCK'
> 226 | LOG_SECTORS_PER_BLOCK;
> | ^~~~~~~~~~~~~~~~~~~~~
> fs/erofs/data.c: In function 'erofs_bmap':
> fs/erofs/internal.h:197:31: error: 'PAGE_SECTORS_SHIFT' undeclared (first use in this function); did you mean 'PA_SECTION_SHIFT'?
> 197 | #define LOG_SECTORS_PER_BLOCK PAGE_SECTORS_SHIFT
> | ^~~~~~~~~~~~~~~~~~
> fs/erofs/data.c:351:16: note: in expansion of macro 'LOG_SECTORS_PER_BLOCK'
> 351 | if (block >> LOG_SECTORS_PER_BLOCK >= blks)
> | ^~~~~~~~~~~~~~~~~~~~~
>
> Caused by commit
>
> 61c7d3d5e015 ("block: refactor duplicated macros")
>
> I have used the block tree from next-20200311 for today.
>
> --
> Cheers,
> Stephen Rothwell

Hi,

I was building a kernel without erofs. Just including
include/linux/blkdev.h will fix it, should I amend the
patch or send a fix?

Cheers,


--
Matteo Croce
per aspera ad upstream