lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <1469683980.5271.0.camel@intel.com>
Date:	Thu, 28 Jul 2016 05:33:00 +0000
From:	"Williams, Dan J" <dan.j.williams@...el.com>
To:	"torvalds@...ux-foundation.org" <torvalds@...ux-foundation.org>
CC:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"linux-nvdimm@...ts.01.org" <linux-nvdimm@...ts.01.org>,
	"linux-acpi@...r.kernel.org" <linux-acpi@...r.kernel.org>
Subject: [GIT PULL] libnvdimm for 4.8

Hi Linus, please pull from:

  git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm tags/libnvdimm-for-4.8

...to receive the libnvdimm update for 4.8.

This has been in -next with the following reported conflicts:

1/ The __pmem address space has been removed.  New usages of __pmem
came in through the DM tree this cycle.

2/ A minor conflict in the pmem driver with the device_add_disk()
changes that came in through the block layer.

3/ The removal of pcommit collided with new enabling in KVM.  At the
time of writing you have not yet merged the KVM tree.

A test resolution for 1 and 2 is available here:

  git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-for-4.8-merge

Stephen's resolution of the KVM conflict is available here:

  https://lkml.org/lkml/2016/7/25/11

The pcommit removal in arch/x86/ has an ack from Ingo.

---

The following changes since commit a72255983f12f31f0c8d8275fb1a781546cfacb7:

  nfit: make DIMM DSMs optional (2016-07-19 12:32:39 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm tags/libnvdimm-for-4.8

for you to fetch changes up to 0606263f24f3d64960de742c55894190b5df903b:

  Merge branch 'for-4.8/libnvdimm' into libnvdimm-for-next (2016-07-24 08:05:44 -0700)

----------------------------------------------------------------
libnvdimm for 4.8

1/ Replace pcommit with ADR / directed-flushing:
   The pcommit instruction, which has not shipped on any product, is
   deprecated. Instead, the requirement is that platforms implement either
   ADR, or provide one or more flush addresses per nvdimm. ADR
   (Asynchronous DRAM Refresh) flushes data in posted write buffers to the
   memory controller on a power-fail event. Flush addresses are defined in
   ACPI 6.x as an NVDIMM Firmware Interface Table (NFIT) sub-structure:
   "Flush Hint Address Structure". A flush hint is an mmio address that
   when written and fenced assures that all previous posted writes
   targeting a given dimm have been flushed to media.

2/ On-demand ARS (address range scrub):
   Linux uses the results of the ACPI ARS commands to track bad blocks
   in pmem devices.  When latent errors are detected we re-scrub the media
   to refresh the bad block list, userspace can also request a re-scrub at
   any time.

3/ Support for the Microsoft DSM (device specific method) command format.

4/ Support for EDK2/OVMF virtual disk device memory ranges.

5/ Various fixes and cleanups across the subsystem.

----------------------------------------------------------------
Dan Williams (32):
      libnvdimm: use devm_add_action_or_reset()
      libnvdimm: IS_ERR() usage cleanup
      tools/testing/nvdimm: add pfn device dependency
      libnvdimm, pmem: allow nfit_test to override pmem_direct_access()
      tools/testing/nvdimm: replace CONFIG_DMA_CMA dependency with vmalloc()
      tools/testing/nvdimm: remove __wrap_devm_memremap_pages placeholder
      nfit: always associate flush hints
      nfit: don't override return value of nfit_mem_init
      libnvdimm: introduce devm_nvdimm_memremap(), convert nfit_spa_map() users
      libnvdimm, nfit: remove nfit_spa_map() infrastructure
      libnvdimm, nfit: move flush hint mapping to region-device driver-data
      tools/testing/nvdimm: simulate multiple flush hints per-dimm
      libnvdimm: keep region data alive over namespace removal
      libnvdimm: introduce nvdimm_flush() and nvdimm_has_flush()
      libnvdimm: cycle flush hints
      libnvdimm, pmem: use REQ_FUA, REQ_FLUSH for nvdimm_flush()
      libnvdimm, pmem: flush posted-write queues on shutdown
      fs/dax: remove wmb_pmem()
      libnvdimm, pmem: use nvdimm_flush() for namespace I/O writes
      pmem: kill wmb_pmem()
      pmem: kill __pmem address space
      tools/testing/nvdimm: add virtual ramdisk range
      tools/testing/nvdimm: add manufacturing_{date|location} dimm properties
      nfit: fix _FIT evaluation memory leak + use after free
      nfit: cleanup acpi_nfit_init calling convention
      libnvdimm: move ->module to struct nvdimm_bus_descriptor
      nfit, tools/testing/nvdimm/: unify shutdown paths
      Revert "KVM: x86: add pcommit support"
      x86/insn: remove pcommit
      libnvdimm: register nvdimm_bus devices with an nd_bus driver
      nfit: move to nfit/ sub-directory
      Merge branch 'for-4.8/libnvdimm' into libnvdimm-for-next

Johannes Thumshirn (1):
      libnvdimm: initialize struct blk_integrity with 0

Lee, Chun-Yi (1):
      acpi, nfit: treat virtual ramdisk SPA as pmem region

Markus Elfring (1):
      libnvdimm-btt: Delete an unnecessary check before the function call "__nd_device_register"

Sajjan, Vikas C (2):
      nfit: use devm_add_action_or_reset()
      dax: use devm_add_action_or_reset()

Vishal Verma (4):
      libnvdimm, btt: update the usage section in Documentation
      pmem: clarify a debug print in pmem_clear_poison
      nfit, libnvdimm: allow an ARS scrub to be triggered on demand
      nfit: do an ARS scrub on hitting a latent media error

stuart hayes (1):
      nfit: add Microsoft NVDIMM DSM command set to white list

 Documentation/filesystems/Locking                  |   2 +-
 Documentation/nvdimm/btt.txt                       |  28 +-
 arch/powerpc/sysdev/axonram.c                      |   4 +-
 arch/x86/include/asm/cpufeatures.h                 |   1 -
 arch/x86/include/asm/pmem.h                        |  77 +--
 arch/x86/include/asm/special_insns.h               |  46 --
 arch/x86/include/asm/vmx.h                         |   1 -
 arch/x86/include/uapi/asm/vmx.h                    |   4 +-
 arch/x86/kvm/cpuid.c                               |   2 +-
 arch/x86/kvm/cpuid.h                               |   8 -
 arch/x86/kvm/vmx.c                                 |  32 +-
 arch/x86/lib/x86-opcode-map.txt                    |   2 +-
 drivers/acpi/Kconfig                               |  27 +-
 drivers/acpi/Makefile                              |   2 +-
 drivers/acpi/nfit/Kconfig                          |  26 +
 drivers/acpi/nfit/Makefile                         |   3 +
 drivers/acpi/{nfit.c => nfit/core.c}               | 647 ++++++++++++---------
 drivers/acpi/nfit/mce.c                            |  89 +++
 drivers/acpi/{ => nfit}/nfit.h                     |  60 +-
 drivers/block/brd.c                                |   4 +-
 drivers/dax/dax.c                                  |   6 +-
 drivers/dax/pmem.c                                 |  14 +-
 drivers/nvdimm/Kconfig                             |   2 +-
 drivers/nvdimm/blk.c                               |  11 +-
 drivers/nvdimm/btt_devs.c                          |   3 +-
 drivers/nvdimm/bus.c                               | 212 ++++++-
 drivers/nvdimm/claim.c                             |   7 +-
 drivers/nvdimm/core.c                              | 253 ++++----
 drivers/nvdimm/dimm_devs.c                         |   5 +-
 drivers/nvdimm/e820.c                              |   1 +
 drivers/nvdimm/nd-core.h                           |   5 +-
 drivers/nvdimm/nd.h                                |  10 +-
 drivers/nvdimm/pmem.c                              |  85 +--
 drivers/nvdimm/pmem.h                              |  24 +
 drivers/nvdimm/region.c                            |  19 +-
 drivers/nvdimm/region_devs.c                       | 154 ++++-
 drivers/s390/block/dcssblk.c                       |   6 +-
 fs/dax.c                                           |  13 +-
 include/linux/blkdev.h                             |   6 +-
 include/linux/compiler.h                           |   2 -
 include/linux/libnvdimm.h                          |  24 +-
 include/linux/nd.h                                 |   3 +-
 include/linux/pfn_t.h                              |   5 +-
 include/linux/pmem.h                               | 117 +---
 include/uapi/linux/ndctl.h                         |   1 +
 kernel/memremap.c                                  |   6 -
 scripts/checkpatch.pl                              |   1 -
 tools/objtool/arch/x86/insn/x86-opcode-map.txt     |   2 +-
 tools/perf/arch/x86/tests/insn-x86-dat-32.c        |   2 -
 tools/perf/arch/x86/tests/insn-x86-dat-64.c        |   2 -
 tools/perf/arch/x86/tests/insn-x86-dat-src.c       |   4 -
 .../perf/util/intel-pt-decoder/x86-opcode-map.txt  |   2 +-
 tools/testing/nvdimm/Kbuild                        |  10 +-
 tools/testing/nvdimm/config_check.c                |   1 +
 tools/testing/nvdimm/pmem-dax.c                    |  54 ++
 tools/testing/nvdimm/test/Kbuild                   |   2 +-
 tools/testing/nvdimm/test/iomap.c                  |  38 +-
 tools/testing/nvdimm/test/nfit.c                   | 199 +++----
 tools/testing/nvdimm/test/nfit_test.h              |   2 +
 59 files changed, 1369 insertions(+), 1009 deletions(-)
 create mode 100644 drivers/acpi/nfit/Kconfig
 create mode 100644 drivers/acpi/nfit/Makefile
 rename drivers/acpi/{nfit.c => nfit/core.c} (87%)
 create mode 100644 drivers/acpi/nfit/mce.c
 rename drivers/acpi/{ => nfit}/nfit.h (82%)
 create mode 100644 drivers/nvdimm/pmem.h
 create mode 100644 tools/testing/nvdimm/pmem-dax.c

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