Messages in this thread | | | From | "Williams, Dan J" <> | Subject | [GIT PULL] libnvdimm for 4.6 | Date | Tue, 15 Mar 2016 18:48:40 +0000 |
| |
Hi Linus, please pull from...
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm tags/libnvdimm-for-4.6
...to receive the libnvdimm update for 4.6.
This has appeared in -next with no reported issues, and a test merge with latest master passes the regression tests. Note that this includes development that was based on the tip/core/resources branch which you merged yesterday. The post merge diffstat is cleaner than the 6e2452dff444..libnvdimm-for-4.6 diffstat that "git request-pull" picked.
arch/x86/include/asm/pmem.h | 5 + drivers/acpi/nfit.c | 798 +++++++++++++++++++++++++++++++++++++++-------------- drivers/acpi/nfit.h | 30 +- drivers/nvdimm/blk.c | 18 +- drivers/nvdimm/btt.c | 19 +- drivers/nvdimm/bus.c | 131 +++++++-- drivers/nvdimm/core.c | 110 +++++--- drivers/nvdimm/dimm_devs.c | 6 +- drivers/nvdimm/namespace_devs.c | 7 + drivers/nvdimm/nd.h | 4 + drivers/nvdimm/pfn.h | 23 +- drivers/nvdimm/pfn_devs.c | 61 ++++ drivers/nvdimm/pmem.c | 219 +++++++++++---- drivers/nvdimm/region.c | 12 + include/linux/ioport.h | 1 + include/linux/libnvdimm.h | 5 +- include/linux/nd.h | 7 + include/linux/pmem.h | 19 ++ include/uapi/linux/ndctl.h | 13 + kernel/resource.c | 60 +++- tools/testing/nvdimm/test/nfit.c | 285 ++++++++++++++----- 21 files changed, 1394 insertions(+), 439 deletions(-)
The following changes since commit 6e2452dff4441e3dc24d415c8b2cda8a3ba52116:
nfit: Continue init even if ARS commands are unimplemented (2016-03-04 16:46:13 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm tags/libnvdimm-for-4.6
for you to fetch changes up to 489011652a2d5555901def04c24d68874e8ba9a1:
Merge branch 'for-4.6/pfn' into libnvdimm-for-next (2016-03-09 17:15:43 -0800)
---------------------------------------------------------------- libnvdimm for 4.6
1/ Asynchronous address range scrub: Given the capacities of next generation persistent memory devices a scrub operation to find all poison may take 10s of seconds. We want this scrub work to be done asynchronously with the rest of system initialization, so we move it out of line from the NFIT probing, i.e. acpi_nfit_add().
2/ Clear poison: ACPI 6.1 introduces the ability to send "clear error" commands to the ACPI0012:00 device representing the root of an "nvdimm bus". Similar to relocating a bad block on a disk, this support clears media errors in response to a write.
3/ Persistent memory resource tracking: A persistent memory range may be designated as simply "reserved" by platform firmware in the efi/e820 memory map. Later when the NFIT driver loads it discovers that the range is "Persistent Memory". The NFIT bus driver inserts a resource to advertise that "persistent" attribute in the system resource tree for /proc/iomem and kernel-internal usages.
4/ Miscellaneous cleanups and fixes: Workaround section misaligned pmem ranges when allocating a struct page memmap, fix handling of the read-only case in the ioctl path, and clean up block device major number allocation.
---------------------------------------------------------------- Dan Williams (18): nfit, tools/testing/nvdimm: add format interface code definitions nfit, tools/testing/nvdimm: test multiple control regions per-dimm libnvdimm, nfit: centralize command status translation libnvdimm: protect nvdimm_{bus|namespace}_add_poison() with nvdimm_bus_lock() libnvdimm: async notification support nfit, tools/testing/nvdimm: unify common init for acpi_nfit_desc nfit, libnvdimm: async region scrub workqueue nfit: scrub and register regions in a workqueue nfit: disable userspace initiated ars during scrub tools/testing/nvdimm: expand ars unit testing libnvdimm, pmem: fix 'pfn' support for section-misaligned namespaces libnvdimm, pmem: adjust for section collisions with 'System RAM' libnvdimm, pfn: 'resource'-address and 'size' attributes for pfn devices nfit, libnvdimm: clear poison command support libnvdimm, pmem: fix ia64 build, use PHYS_PFN libnvdimm, pmem: fix kmap_atomic() leak in error path libnvdimm, pmem: clear poison on write Merge branch 'for-4.6/pfn' into libnvdimm-for-next
Jerry Hoemann (2): libnvdimm: Clean-up access mode check. libnvdimm: Fix security issue with DSM IOCTL.
NeilBrown (3): pmem: don't allocate unused major device number nvdimm/blk: don't allocate unused major device number nvdimm/btt: don't allocate unused major device number
Toshi Kani (4): resource: Change __request_region to inherit from immediate parent resource: Add remove_resource interface resource: Export insert_resource and remove_resource ACPI: Change NFIT driver to insert new resource
arch/arm/kernel/setup.c | 6 +- arch/arm/plat-samsung/pm-check.c | 4 +- arch/arm64/kernel/setup.c | 6 +- arch/avr32/kernel/setup.c | 6 +- arch/ia64/kernel/efi.c | 13 +- arch/ia64/kernel/setup.c | 6 +- arch/m32r/kernel/setup.c | 4 +- arch/mips/kernel/setup.c | 10 +- arch/parisc/mm/init.c | 6 +- arch/powerpc/mm/mem.c | 2 +- arch/s390/kernel/setup.c | 8 +- arch/score/kernel/setup.c | 2 +- arch/sh/kernel/setup.c | 8 +- arch/sparc/mm/init_64.c | 8 +- arch/tile/kernel/setup.c | 11 +- arch/unicore32/kernel/setup.c | 6 +- arch/x86/include/asm/pmem.h | 5 + arch/x86/kernel/crash.c | 41 +- arch/x86/kernel/e820.c | 38 +- arch/x86/kernel/pmem.c | 4 +- arch/x86/kernel/setup.c | 6 +- drivers/acpi/acpi_platform.c | 2 +- drivers/acpi/apei/einj.c | 15 +- drivers/acpi/nfit.c | 798 +++++++++++++++++++++++++++---------- drivers/acpi/nfit.h | 30 +- drivers/nvdimm/blk.c | 18 +- drivers/nvdimm/btt.c | 19 +- drivers/nvdimm/bus.c | 131 +++++- drivers/nvdimm/core.c | 110 +++-- drivers/nvdimm/dimm_devs.c | 6 +- drivers/nvdimm/e820.c | 2 +- drivers/nvdimm/namespace_devs.c | 7 + drivers/nvdimm/nd.h | 4 + drivers/nvdimm/pfn.h | 23 +- drivers/nvdimm/pfn_devs.c | 61 +++ drivers/nvdimm/pmem.c | 219 +++++++--- drivers/nvdimm/region.c | 12 + drivers/parisc/eisa_enumerator.c | 4 +- drivers/rapidio/rio.c | 8 +- drivers/sh/superhyway/superhyway.c | 2 +- drivers/xen/balloon.c | 2 +- include/linux/ioport.h | 34 +- include/linux/libnvdimm.h | 5 +- include/linux/mm.h | 3 +- include/linux/nd.h | 7 + include/linux/pmem.h | 19 + include/uapi/linux/ndctl.h | 13 + kernel/kexec_core.c | 8 +- kernel/kexec_file.c | 8 +- kernel/memremap.c | 13 +- kernel/resource.c | 149 +++++-- mm/memory_hotplug.c | 2 +- tools/testing/nvdimm/test/nfit.c | 285 ++++++++++--- 53 files changed, 1623 insertions(+), 596 deletions(-)
| |