Hi Linus, please pull from: git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm tags/libnvdimm-for-4.20 ...to receive the libnvdimm updates for this cycle. No interactions with other trees this time around. There are updates to the core to improve driver initialization time, and updates to the 'nfit' driver for fixing ARS corner cases and exposing some more hardware attributes to userspace. It has all been in -next for a few releases now with no reported issues. --- The following changes since commit 7876320f88802b22d4e2daf7eb027dd14175a0f8: Linux 4.19-rc4 (2018-09-16 11:52:37 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm tags/libnvdimm-for-4.20 for you to fetch changes up to 594861215c834e4b59a30d4b794f6372717bc197: acpi, nfit: Further restrict userspace ARS start requests (2018-10-17 14:02:32 -0700) ---------------------------------------------------------------- libnvdimm for 4.20 +ACo- Improve the efficiency and performance of reading nvdimm-namespace labels. Reduce the amount of label data read at driver load time by a few orders of magnitude. Reduce heavyweight call-outs to platform-firmware routines. +ACo- Handle media errors located in the 'struct page' array stored on a persistent memory namespace. Let the kernel clear these errors rather than an awkward userspace workaround. +ACo- Fix Address Range Scrub (ARS) completion tracking. Correct occasions where the kernel indicates completion of ARS before submission. +ACo- Fix asynchronous device registration reference counting. +ACo- Add support for reporting an nvdimm dirty-shutdown-count via sysfs. +ACo- Fix various small libnvdimm core and uapi issues. ---------------------------------------------------------------- Alexander Duyck (7): libnvdimm: Hold reference on parent while scheduling async init libnvdimm: Set device node in nd+AF8-device+AF8-register nvdimm: Sanity check labeloff nvdimm: Clarify comment in sizeof+AF8-namespace+AF8-index nvdimm: Remove empty if statement nvdimm: Split label init out from the logic for getting config data nvdimm: Use namespace index data to reduce number of label reads needed Dan Williams (9): libnvdimm, region: Fail badblocks listing for inactive regions libnvdimm, pmem: Fix badblocks population for 'raw' namespaces libnvdimm, dimm: Maximize label transfer size libnvdimm, label: Fix sparse warning acpi, nfit: Introduce nfit+AF8-mem flags acpi, nfit: Collect shutdown status tools/testing/nvdimm: Populate dirty shutdown data acpi, nfit: Fix Address Range Scrub completion tracking acpi, nfit: Further restrict userspace ARS start requests David Howells (2): UAPI: ndctl: Fix g+-+--unsupported initialisation in headers UAPI: ndctl: Remove use of PAGE+AF8-SIZE GuangZhe Fu (1): libnvdimm, namespace: Drop the repeat assignment for variable dev-+AD4-parent Pankaj Gupta (1): libnvdimm: remove duplicate include Vishal Verma (1): libnvdimm, pfn: during init, clear errors in the metadata area drivers/acpi/nfit/core.c +AHw- 297 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+------------ drivers/acpi/nfit/intel.h +AHw- 38 +-+-+-+-+- drivers/acpi/nfit/nfit.h +AHw- 21 +-+-- drivers/nvdimm/bus.c +AHw- 20 +-+-- drivers/nvdimm/dimm.c +AHw- 6 +-- drivers/nvdimm/dimm+AF8-devs.c +AHw- 60 +-+-+----- drivers/nvdimm/label.c +AHw- 144 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-- drivers/nvdimm/label.h +AHw- 4 +-- drivers/nvdimm/namespace+AF8-devs.c +AHw- 1 - drivers/nvdimm/nd-core.h +AHw- 1 - drivers/nvdimm/nd.h +AHw- 2 +- drivers/nvdimm/pfn+AF8-devs.c +AHw- 61 +-+-+-+-+-+-- drivers/nvdimm/pmem.c +AHw- 4 +-- drivers/nvdimm/region+AF8-devs.c +AHw- 11 +-- include/linux/ndctl.h +AHw- 22 +-+-+- include/uapi/linux/ndctl.h +AHw- 52 +-+-+---- tools/testing/nvdimm/Kbuild +AHw- 1 +- tools/testing/nvdimm/acpi+AF8-nfit+AF8-test.c +AHw- 8 +- tools/testing/nvdimm/test/nfit.c +AHw- 4 +-- tools/testing/nvdimm/test/nfit+AF8-test.h +AHw- 24 --- 20 files changed, 564 insertions(+-), 217 deletions(-) create mode 100644 drivers/acpi/nfit/intel.h create mode 100644 include/linux/ndctl.h