Re: [PATCH v3 1/3] pmem: only set QUEUE_FLAG_DAX for fsdax mode

From: Kani, Toshi
Date: Tue Jun 26 2018 - 16:54:32 EST


On Tue, 2018-06-26 at 15:13 -0400, Mike Snitzer wrote:
> On Tue, Jun 26 2018 at 3:07pm -0400,
> Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
>
> > On Tue, Jun 26, 2018 at 11:58 AM, Mike Snitzer <snitzer@xxxxxxxxxx> wrote:
> > > On Tue, Jun 26 2018 at 2:52pm -0400,
> > > Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> > >
> > > > On Tue, Jun 26, 2018 at 10:59 AM, Ross Zwisler
> > > > <ross.zwisler@xxxxxxxxxxxxxxx> wrote:
> > > > > QUEUE_FLAG_DAX is an indication that a given block device supports
> > > > > filesystem DAX and should not be set for PMEM namespaces which are in "raw"
> > > > > or "sector" modes. These namespaces lack struct page and are prevented
> > > > > from participating in filesystem DAX.
> > > > >
> > > > > Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
> > > > > Suggested-by: Mike Snitzer <snitzer@xxxxxxxxxx>
> > > > > Cc: stable@xxxxxxxxxxxxxxx
> > > >
> > > > Why is this cc: stable? What is the user visible impact of this change
> > > > especially given the requirement to validate QUEUE_FLAG_DAX with
> > > > bdev_dax_supported()? Patch looks good, but it's just a cosmetic fixup
> > > > afaics.
> > >
> > > This isn't cosmetic when you consider that stacking up a DM device is
> > > looking at this flag to determine whether a table does or does _not_
> > > support DAX.
> > >
> > > So this patch, in conjunction with the other changes in the series, is
> > > certainly something I'd consider appropriate for stable.
> >
> > I think this classifies as something that never worked correctly and
> > is not a regression. It does not identify which commit it is repairing
> > or the user visible failure mode.
>
> So you're taking issue with making stacked dax configs work in older
> kernels? That's fine. We can drop the stable cc if you like.
>
> But I mean we intended for this to work.. so the Fixes commit references
> can easily be added, e.g.: 545ed20e6df68a4d2584a29a2a28ee8b2f7e9547
> ("dm: add infrastructure for DAX support")

When this dm change was made, the pmem driver supported DAX for both raw
and memory modes (note: sector mode does not use the pmem driver). I
think the issue was introduced when we dropped DAX support from raw
mode.

Thanks,
-Toshi