diff options
author | Dan Williams <dan.j.williams@intel.com> | 2018-06-18 10:07:35 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2018-06-28 18:21:30 -0700 |
commit | b62cc6fdd793eaac50e4191c8637ffff9e9574d6 (patch) | |
tree | 0fb9070a2031d2cdf9367d7c7fb8f82adc90e17c /drivers/nvdimm/claim.c | |
parent | 7daf201d7fe8334e2d2364d4e8ed3394ec9af819 (diff) | |
download | talos-op-linux-b62cc6fdd793eaac50e4191c8637ffff9e9574d6.tar.gz talos-op-linux-b62cc6fdd793eaac50e4191c8637ffff9e9574d6.zip |
libnvdimm, pmem: Fix memcpy_mcsafe() return code handling in nsio_rw_bytes()
Commit 60622d68227d "x86/asm/memcpy_mcsafe: Return bytes remaining"
converted callers of memcpy_mcsafe() to expect a positive 'bytes
remaining' value rather than a negative error code. The nsio_rw_bytes()
conversion failed to return success. The failure is benign in that
nsio_rw_bytes() will end up writing back what it just read.
Fixes: 60622d68227d ("x86/asm/memcpy_mcsafe: Return bytes remaining")
Cc: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Vishal Verma <vishal.l.verma@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm/claim.c')
-rw-r--r-- | drivers/nvdimm/claim.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/nvdimm/claim.c b/drivers/nvdimm/claim.c index 2e96b34bc936..fb667bf469c7 100644 --- a/drivers/nvdimm/claim.c +++ b/drivers/nvdimm/claim.c @@ -278,6 +278,7 @@ static int nsio_rw_bytes(struct nd_namespace_common *ndns, return -EIO; if (memcpy_mcsafe(buf, nsio->addr + offset, size) != 0) return -EIO; + return 0; } if (unlikely(is_bad_pmem(&nsio->bb, sector, sz_align))) { |