[<prev] [next>] [day] [month] [year] [list]
Message-ID: <1471028948.2946.21.camel@intel.com>
Date: Fri, 12 Aug 2016 19:09:07 +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 fixes for 4.8-rc2
Hi Linus, please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-fixes
...to receive:
- Fix for the nd_blk (NVDIMM Block Window Aperture) driver. A spec
clarification requires the driver to mask off reserved bits in status
register. This is tagged for -stable back to the v4.2 kernel.
- Fix for a kernel crash in the nvdimm unit tests when module loading
is interrupted with SIGTERM. Tagged for -stable since validation
efforts external to Intel use the unit tests for qualifying backports.
- Add a new 'size' sysfs attribute for the BTT (NVDIMM Block
Translation Table) driver to make it symmetric with the other namespace
personality drivers (PFN and DAX) that provide a size attribute for
indicating how much namespace capacity is lost to metadata.
The BTT change arrived at the start of the merge window and has
appeared in a -next release. It can technically wait for 4.9, but it
is small, fixes asymmetry in the libnvdimm-sysfs interface, and
something I would have squeezed into the v4.8 pull request had it
arrived a few days earlier.
---
The following changes since commit 29b4817d4018df78086157ea3a55c1d9424a7cfc:
Linux 4.8-rc1 (2016-08-07 18:18:00 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-fixes
for you to fetch changes up to d8d378fa1a0c98ecb50ca52c9bf3bc14e25aa2d2:
tools/testing/nvdimm: fix SIGTERM vs hotplug crash (2016-08-10 15:59:09 -0700)
----------------------------------------------------------------
Dan Williams (1):
tools/testing/nvdimm: fix SIGTERM vs hotplug crash
Ross Zwisler (1):
libnvdimm, nd_blk: mask off reserved status bits
Vishal Verma (1):
nvdimm, btt: add a size attribute for BTTs
drivers/acpi/nfit/core.c | 3 ++-
drivers/nvdimm/btt.c | 1 +
drivers/nvdimm/btt_devs.c | 20 ++++++++++++++++++++
drivers/nvdimm/nd.h | 1 +
tools/testing/nvdimm/test/nfit.c | 2 ++
5 files changed, 26 insertions(+), 1 deletion(-)
commit 68202c9f0ad6e16ee806fbadbc5838d55fe5aa5c
Author: Ross Zwisler <ross.zwisler@...ux.intel.com>
Date: Fri Jul 29 14:59:12 2016 -0600
libnvdimm, nd_blk: mask off reserved status bits
The "NVDIMM Block Window Driver Writer's Guide":
http://pmem.io/documents/NVDIMM_DriverWritersGuide-July-2016.pdf
...defines the layout of the block window status register. For the July
2016 version of the spec linked to above, this happens in Figure 4 on
page 26.
The only bits defined in this spec are bits 31, 5, 4, 2, 1 and 0. The
rest of the bits in the status register are reserved, and there is a
warning following the diagram that says:
Note: The driver cannot assume the value of the RESERVED bits in the
status register are zero. These reserved bits need to be masked off, and
the driver must avoid checking the state of those bits.
This change ensures that for hardware implementations that set these
reserved bits in the status register, the driver won't incorrectly fail the
block I/Os.
Cc: <stable@...r.kernel.org> #v4.2+
Reviewed-by: Lee, Chun-Yi <jlee@...e.com>
Signed-off-by: Ross Zwisler <ross.zwisler@...ux.intel.com>
Signed-off-by: Dan Williams <dan.j.williams@...el.com>
commit abe8b4e3cef88b8202641d63f5ad58141b970b0f
Author: Vishal Verma <vishal.l.verma@...el.com>
Date: Wed Jul 27 16:38:59 2016 -0600
nvdimm, btt: add a size attribute for BTTs
To be consistent with other namespaces, expose a 'size' attribute for
BTT devices also.
Cc: Dan Williams <dan.j.williams@...el.com>
Reported-by: Linda Knippers <linda.knippers@....com>
Signed-off-by: Vishal Verma <vishal.l.verma@...el.com>
Signed-off-by: Dan Williams <dan.j.williams@...el.com>
commit d8d378fa1a0c98ecb50ca52c9bf3bc14e25aa2d2
Author: Dan Williams <dan.j.williams@...el.com>
Date: Wed Aug 10 15:59:09 2016 -0700
tools/testing/nvdimm: fix SIGTERM vs hotplug crash
The unit tests crash when hotplug races the previous probe. This race
requires that the loading of the nfit_test module be terminated with
SIGTERM, and the module to be unloaded while the ars scan is still
running.
In contrast to the normal nfit driver, the unit test calls
acpi_nfit_init() twice to simulate hotplug, whereas the nominal case
goes through the acpi_nfit_notify() event handler. The
acpi_nfit_notify() path is careful to flush the previous region
registration before servicing the hotplug event. The unit test was
missing this guarantee.
BUG: unable to handle kernel NULL pointer dereference at (null)
IP: [<ffffffff810cdce7>] pwq_activate_delayed_work+0x47/0x170
[..]
Call Trace:
[<ffffffff810ce186>] pwq_dec_nr_in_flight+0x66/0xa0
[<ffffffff810ce490>] process_one_work+0x2d0/0x680
[<ffffffff810ce331>] ? process_one_work+0x171/0x680
[<ffffffff810ce88e>] worker_thread+0x4e/0x480
[<ffffffff810ce840>] ? process_one_work+0x680/0x680
[<ffffffff810ce840>] ? process_one_work+0x680/0x680
[<ffffffff810d5343>] kthread+0xf3/0x110
[<ffffffff8199846f>] ret_from_fork+0x1f/0x40
[<ffffffff810d5250>] ? kthread_create_on_node+0x230/0x230
Cc: <stable@...r.kernel.org>
Signed-off-by: Dan Williams <dan.j.williams@...el.com>
Powered by blists - more mailing lists