[dm-devel] dm-writecache: fix compilation issue with !DAX

Mike Snitzer snitzer at redhat.com
Tue May 29 19:57:40 UTC 2018


On Tue, May 29 2018 at  2:40pm -0400,
Dan Williams <dan.j.williams at intel.com> wrote:

> On Tue, May 29, 2018 at 11:08 AM, Mike Snitzer <snitzer at redhat.com> wrote:
> > On Tue, May 29 2018 at  1:52pm -0400,
> > Ross Zwisler <ross.zwisler at linux.intel.com> wrote:
> >
> >> As reported by Arnd (https://lkml.org/lkml/2018/5/28/1697), dm-writecache
> >> will fail with link errors in configs where DAX isn't present:
> >>
> >> drivers/md/dm-writecache.o: In function `writecache_ctr':
> >> dm-writecache.c:(.text+0x1fdc): undefined reference to `dax_read_lock'
> >> dm-writecache.c:(.text+0x2004): undefined reference to `dax_direct_access'
> >> dm-writecache.c:(.text+0x21cc): undefined reference to `dax_read_unlock'
> >>
> >> Fix this by following the lead of the other DM modules and wrapping calls
> >> to the generic DAX code in #if IS_ENABLED(CONFIG_DAX_DRIVER) blocks.
> >>
> >> We also expand the failure case for the 'p' (persistent memory) flag so
> >> that fails on both architectures that don't support persistent memory and
> >> on kernels that don't have DAX support configured.  This prevents us from
> >> ever hitting the BUG() in the persistent_memory_claim() stub.
> >>
> >> Signed-off-by: Ross Zwisler <ross.zwisler at linux.intel.com>
> >> Reported-by: Arnd Bergmann <arnd at arndb.de>
> >
> > Thanks, I've picked this up.
> 
> ...I assume you're also going to let the 'pmem api' discussion resolve
> before this all goes upstream?

Yeah, I'm going to pivot back to that and put time to it shortly.  If
dm-writecache has to wait another cycle (so 4.19 inclusion), while
unfortunate, it wouldn't be the end of the world.

I look forward to your continued help, thanks.
Mike




More information about the dm-devel mailing list