Re: linux-next: Tree for Jul 18 (header build error)

From: Darrick J. Wong
Date: Thu Jul 18 2019 - 20:31:18 EST


On Fri, Jul 19, 2019 at 10:05:57AM +1000, Stephen Rothwell wrote:
> Hi all,
>
> On Thu, 18 Jul 2019 10:00:22 -0700 Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
> >
> > on x86_64, when CONFIG_BLOCK is not set:
> >
> > CC include/linux/iomap.h.s
> > In file included from <command-line>:0:0:
> > ./../include/linux/iomap.h: In function âiomap_sectorâ:
> > ./../include/linux/iomap.h:76:48: error: âSECTOR_SHIFTâ undeclared (first use in this function); did you mean âSECTIONS_SHIFTâ?
> > return (iomap->addr + pos - iomap->offset) >> SECTOR_SHIFT;
> > ^~~~~~~~~~~~
>
> include/linux/iomap.h should only be used when CONFIG_BLOCK is set (if
> you follow the Kconfig trail). So maybe this header should only be
> compile tested if CONFIG_BLOCK is set.

Yeah, that's basically what Christoph said earlier today.

Granted, nobody replied to my question about where in the kernel would
someone be using iomap to map file offsets to disk locations without
block devices, but ...

... oh, this is some weird "mash all the kernel headers together and see
if they compile" thing, isn't it? Um, yes, iomap.h should only be
tested if CONFIG_IOMAP=y (which in turn requires CONFIG_BLOCK=y).

--D

> --
> Cheers,
> Stephen Rothwell