[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPcyv4gKr57qNnMEupjcjQmH9Vy_iZuLPE1VA36QAkKhzEbzSA@mail.gmail.com>
Date: Tue, 7 Apr 2020 13:12:41 -0700
From: Dan Williams <dan.j.williams@...el.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-nvdimm <linux-nvdimm@...ts.01.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Vishal L Verma <vishal.l.verma@...el.com>
Subject: [GIT PULL] libnvdimm for v5.7
Hi Linus, please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm
tags/libnvdimm-for-5.7
...to receive the libnvdimm and dax update for this cycle. There were
multiple touches outside of drivers/nvdimm/ this round to add cross
arch compatibility to the devm_memremap_pages() interface, enhance
numa information for persistent memory ranges, and add a
zero_page_range() dax operation. This cycle I switched from the
patchwork api to Konstantin's b4 script for collecting tags (from x86,
PowerPC, filesystem, and device-mapper folks), and everything looks to
have gone ok there. This has all appeared in -next with no reported
issues.
Given the current environment where one might need to step away on
short notice I thought it would be a good idea to highlight to you and
others a backup maintainer for libnvdimm. Vishal, has agreed to step
in if circumstances make me non-responsive for multiple days. Not
expecting anything, just being proactive.
---
The following changes since commit 11a48a5a18c63fd7621bb050228cebf13566e4d8:
Linux 5.6-rc2 (2020-02-16 13:16:59 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm
tags/libnvdimm-for-5.7
for you to fetch changes up to f6d2b802f80d0ca89ee1f51c1781b3f79cdb25d5:
Merge branch 'for-5.7/libnvdimm' into libnvdimm-for-next (2020-04-02
19:55:17 -0700)
----------------------------------------------------------------
libnvdimm for 5.7
- Add support for region alignment configuration and enforcement to
fix compatibility across architectures and PowerPC page size
configurations.
- Introduce 'zero_page_range' as a dax operation. This facilitates
filesystem-dax operation without a block-device.
- Introduce phys_to_target_node() to facilitate drivers that want to
know resulting numa node if a given reserved address range was
onlined.
- Advertise a persistence-domain for of_pmem and papr_scm. The
persistence domain indicates where cpu-store cycles need to reach in
the platform-memory subsystem before the platform will consider them
power-fail protected.
- Promote numa_map_to_online_node() to a cross-kernel generic facility.
- Save x86 numa information to allow for node-id lookups for reserved
memory ranges, deploy that capability for the e820-pmem driver.
- Pick up some miscellaneous minor fixes, that missed v5.6-final,
including a some smatch reports in the ioctl path and some unit test
compilation fixups.
- Fixup some flexible-array declarations.
----------------------------------------------------------------
Aneesh Kumar K.V (1):
libnvdimm: Update persistence domain value for of_pmem and papr_scm device
Dan Carpenter (2):
acpi/nfit: improve bounds checking for 'func'
libnvdimm: Out of bounds read in __nd_ioctl()
Dan Williams (15):
ACPI: NUMA: Up-level "map to online node" functionality
mm/numa: Skip NUMA_NO_NODE and online nodes in numa_map_to_online_node()
powerpc/papr_scm: Switch to numa_map_to_online_node()
x86/mm: Introduce CONFIG_NUMA_KEEP_MEMINFO
x86/NUMA: Provide a range-to-target_node lookup facility
libnvdimm/e820: Retrieve and populate correct 'target_node' info
mm/memremap_pages: Kill unused __devm_memremap_pages()
mm/memremap_pages: Introduce memremap_compat_align()
libnvdimm/pfn: Prevent raw mode fallback if pfn-infoblock valid
libnvdimm/namespace: Enforce memremap_compat_align()
libnvdimm/region: Introduce NDD_LABELING
libnvdimm/region: Introduce an 'align' attribute
Merge branch 'for-5.6/libnvdimm-fixes' into libnvdimm-for-next
Merge branch 'for-5.7/numa' into libnvdimm-for-next
Merge branch 'for-5.7/libnvdimm' into libnvdimm-for-next
Gustavo A. R. Silva (3):
ACPI: NFIT: Replace zero-length array with flexible-array member
libnvdimm/label: Replace zero-length array with flexible-array member
libnvdimm/region: Replace zero-length array with flexible-array member
Jan Kara (1):
tools/testing/nvdimm: Fix compilation failure without
CONFIG_DEV_DAX_PMEM_COMPAT
Lukas Bulwahn (1):
MAINTAINERS: clarify maintenance of nvdimm testing tool
Santosh Sivaraj (1):
tools/test/nvdimm: Fix out of tree build
Vivek Goyal (7):
pmem: Add functions for reading/writing page to/from pmem
dax, pmem: Add a dax operation zero_page_range
s390,dcssblk,dax: Add dax zero_page_range operation to dcssblk driver
dm,dax: Add dax zero_page_range operation
dax: Use new dax zero page method for zeroing a page
dax,iomap: Add helper dax_iomap_zero() to zero a range
dax: Move mandatory ->zero_page_range() check in alloc_dax()
YueHaibing (1):
libnvdimm/region: Fix build error
MAINTAINERS | 1 +
arch/powerpc/Kconfig | 1 +
arch/powerpc/mm/ioremap.c | 21 +++++
arch/powerpc/platforms/pseries/papr_scm.c | 27 ++-----
arch/x86/Kconfig | 1 +
arch/x86/mm/numa.c | 67 +++++++++++----
drivers/acpi/nfit/core.c | 14 ++--
drivers/acpi/nfit/nfit.h | 13 +--
drivers/acpi/numa/srat.c | 41 ----------
drivers/dax/bus.c | 4 +-
drivers/dax/super.c | 28 ++++++-
drivers/md/dm-linear.c | 18 +++++
drivers/md/dm-log-writes.c | 17 ++++
drivers/md/dm-stripe.c | 23 ++++++
drivers/md/dm.c | 32 +++++++-
drivers/nvdimm/bus.c | 6 +-
drivers/nvdimm/dimm.c | 2 +-
drivers/nvdimm/dimm_devs.c | 95 +++++++++++++++++-----
drivers/nvdimm/e820.c | 18 +----
drivers/nvdimm/label.h | 2 +-
drivers/nvdimm/namespace_devs.c | 28 ++++++-
drivers/nvdimm/nd.h | 7 +-
drivers/nvdimm/of_pmem.c | 4 +-
drivers/nvdimm/pfn.h | 12 +++
drivers/nvdimm/pfn_devs.c | 40 +++++++--
drivers/nvdimm/pmem.c | 101 ++++++++++++++---------
drivers/nvdimm/region_devs.c | 130 ++++++++++++++++++++++++++----
drivers/s390/block/dcssblk.c | 20 ++++-
fs/dax.c | 59 ++++++--------
fs/iomap/buffered-io.c | 9 +--
include/linux/acpi.h | 23 +++++-
include/linux/dax.h | 21 ++---
include/linux/device-mapper.h | 3 +
include/linux/io.h | 2 -
include/linux/libnvdimm.h | 2 +
include/linux/memremap.h | 8 ++
include/linux/mmzone.h | 1 +
include/linux/numa.h | 30 ++++++-
lib/Kconfig | 3 +
mm/Kconfig | 5 ++
mm/mempolicy.c | 26 ++++++
mm/memremap.c | 23 ++++++
tools/testing/nvdimm/Kbuild | 4 +-
tools/testing/nvdimm/test/Kbuild | 4 +-
tools/testing/nvdimm/test/nfit.c | 2 +
45 files changed, 737 insertions(+), 261 deletions(-)
Powered by blists - more mailing lists