All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] libnvdimm for 4.5
@ 2016-01-13 21:05 ` Williams, Dan J
  0 siblings, 0 replies; 2+ messages in thread
From: Williams, Dan J @ 2016-01-13 21:05 UTC (permalink / raw)
  To: torvalds, akpm; +Cc: linux-kernel, linux-nvdimm, linux-acpi

Hi Linus, please pull from...

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

...to receive the libnvdimm update for 4.5.

The bulk of this has appeared in -next and independently received a
 build success notification from the kbuild robot.  The 'for-4.5/block-
dax' topic branch was rebased over the weekend to drop the "block
device end-of-life" rework that Al would like to see re-implemented
with a notifier, and to address bug reports against the badblocks
integration.

There is pending feedback against "libnvdimm: Add a poison list and
export badblocks" received last week.  Linda identified some localized
fixups that we will handle incrementally.

This update has a minor conflict with the dax updates pending in -mm,
but only for both sides wanting to add a new header-file-include to
drivers/nvdimm/pmem.c.

---

The following changes since commit 9f9499ae8e6415cefc4fe0a96ad0e27864353c89:

  Linux 4.4-rc5 (2015-12-13 17:42:58 -0800)

are available in the git repository at:

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

for you to fetch changes up to 8b63b6bfc1a551acf154061699028c7032d7890c:

  Merge branch 'for-4.5/block-dax' into for-4.5/libnvdimm (2016-01-10 07:53:55 -0800)

----------------------------------------------------------------
libnvdimm for 4.5

1/ Media error handling: The 'badblocks' implementation that originated
   in md-raid is up-levelled to a generic capability of a block device.
   This initial implementation is limited to being consulted in the pmem
   block-i/o path.  Later, 'badblocks' will be consulted when creating
   dax mappings.

2/ Raw block device dax: For virtualization and other cases that want
   large contiguous mappings of persistent memory, add the capability to
   dax-mmap a block device directly.

3/ Increased /dev/mem restrictions: Add an option to treat all io-memory
   as IORESOURCE_EXCLUSIVE, i.e. disable /dev/mem access while a driver is
   actively using an address range.  This behavior is controlled via the
   new CONFIG_IO_STRICT_DEVMEM option and can be overridden by the
   existing "iomem=relaxed" kernel command line option.

4/ Miscellaneous fixes include a 'pfn'-device huge page alignment fix,
   block device shutdown crash fix, and other small libnvdimm fixes.

----------------------------------------------------------------
Dan Williams (27):
      libnvdimm, pfn: kill ND_PFN_ALIGN
      libnvdimm, pfn: clean up pfn create parameters
      libnvdimm, pfn: add 'align' attribute, default to HPAGE_SIZE
      libnvdimm, pfn: add parent uuid validation
      libnvdimm, pfn: fix pfn seed creation
      libnvdimm, pfn: enable pfn sysfs interface unit testing
      libnvdimm, pfn: fix nd_pfn_validate() return value handling
      tools/testing/libnvdimm: cleanup mock resource lookup
      libnvdimm, pfn: move 'memory mode' indication to sysfs
      libnvdimm: fix namespace object confusion in is_uuid_busy()
      arch: consolidate CONFIG_STRICT_DEVM in lib/Kconfig.debug
      restrict /dev/mem to idle io memory ranges
      block: introduce bdev_file_inode()
      block: enable dax for raw block devices
      block: fix del_gendisk() vs blkdev_ioctl crash
      nfit_test: Enable DSMs for all test NFITs
      libnvdimm, pmem: move definition of nvdimm_namespace_add_poison to nd.h
      badblocks: rename badblocks_free to badblocks_exit
      block: clarify badblocks lifetime
      block, badblocks: introduce devm_init_badblocks
      libnvdimm: don't fail init for full badblocks list
      libnvdimm: convert to statically allocated badblocks
      pmem: fail io-requests to known bad blocks
      pmem, dax: disable dax in the presence of bad blocks
      libnvdimm, pmem: nvdimm_read_bytes() badblocks support
      block: kill disk_{check|set|clear|alloc}_badblocks
      Merge branch 'for-4.5/block-dax' into for-4.5/libnvdimm

Dmitry Krivenok (2):
      nvdimm: improve diagnosibility of namespaces
      nvdimm: do not show pfn_seed for non pmem regions

Vishal Verma (4):
      badblocks: Add core badblock management code
      block: Add badblock management for gendisks
      md: convert to use the generic badblocks code
      libnvdimm: Add a poison list and export badblocks

 arch/arm/Kconfig                  |   1 +
 arch/arm/Kconfig.debug            |  14 -
 arch/arm64/Kconfig                |   1 +
 arch/arm64/Kconfig.debug          |  14 -
 arch/frv/Kconfig                  |   1 +
 arch/m32r/Kconfig                 |   1 +
 arch/powerpc/Kconfig              |   1 +
 arch/powerpc/Kconfig.debug        |  12 -
 arch/s390/Kconfig                 |   1 +
 arch/s390/Kconfig.debug           |  12 -
 arch/tile/Kconfig                 |   4 +-
 arch/unicore32/Kconfig            |   1 +
 arch/unicore32/Kconfig.debug      |  14 -
 arch/x86/Kconfig                  |   1 +
 arch/x86/Kconfig.debug            |  17 --
 block/Makefile                    |   2 +-
 block/badblocks.c                 | 585 ++++++++++++++++++++++++++++++++++++++
 block/genhd.c                     |  30 +-
 block/ioctl.c                     |  71 +++++
 drivers/acpi/nfit.c               | 203 +++++++++++++
 drivers/md/md.c                   | 516 ++-------------------------------
 drivers/md/md.h                   |  40 +--
 drivers/nvdimm/core.c             | 169 +++++++++++
 drivers/nvdimm/namespace_devs.c   | 132 +++++++--
 drivers/nvdimm/nd-core.h          |   2 +
 drivers/nvdimm/nd.h               |  16 +-
 drivers/nvdimm/pfn_devs.c         |  93 ++++--
 drivers/nvdimm/pmem.c             |  90 ++++--
 drivers/nvdimm/region_devs.c      |  66 +----
 fs/block_dev.c                    | 122 +++++++-
 include/linux/badblocks.h         |  65 +++++
 include/linux/fs.h                |  11 +
 include/linux/genhd.h             |   2 +
 include/linux/libnvdimm.h         |   1 +
 include/uapi/linux/fs.h           |   2 +
 kernel/resource.c                 |  11 +-
 lib/Kconfig.debug                 |  39 +++
 tools/testing/nvdimm/Kbuild       |   2 +
 tools/testing/nvdimm/test/iomap.c |  93 +++---
 tools/testing/nvdimm/test/nfit.c  |  11 +
 40 files changed, 1673 insertions(+), 796 deletions(-)
 create mode 100644 block/badblocks.c
 create mode 100644 include/linux/badblocks.h

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [GIT PULL] libnvdimm for 4.5
@ 2016-01-13 21:05 ` Williams, Dan J
  0 siblings, 0 replies; 2+ messages in thread
