Re: xfs_iomap.c:undefined reference to `put_dax'

From: Arnd Bergmann
Date: Mon May 15 2017 - 09:59:12 EST


On Mon, May 15, 2017 at 3:38 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> On Mon, May 15, 2017 at 6:25 AM, Arnd Bergmann <arnd@xxxxxxxx> wrote:
>> On Sun, May 14, 2017 at 1:21 AM, kbuild test robot
>> <fengguang.wu@xxxxxxxxx> wrote:
>>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>>> head: cd636458904a04de2349c728323c5d2af1203bdf
>>> commit: ef51042472f55b325fd7f2b26a2e29fd89757234 block, dax: move "select DAX" from BLOCK to FS_DAX
>>> date: 5 days ago
>>> config: ia64-bigsur_defconfig (attached as .config)
>>> compiler: ia64-linux-gcc (GCC) 6.2.0
>>> reproduce:
>>> wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>> chmod +x ~/bin/make.cross
>>> git checkout ef51042472f55b325fd7f2b26a2e29fd89757234
>>> # save the attached .config to linux build tree
>>> make.cross ARCH=ia64
>>>
>>> All errors (new ones prefixed by >>):
>>>
>>> fs/built-in.o: In function `xfs_file_iomap_end':
>>>>> xfs_iomap.c:(.text+0x2e3022): undefined reference to `put_dax'
>>> fs/built-in.o: In function `xfs_file_iomap_begin':
>>>>> xfs_iomap.c:(.text+0x2e4502): undefined reference to `dax_get_by_host'
>>
>> This is caused by CONFIG_DAX now being allowed to be '=m' while used by
>> a built-in file system. This only happens for XFS at the moment though, as the
>> other file systems check for CONFIG_FS_DAX already.
>>
>> I have a patch that I'm testing at the moment.
>>
>
> Hi Arnd,
>
> I have this patch out for testing.
>
> https://patchwork.kernel.org/patch/9725515/

That looks good for the file system parts, but what about drivers/md/dm.c,
do you have another patch for that one? With just the one patch you
quoted, that would break when dax_get_by_host() gets removed.

Arnd