libnvdimm: allow legacy (e820) pmem region to clear bad blocks
authorDave Jiang <dave.jiang@intel.com>
Fri, 9 Sep 2016 16:10:08 +0000 (09:10 -0700)
committerDan Williams <dan.j.williams@intel.com>
Sat, 10 Sep 2016 00:34:46 +0000 (17:34 -0700)
commit1e8b8d9619f9476e94f32eb20cab000d50d236aa
tree916ab96acbdc05f548e85b3897be7167276b3e4f
parent2e21807d4b131dfd4a8e5c82116a85b62f28aeec
libnvdimm: allow legacy (e820) pmem region to clear bad blocks

Bad blocks can be injected via /sys/block/pmemN/badblocks. In a situation
where legacy pmem is being used or a pmem region created by using memmap
kernel parameter, the injected bad blocks are not cleared due to
nvdimm_clear_poison() failing from lack of ndctl function pointer. In
this case we need to just return as handled and allow the bad blocks to
be cleared rather than fail.

Reviewed-by: Vishal Verma <vishal.l.verma@intel.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/nvdimm/bus.c