From: Williams, Dan J @ 2016-01-13 21:05 UTC (permalink / raw)
  To: torvalds, akpm; +Cc: linux-kernel, linux-nvdimm@lists.01.org, linux-acpi

Hi Linus, please pull from...

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

...to receive the libnvdimm update for 4.5.

The bulk of this has appeared in -next and independently received a
 build success notification from the kbuild robot.  The 'for-4.5/block-
dax' topic branch was rebased over the weekend to drop the "block
device end-of-life" rework that Al would like to see re-implemented
with a notifier, and to address bug reports against the badblocks
integration.

There is pending feedback against "libnvdimm: Add a poison list and
export badblocks" received last week.  Linda identified some localized
fixups that we will handle incrementally.

This update has a minor conflict with the dax updates pending in -mm,
but only for both sides wanting to add a new header-file-include to
drivers/nvdimm/pmem.c.

---

The following changes since commit 9f9499ae8e6415cefc4fe0a96ad0e27864353c89:

  Linux 4.4-rc5 (2015-12-13 17:42:58 -0800)

are available in the git repository at:

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

for you to fetch changes up to 8b63b6bfc1a551acf154061699028c7032d7890c:

  Merge branch 'for-4.5/block-dax' into for-4.5/libnvdimm (2016-01-10 07:53:55 -0800)

----------------------------------------------------------------
libnvdimm for 4.5

1/ Media error handling: The 'badblocks' implementation that originated
   in md-raid is up-levelled to a generic capability of a block device.
   This initial implementation is limited to being consulted in the pmem
   block-i/o path.  Later, 'badblocks' will be consulted when creating
   dax mappings.

2/ Raw block device dax: For virtualization and other cases that want
   large contiguous mappings of persistent memory, add the capability to
   dax-mmap a block device directly.

3/ Increased /dev/mem restrictions: Add an option to treat all io-memory
   as IORESOURCE_EXCLUSIVE, i.e. disable /dev/mem access while a driver is
   actively using an address range.  This behavior is controlled via the
   new CONFIG_IO_STRICT_DEVMEM option and can be overridden by the
   existing "iomem=relaxed" kernel command line option.

4/ Miscellaneous fixes include a 'pfn'-device huge page alignment fix,
   block device shutdown crash fix, and other small libnvdimm fixes.

