libnvdimm: prevent nvdimm from requesting key when security is disabled
authorDave Jiang <dave.jiang@intel.com>
Tue, 24 Sep 2019 17:34:49 +0000 (10:34 -0700)
committerDan Williams <dan.j.williams@intel.com>
Tue, 24 Sep 2019 17:30:10 +0000 (10:30 -0700)
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>
drivers/nvdimm/security.c

index 9e45b207ff0169f0c820a91c0d80eed141500004..89b85970912dbe076ae37cbc2ce56bce570f0457 100644 (file)
@@ -177,6 +177,10 @@ static int __nvdimm_security_unlock(struct nvdimm *nvdimm)
                        || !nvdimm->sec.flags)
                return -EIO;
 
+       /* No need to go further if security is disabled */
+       if (test_bit(NVDIMM_SECURITY_DISABLED, &nvdimm->sec.flags))
+               return 0;
+
        if (test_bit(NDD_SECURITY_OVERWRITE, &nvdimm->flags)) {
                dev_dbg(dev, "Security operation in progress.\n");
                return -EBUSY;