Re: [PATCH v2 7/7] pmem, dax: have direct_access use __pmem annotation

From: Dan Williams
Date: Thu Aug 13 2015 - 17:20:40 EST


On Thu, Aug 13, 2015 at 9:51 AM, Ross Zwisler
<ross.zwisler@xxxxxxxxxxxxxxx> wrote:
> Update the annotation for the kaddr pointer returned by direct_access()
> so that it is a __pmem pointer. This is consistent with the PMEM driver
> and with how this direct_access() pointer is used in the DAX code.
>
> Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
> ---
> Documentation/filesystems/Locking | 3 ++-
> arch/powerpc/sysdev/axonram.c | 7 ++++---
> drivers/block/brd.c | 4 ++--
> drivers/nvdimm/pmem.c | 4 ++--
> drivers/s390/block/dcssblk.c | 10 +++++----
> fs/block_dev.c | 2 +-
> fs/dax.c | 44 +++++++++++++++++++++------------------
> include/linux/blkdev.h | 8 +++----
> 8 files changed, 45 insertions(+), 37 deletions(-)
>
> diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking
> index 6a34a0f..06d4434 100644
> --- a/Documentation/filesystems/Locking
> +++ b/Documentation/filesystems/Locking
> @@ -397,7 +397,8 @@ prototypes:
> int (*release) (struct gendisk *, fmode_t);
> int (*ioctl) (struct block_device *, fmode_t, unsigned, unsigned long);
> int (*compat_ioctl) (struct block_device *, fmode_t, unsigned, unsigned long);
> - int (*direct_access) (struct block_device *, sector_t, void **, unsigned long *);
> + int (*direct_access) (struct block_device *, sector_t, void __pmem **,
> + unsigned long *);

So this collides with the __pfn_t work. I think the we have a
reasonable chance of getting that in to 4.3, so I'd wait to see if we
hit any major roadblocks with that set [1] before merging these.

[1]: https://lists.01.org/pipermail/linux-nvdimm/2015-August/001803.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/