----------------------------------------------------------------
Dan Williams (27):
      libnvdimm, pfn: kill ND_PFN_ALIGN
      libnvdimm, pfn: clean up pfn create parameters
      libnvdimm, pfn: add 'align' attribute, default to HPAGE_SIZE
      libnvdimm, pfn: add parent uuid validation
      libnvdimm, pfn: fix pfn seed creation
      libnvdimm, pfn: enable pfn sysfs interface unit testing
      libnvdimm, pfn: fix nd_pfn_validate() return value handling
      tools/testing/libnvdimm: cleanup mock resource lookup
      libnvdimm, pfn: move 'memory mode' indication to sysfs
      libnvdimm: fix namespace object confusion in is_uuid_busy()
      arch: consolidate CONFIG_STRICT_DEVM in lib/Kconfig.debug
      restrict /dev/mem to idle io memory ranges
      block: introduce bdev_file_inode()
      block: enable dax for raw block devices
      block: fix del_gendisk() vs blkdev_ioctl crash
      nfit_test: Enable DSMs for all test NFITs
      libnvdimm, pmem: move definition of nvdimm_namespace_add_poison to nd.h
      badblocks: rename badblocks_free to badblocks_exit
      block: clarify badblocks lifetime
      block, badblocks: introduce devm_init_badblocks
      libnvdimm: don't fail init for full badblocks list
      libnvdimm: convert to statically allocated badblocks
      pmem: fail io-requests to known bad blocks
      pmem, dax: disable dax in the presence of bad blocks
      libnvdimm, pmem: nvdimm_read_bytes() badblocks support
      block: kill disk_{check|set|clear|alloc}_badblocks
      Merge branch 'for-4.5/block-dax' into for-4.5/libnvdimm

Dmitry Krivenok (2):
      nvdimm: improve diagnosibility of namespaces
      nvdimm: do not show pfn_seed for non pmem regions

Vishal Verma (4):
      badblocks: Add core badblock management code
      block: Add badblock management for gendisks
      md: convert to use the generic badblocks code
      libnvdimm: Add a poison list and export badblocks

 arch/arm/Kconfig                  |   1 +
 arch/arm/Kconfig.debug            |  14 -
 arch/arm64/Kconfig                |   1 +
 arch/arm64/Kconfig.debug          |  14 -
 arch/frv/Kconfig                  |   1 +
 arch/m32r/Kconfig                 |   1 +
 arch/powerpc/Kconfig              |   1 +
 arch/powerpc/Kconfig.debug        |  12 -
 arch/s390/Kconfig                 |   1 +
 arch/s390/Kconfig.debug           |  12 -
 arch/tile/Kconfig                 |   4 +-
 arch/unicore32/Kconfig            |   1 +
 arch/unicore32/Kconfig.debug      |  14 -
 arch/x86/Kconfig                  |   1 +
 arch/x86/Kconfig.debug            |  17 --
 block/Makefile                    |   2 +-
 block/badblocks.c                 | 585 ++++++++++++++++++++++++++++++++++++++
 block/genhd.c                     |  30 +-
 block/ioctl.c                     |  71 +++++
 drivers/acpi/nfit.c               | 203 +++++++++++++
 drivers/md/md.c                   | 516 ++-------------------------------
 drivers/md/md.h                   |  40 +--
 drivers/nvdimm/core.c             | 169 +++++++++++
 drivers/nvdimm/namespace_devs.c   | 132 +++++++--
 drivers/nvdimm/nd-core.h          |   2 +
 drivers/nvdimm/nd.h               |  16 +-
 drivers/nvdimm/pfn_devs.c         |  93 ++++--
 drivers/nvdimm/pmem.c             |  90 ++++--
 drivers/nvdimm/region_devs.c      |  66 +----
 fs/block_dev.c                    | 122 +++++++-
 include/linux/badblocks.h         |  65 +++++
 include/linux/fs.h                |  11 +
 include/linux/genhd.h             |   2 +
 include/linux/libnvdimm.h         |   1 +
 include/uapi/linux/fs.h           |   2 +
 kernel/resource.c                 |  11 +-
 lib/Kconfig.debug                 |  39 +++
 tools/testing/nvdimm/Kbuild       |   2 +
 tools/testing/nvdimm/test/iomap.c |  93 +++---
 tools/testing/nvdimm/test/nfit.c  |  11 +
 40 files changed, 1673 insertions(+), 796 deletions(-)
 create mode 100644 block/badblocks.c
 create mode 100644 include/linux/badblocks.h

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-01-13 21:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-13 21:05 [GIT PULL] libnvdimm for 4.5 Williams, Dan J
2016-01-13 21:05 ` Williams, Dan J

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.