Pretty straight forward series. Huaisheng, I can apply the whole series to libnvdimm if we can get ack's from maintainer of dcssblk and dm-writecache for the respective bits. On 07/25/2018 09:28 AM, Huaisheng Ye wrote: > From: Huaisheng Ye <yehs1@xxxxxxxxxx> > > Changes since v1 [1]: > * Involve the previous patches for pfn can be NULL. > * Reword the patch descriptions according to Christian's comment. > * According to Ross's suggestion, replace local pointer dummy_addr > with NULL within md/dm-writecache for direct_access. > > [1]: https://lkml.org/lkml/2018/7/24/199 > > Some functions within fs/dax, dax/super and md/dm-writecache don't > need to get local pointer kaddr or variable pfn from direct_access. > Assigning NULL to kaddr or pfn to ->direct_access() is more > straightforward and simple than offering a useless local pointer or > variable. > > So all ->direct_access() need to check the validity of pointer kaddr > and pfn for NULL assignment. If either of them is equal to NULL, that > is to say callers may have no need for kaddr or pfn, so this series of > patch are prepared for allowing them to pass in NULL instead of having > to pass in a local pointer or variable that they then just throw away. > > Huaisheng Ye (6): > libnvdimm, pmem: kaddr and pfn can be NULL to ->direct_access() > s390, dcssblk: kaddr and pfn can be NULL to ->direct_access() > tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() > dax/super: Do not request a pointer kaddr when not required > md/dm-writecache: Don't request pointer dummy_addr when not required > filesystem-dax: Do not request kaddr and pfn when not required > > drivers/dax/super.c | 3 +-- > drivers/md/dm-writecache.c | 3 +-- > drivers/nvdimm/pmem.c | 7 +++++-- > drivers/s390/block/dcssblk.c | 8 +++++--- > fs/dax.c | 13 ++++--------- > tools/testing/nvdimm/pmem-dax.c | 12 ++++++++---- > 6 files changed, 24 insertions(+), 22 deletions(-) >