summaryrefslogtreecommitdiffstats
path: root/drivers/nvdimm/bus.c
diff options
context:
space:
mode:
authorToshi Kani2017-06-13 00:25:11 +0200
committerDan Williams2017-06-15 23:31:41 +0200
commit975750a98c26769fe54785579f4b26c961a7a6f4 (patch)
tree4bc4f280ad9ff7132a9a5978c5c676ab31d6c2be /drivers/nvdimm/bus.c
parenttools/testing/nvdimm: fix nfit_test buffer overflow (diff)
downloadkernel-qcow2-linux-975750a98c26769fe54785579f4b26c961a7a6f4.tar.gz
kernel-qcow2-linux-975750a98c26769fe54785579f4b26c961a7a6f4.tar.xz
kernel-qcow2-linux-975750a98c26769fe54785579f4b26c961a7a6f4.zip
libnvdimm, pmem: Add sysfs notifications to badblocks
Sysfs "badblocks" information may be updated during run-time that: - MCE, SCI, and sysfs "scrub" may add new bad blocks - Writes and ioctl() may clear bad blocks Add support to send sysfs notifications to sysfs "badblocks" file under region and pmem directories when their badblocks information is re-evaluated (but is not necessarily changed) during run-time. Signed-off-by: Toshi Kani <toshi.kani@hpe.com> Cc: Vishal Verma <vishal.l.verma@intel.com> Cc: Linda Knippers <linda.knippers@hpe.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm/bus.c')
-rw-r--r--drivers/nvdimm/bus.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/nvdimm/bus.c b/drivers/nvdimm/bus.c
index e9361bffe5ee..63ce50d9c1c5 100644
--- a/drivers/nvdimm/bus.c
+++ b/drivers/nvdimm/bus.c
@@ -198,6 +198,9 @@ static int nvdimm_clear_badblocks_region(struct device *dev, void *data)
sector = (ctx->phys - nd_region->ndr_start) / 512;
badblocks_clear(&nd_region->bb, sector, ctx->cleared / 512);
+ if (nd_region->bb_state)
+ sysfs_notify_dirent(nd_region->bb_state);
+
return 0;
}