cxlflash: Fix to avoid lock instrumentation rejection
authorMatthew R. Ochs <mrochs@linux.vnet.ibm.com>
Wed, 21 Oct 2015 20:16:24 +0000 (15:16 -0500)
committerJames Bottomley <JBottomley@Odin.com>
Fri, 30 Oct 2015 08:24:38 +0000 (17:24 +0900)
When running with lock instrumentation (e.g. lockdep), some of the
instrumentation can become disabled at probe time for a cxlflash
adapter. This is due to a missing lock registration for the tmf_slock.

The fix is to call spin_lock_init() for the tmf_slock during probe.

Signed-off-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
Acked-by: Manoj Kumar <manoj@linux.vnet.ibm.com>
Reviewed-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com>
Signed-off-by: James Bottomley <JBottomley@Odin.com>
drivers/scsi/cxlflash/main.c

index afaf5334a4c9cf8c5cc6599e98fee6e12805c4c6..1e5bf0ca81da1043a3be9d752271baf9c0a85836 100644 (file)
@@ -2410,6 +2410,7 @@ static int cxlflash_probe(struct pci_dev *pdev,
        INIT_WORK(&cfg->work_q, cxlflash_worker_thread);
        cfg->lr_state = LINK_RESET_INVALID;
        cfg->lr_port = -1;
+       spin_lock_init(&cfg->tmf_slock);
        mutex_init(&cfg->ctx_tbl_list_mutex);
        mutex_init(&cfg->ctx_recovery_mutex);
        init_rwsem(&cfg->ioctl_rwsem);