All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/15] libnvdimm: ->rw_bytes(), BLK-mode, unit tests, and misc features
@ 2015-06-17 23:54 ` Dan Williams
  0 siblings, 0 replies; 164+ messages in thread
From: Dan Williams @ 2015-06-17 23:54 UTC (permalink / raw)
  To: axboe, linux-nvdimm
  Cc: boaz, toshi.kani, Martin K. Petersen, Vishal Verma, Neil Brown,
	Greg KH, Rafael J. Wysocki, Dave Chinner, Robert Moore,
	Andy Lutomirski, Jens Axboe, linux-acpi, Jeff Moyer,
	Matthew Wilcox, H. Peter Anvin, linux-fsdevel, Ross Zwisler, hch,
	mingo, linux-kernel, Lv Zheng

This patchset takes the position that a new block_device_operations op
is needed for nvdimm devices.  Jens, see "[PATCH 01/15] block: introduce
an ->rw_bytes() block device operation", it gates the rest of the series
moving forward.

Aside from adding a compile-time check to tools/testing/nvdimm/Kbuild
for validating all libnvdimm objects are built as modules, patches 2 to
6 are otherwise unchanged from the v6 libnvdimm posting [1].  The
remaining patches are feature additions and other cleanups that were
being held back while the base patchset was polished.

Patch 5 has an updated changelog speaking to the potential maintenance
burden of carrying tools/testing/nvdimm/ in-tree.  The benefits still
outweigh the risks in my opinion.

It should be noted that "[PATCH 14/15] libnvdimm: support read-only btt
backing devices" was developed in direct repsonse to working through the
implementation of unit tests for "[PATCH 15/15] libnvdimm, nfit: handle
acpi_nfit_memory_map flags" and its new "read-only by default" policy.
See the updates to the libndctl unit tests posted on the
linux-nvdimm@01.org mailing list.

[PATCH 01/15] block: introduce an ->rw_bytes() block device operation
[PATCH 02/15] libnvdimm: infrastructure for btt devices
[PATCH 03/15] nd_btt: atomic sector updates
[PATCH 04/15] libnvdimm, nfit, nd_blk: driver for BLK-mode access persistent memory
[PATCH 05/15] tools/testing/nvdimm: libnvdimm unit test infrastructure
[PATCH 06/15] libnvdimm: Non-Volatile Devices
[PATCH 07/15] fs/block_dev.c: skip rw_page if bdev has integrity
[PATCH 08/15] libnvdimm, btt: add support for blk integrity
[PATCH 09/15] libnvdimm, blk: add support for blk integrity
[PATCH 10/15] libnvdimm: fix up max_hw_sectors
[PATCH 11/15] libnvdimm: pmem, blk, and btt make_request cleanups
[PATCH 12/15] libnvdimm: enable iostat
[PATCH 13/15] libnvdimm: flag libnvdimm block devices as non-rotational
[PATCH 14/15] libnvdimm: support read-only btt backing devices
[PATCH 15/15] libnvdimm, nfit: handle acpi_nfit_memory_map flags

[1]: https://lists.01.org/pipermail/linux-nvdimm/2015-June/001166.html

---

Dan Williams (10):
      block: introduce an ->rw_bytes() block device operation
      libnvdimm: infrastructure for btt devices
      tools/testing/nvdimm: libnvdimm unit test infrastructure
      libnvdimm: Non-Volatile Devices
      libnvdimm: fix up max_hw_sectors
      libnvdimm: pmem, blk, and btt make_request cleanups
      libnvdimm: enable iostat
      libnvdimm: flag libnvdimm block devices as non-rotational
      libnvdimm: support read-only btt backing devices
      libnvdimm, nfit: handle acpi_nfit_memory_map flags

Ross Zwisler (1):
      libnvdimm, nfit, nd_blk: driver for BLK-mode access persistent memory

Vishal Verma (4):
      nd_btt: atomic sector updates
      fs/block_dev.c: skip rw_page if bdev has integrity
      libnvdimm, btt: add support for blk integrity
      libnvdimm, blk: add support for blk integrity


 Documentation/nvdimm/btt.txt          |  273 ++++++
 Documentation/nvdimm/nvdimm.txt       |  805 +++++++++++++++++
 MAINTAINERS                           |   39 +
 drivers/acpi/nfit.c                   |  491 ++++++++++
 drivers/acpi/nfit.h                   |   58 +
 drivers/nvdimm/Kconfig                |   54 +
 drivers/nvdimm/Makefile               |    7 
 drivers/nvdimm/blk.c                  |  368 ++++++++
 drivers/nvdimm/btt.c                  | 1569 +++++++++++++++++++++++++++++++++
 drivers/nvdimm/btt.h                  |  185 ++++
 drivers/nvdimm/btt_devs.c             |  473 ++++++++++
 drivers/nvdimm/bus.c                  |  176 ++++
 drivers/nvdimm/core.c                 |   99 ++
 drivers/nvdimm/dimm_devs.c            |    9 
 drivers/nvdimm/namespace_devs.c       |   63 +
 drivers/nvdimm/nd-core.h              |   48 +
 drivers/nvdimm/nd.h                   |   61 +
 drivers/nvdimm/pmem.c                 |   58 +
 drivers/nvdimm/region.c               |   97 ++
 drivers/nvdimm/region_devs.c          |  106 ++
 fs/block_dev.c                        |    4 
 include/linux/blkdev.h                |   44 +
 include/linux/libnvdimm.h             |   30 +
 include/uapi/linux/ndctl.h            |    2 
 tools/testing/nvdimm/Kbuild           |   40 +
 tools/testing/nvdimm/Makefile         |    7 
 tools/testing/nvdimm/config_check.c   |   15 
 tools/testing/nvdimm/test/Kbuild      |    8 
 tools/testing/nvdimm/test/iomap.c     |  151 +++
 tools/testing/nvdimm/test/nfit.c      | 1115 +++++++++++++++++++++++
 tools/testing/nvdimm/test/nfit_test.h |   29 +
 31 files changed, 6422 insertions(+), 62 deletions(-)
 create mode 100644 Documentation/nvdimm/btt.txt
 create mode 100644 Documentation/nvdimm/nvdimm.txt
 create mode 100644 drivers/nvdimm/blk.c
 create mode 100644 drivers/nvdimm/btt.c
 create mode 100644 drivers/nvdimm/btt.h
 create mode 100644 drivers/nvdimm/btt_devs.c
 create mode 100644 tools/testing/nvdimm/Kbuild
 create mode 100644 tools/testing/nvdimm/Makefile
 create mode 100644 tools/testing/nvdimm/config_check.c
 create mode 100644 tools/testing/nvdimm/test/Kbuild
 create mode 100644 tools/testing/nvdimm/test/iomap.c
 create mode 100644 tools/testing/nvdimm/test/nfit.c
 create mode 100644 tools/testing/nvdimm/test/nfit_test.h

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

end of thread, other threads:[~2015-06-24 12:12 UTC | newest]

Thread overview: 164+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-17 23:54 [PATCH 00/15] libnvdimm: ->rw_bytes(), BLK-mode, unit tests, and misc features Dan Williams
2015-06-17 23:54 ` Dan Williams
2015-06-17 23:54 ` [PATCH 01/15] block: introduce an ->rw_bytes() block device operation Dan Williams
2015-06-17 23:54   ` Dan Williams
2015-06-18 19:25   ` Dan Williams
2015-06-18 19:25     ` Dan Williams
2015-06-17 23:54 ` [PATCH 02/15] libnvdimm: infrastructure for btt devices Dan Williams
2015-06-17 23:54   ` Dan Williams
2015-06-22 16:34   ` Christoph Hellwig
2015-06-22 16:34     ` Christoph Hellwig
2015-06-22 16:48     ` Dan Williams
2015-06-22 16:48       ` Dan Williams
2015-06-22 16:48       ` Christoph Hellwig
2015-06-22 16:48         ` Christoph Hellwig
2015-06-22 16:48         ` Christoph Hellwig
2015-06-22 18:32         ` Jeff Moyer
2015-06-22 18:32           ` Jeff Moyer
2015-06-22 18:32           ` Jeff Moyer
2015-06-22 19:02           ` Dan Williams
2015-06-22 19:02             ` Dan Williams
2015-06-22 19:02             ` Dan Williams
2015-06-22 19:09             ` Jeff Moyer
2015-06-22 19:09               ` Jeff Moyer
2015-06-22 19:09               ` Jeff Moyer
2015-06-23 10:20               ` Christoph Hellwig
2015-06-23 10:19             ` Christoph Hellwig
2015-06-23 15:19               ` Dan Williams
2015-06-23 20:33                 ` Dan Williams
2015-06-24 12:10                 ` Christoph Hellwig
2015-06-23 10:10           ` Christoph Hellwig
2015-06-17 23:55 ` [PATCH 03/15] nd_btt: atomic sector updates Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-21 10:03   ` Christoph Hellwig
2015-06-21 10:03     ` Christoph Hellwig
2015-06-21 10:03     ` Christoph Hellwig
2015-06-21 16:31     ` Dan Williams
2015-06-21 16:31       ` Dan Williams
2015-06-17 23:55 ` [PATCH 04/15] libnvdimm, nfit, nd_blk: driver for BLK-mode access persistent memory Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-21 10:05   ` Christoph Hellwig
2015-06-21 10:05     ` Christoph Hellwig
2015-06-21 10:05     ` Christoph Hellwig
2015-06-21 13:31     ` Dan Williams
2015-06-21 13:31       ` Dan Williams
2015-06-21 13:56       ` Christoph Hellwig
2015-06-21 13:56         ` Christoph Hellwig
2015-06-21 13:56         ` Christoph Hellwig
2015-06-21 14:39         ` Dan Williams
2015-06-21 14:39           ` Dan Williams
2015-06-21 14:39           ` Dan Williams
2015-06-17 23:55 ` [PATCH 05/15] tools/testing/nvdimm: libnvdimm unit test infrastructure Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-17 23:55 ` [PATCH 06/15] libnvdimm: Non-Volatile Devices Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-17 23:55 ` [PATCH 07/15] fs/block_dev.c: skip rw_page if bdev has integrity Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-17 23:55 ` [PATCH 08/15] libnvdimm, btt: add support for blk integrity Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-17 23:55 ` [PATCH 09/15] libnvdimm, blk: " Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-17 23:55 ` [PATCH 10/15] libnvdimm: fix up max_hw_sectors Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-21 10:08   ` Christoph Hellwig
2015-06-21 10:08     ` Christoph Hellwig
2015-06-21 10:08     ` Christoph Hellwig
2015-06-21 13:28     ` Dan Williams
2015-06-21 13:28       ` Dan Williams
2015-06-17 23:55 ` [PATCH 11/15] libnvdimm: pmem, blk, and btt make_request cleanups Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-21 10:10   ` Christoph Hellwig
2015-06-21 10:10     ` Christoph Hellwig
2015-06-21 13:26     ` Dan Williams
2015-06-21 13:26       ` Dan Williams
2015-06-21 13:26       ` Dan Williams
2015-06-17 23:55 ` [PATCH 12/15] libnvdimm: enable iostat Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-19  8:34   ` Christoph Hellwig
2015-06-19  8:34     ` Christoph Hellwig
2015-06-19  9:02     ` Dan Williams
2015-06-19  9:02       ` Dan Williams
2015-06-21 10:11       ` Christoph Hellwig
2015-06-21 10:11         ` Christoph Hellwig
2015-06-21 13:22         ` Dan Williams
2015-06-21 13:22           ` Dan Williams
2015-06-21 13:22           ` Dan Williams
2015-06-17 23:55 ` [PATCH 13/15] libnvdimm: flag libnvdimm block devices as non-rotational Dan Williams
2015-06-17 23:55   ` Dan Williams
2015-06-17 23:56 ` [PATCH 14/15] libnvdimm: support read-only btt backing devices Dan Williams
2015-06-17 23:56   ` Dan Williams
2015-06-18 22:55   ` Vishal Verma
2015-06-18 22:55     ` Vishal Verma
2015-06-21 10:13   ` Christoph Hellwig
2015-06-21 10:13     ` Christoph Hellwig
2015-06-21 13:21     ` Dan Williams
2015-06-21 13:21       ` Dan Williams
2015-06-21 13:21       ` Dan Williams
2015-06-21 13:54       ` Christoph Hellwig
2015-06-21 13:54         ` Christoph Hellwig
2015-06-21 13:54         ` Christoph Hellwig
2015-06-21 15:11         ` Dan Williams
2015-06-21 15:11           ` Dan Williams
2015-06-22  6:30           ` Christoph Hellwig
2015-06-22  6:30             ` Christoph Hellwig
2015-06-22  6:30             ` Christoph Hellwig
2015-06-22  7:17             ` Dan Williams
2015-06-22  7:17               ` Dan Williams
2015-06-22  7:17               ` Dan Williams
2015-06-22  7:28               ` Christoph Hellwig
2015-06-22  7:28                 ` Christoph Hellwig
2015-06-22  7:28                 ` Christoph Hellwig
2015-06-22  7:39                 ` Dan Williams
2015-06-22  7:39                   ` Dan Williams
2015-06-22  7:39                   ` Dan Williams
2015-06-22 15:02                   ` Jeff Moyer
2015-06-22 15:02                     ` Jeff Moyer
2015-06-22 15:02                     ` Jeff Moyer
2015-06-22 15:41                     ` Christoph Hellwig
2015-06-22 15:41                       ` Christoph Hellwig
2015-06-22 15:41                       ` Christoph Hellwig
2015-06-22 16:00                       ` Jeff Moyer
2015-06-22 16:00                         ` Jeff Moyer
2015-06-22 16:00                         ` Jeff Moyer
2015-06-22 16:32                         ` Christoph Hellwig
2015-06-22 16:32                           ` Christoph Hellwig
2015-06-22 16:32                           ` Christoph Hellwig
2015-06-22 16:42                           ` Jeff Moyer
2015-06-22 16:42                             ` Jeff Moyer
2015-06-22 16:42                             ` Jeff Moyer
2015-06-22 16:48                             ` Christoph Hellwig
2015-06-22 16:48                               ` Christoph Hellwig
2015-06-22 16:48                               ` Christoph Hellwig
2015-06-22 18:48                               ` Jeff Moyer
2015-06-22 18:48                                 ` Jeff Moyer
2015-06-22 18:48                                 ` Jeff Moyer
2015-06-22 19:04                                 ` Dan Williams
2015-06-22 19:04                                   ` Dan Williams
2015-06-22 19:11                                   ` Jeff Moyer
2015-06-22 19:11                                     ` Jeff Moyer
2015-06-22 19:11                                     ` Jeff Moyer
2015-06-23 10:10                                 ` Christoph Hellwig
2015-06-23 10:10                                   ` Christoph Hellwig
2015-06-22 15:40                   ` Christoph Hellwig
2015-06-22 15:40                     ` Christoph Hellwig
2015-06-22 15:40                     ` Christoph Hellwig
2015-06-22 16:36                     ` Dan Williams
2015-06-22 16:36                       ` Dan Williams
2015-06-22 16:36                       ` Dan Williams
2015-06-22 16:45                       ` Christoph Hellwig
2015-06-22 16:45                         ` Christoph Hellwig
2015-06-22 16:45                         ` Christoph Hellwig
2015-06-22 16:54                         ` Dan Williams
2015-06-22 16:54                           ` Dan Williams
2015-06-22 16:54                           ` Dan Williams
2015-06-22 16:57                           ` Christoph Hellwig
2015-06-22 16:57                             ` Christoph Hellwig
2015-06-22 16:59                             ` Dan Williams
2015-06-22 16:59                               ` Dan Williams
2015-06-22 16:59                               ` Dan Williams
2015-06-23 19:30             ` Matthew Wilcox
2015-06-23 19:30               ` Matthew Wilcox
2015-06-24 12:11               ` Christoph Hellwig
2015-06-24 12:11                 ` Christoph Hellwig
2015-06-17 23:56 ` [PATCH 15/15] libnvdimm, nfit: handle acpi_nfit_memory_map flags Dan Williams
2015-06-17 23:56   ` Dan Williams

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.