summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Jiang <dave.jiang@intel.com>2019-09-24 10:34:49 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-10-11 18:36:59 +0200
commit7853607312c6dfe8a17ac7c8099e171e87f57dce (patch)
tree991f340a58b2de6fc4d9d120ac3e2fae52ef7468
parent4b08e2536b13bf80eb52c08b9243b014409f8f81 (diff)
downloadlinux-stable-7853607312c6dfe8a17ac7c8099e171e87f57dce.tar.gz
linux-stable-7853607312c6dfe8a17ac7c8099e171e87f57dce.tar.bz2
linux-stable-7853607312c6dfe8a17ac7c8099e171e87f57dce.zip
libnvdimm: prevent nvdimm from requesting key when security is disabled
[ Upstream commit 674f31a352da5e9f621f757b9a89262f486533a0 ] Current implementation attempts to request keys from the keyring even when security is not enabled. Change behavior so when security is disabled it will skip key request. Error messages seen when no keys are installed and libnvdimm is loaded: request-key[4598]: Cannot find command to construct key 661489677 request-key[4606]: Cannot find command to construct key 34713726 Cc: stable@vger.kernel.org Fixes: 4c6926a23b76 ("acpi/nfit, libnvdimm: Add unlock of nvdimm support for Intel DIMMs") Signed-off-by: Dave Jiang <dave.jiang@intel.com> Link: https://lore.kernel.org/r/156934642272.30222.5230162488753445916.stgit@djiang5-desk3.ch.intel.com Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/nvdimm/security.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/nvdimm/security.c b/drivers/nvdimm/security.c
index a570f2263a42..5b7ea93edb93 100644
--- a/drivers/nvdimm/security.c
+++ b/drivers/nvdimm/security.c
@@ -177,6 +177,10 @@ static int __nvdimm_security_unlock(struct nvdimm *nvdimm)
|| nvdimm->sec.state < 0)
return -EIO;
+ /* No need to go further if security is disabled */
+ if (nvdimm->sec.state == NVDIMM_SECURITY_DISABLED)
+ return 0;
+
if (test_bit(NDD_SECURITY_OVERWRITE, &nvdimm->flags)) {
dev_dbg(dev, "Security operation in progress.\n");
return -EBUSY;