Hello,

The complaint is actually about line 6956.  Has the mutex been released
there?

julia

---------- Forwarded message ----------
Date: Fri, 31 Aug 2018 00:37:52 +0800
From: kbuild test robot <[email protected]>
To: [email protected]
Cc: Julia Lawall <[email protected]>
Subject: Re: [PATCH 1/7] mpt3sas: Introduce mpt3sas_base_pci_device_is_unplugged

CC: [email protected]
In-Reply-To: 
<1535599593-4739-2-git-send-email-suganath-prabu.subram...@broadcom.com>
References: 
<1535599593-4739-2-git-send-email-suganath-prabu.subram...@broadcom.com>
TO: Suganath Prabu S <[email protected]>
CC: [email protected]
CC: [email protected], [email protected], Suganath Prabu S 
<[email protected]>

Hi Suganath,

I love your patch! Perhaps something to improve:

[auto build test WARNING on scsi/for-next]
[also build test WARNING on v4.19-rc1 next-20180830]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/Suganath-Prabu-S/mpt3sas-Hot-Plug-Surprise-removal-support-on-IOC/20180830-203851
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git for-next
:::::: branch date: 4 hours ago
:::::: commit date: 4 hours ago

>> drivers/scsi/mpt3sas/mpt3sas_base.c:7023:1-7: preceding lock on line 6946

# 
https://github.com/0day-ci/linux/commit/a51dfd76fefe9f96918233100ef83b5df2b1acbd
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout a51dfd76fefe9f96918233100ef83b5df2b1acbd
vim +7023 drivers/scsi/mpt3sas/mpt3sas_base.c

f92363d12 Sreekanth Reddy  2012-11-30  6915
f92363d12 Sreekanth Reddy  2012-11-30  6916  /**
f92363d12 Sreekanth Reddy  2012-11-30  6917   * mpt3sas_base_hard_reset_handler 
- reset controller
f92363d12 Sreekanth Reddy  2012-11-30  6918   * @ioc: Pointer to MPT_ADAPTER 
structure
f92363d12 Sreekanth Reddy  2012-11-30  6919   * @type: FORCE_BIG_HAMMER or 
SOFT_RESET
f92363d12 Sreekanth Reddy  2012-11-30  6920   *
4beb4867f Bart Van Assche  2018-06-15  6921   * Return: 0 for success, non-zero 
for failure.
f92363d12 Sreekanth Reddy  2012-11-30  6922   */
f92363d12 Sreekanth Reddy  2012-11-30  6923  int
98c56ad32 Calvin Owens     2016-07-28  6924  
mpt3sas_base_hard_reset_handler(struct MPT3SAS_ADAPTER *ioc,
f92363d12 Sreekanth Reddy  2012-11-30  6925     enum reset_type type)
f92363d12 Sreekanth Reddy  2012-11-30  6926  {
f92363d12 Sreekanth Reddy  2012-11-30  6927     int r;
f92363d12 Sreekanth Reddy  2012-11-30  6928     unsigned long flags;
f92363d12 Sreekanth Reddy  2012-11-30  6929     u32 ioc_state;
f92363d12 Sreekanth Reddy  2012-11-30  6930     u8 is_fault = 0, is_trigger = 0;
f92363d12 Sreekanth Reddy  2012-11-30  6931
f92363d12 Sreekanth Reddy  2012-11-30  6932     dtmprintk(ioc, 
pr_info(MPT3SAS_FMT "%s: enter\n", ioc->name,
f92363d12 Sreekanth Reddy  2012-11-30  6933         __func__));
f92363d12 Sreekanth Reddy  2012-11-30  6934
f92363d12 Sreekanth Reddy  2012-11-30  6935     if (ioc->pci_error_recovery) {
f92363d12 Sreekanth Reddy  2012-11-30  6936             pr_err(MPT3SAS_FMT "%s: 
pci error recovery reset\n",
f92363d12 Sreekanth Reddy  2012-11-30  6937                 ioc->name, 
__func__);
f92363d12 Sreekanth Reddy  2012-11-30  6938             r = 0;
f92363d12 Sreekanth Reddy  2012-11-30  6939             goto out_unlocked;
f92363d12 Sreekanth Reddy  2012-11-30  6940     }
f92363d12 Sreekanth Reddy  2012-11-30  6941
f92363d12 Sreekanth Reddy  2012-11-30  6942     if (mpt3sas_fwfault_debug)
f92363d12 Sreekanth Reddy  2012-11-30  6943             
mpt3sas_halt_firmware(ioc);
f92363d12 Sreekanth Reddy  2012-11-30  6944
f92363d12 Sreekanth Reddy  2012-11-30  6945     /* wait for an active reset in 
progress to complete */
982ea6f9f Bart Van Assche  2018-06-15 @6946     
mutex_lock(&ioc->reset_in_progress_mutex);
f92363d12 Sreekanth Reddy  2012-11-30  6947
a51dfd76f Suganath Prabu S 2018-08-29  6948     if 
(!mpt3sas_base_pci_device_is_available(ioc)) {
a51dfd76f Suganath Prabu S 2018-08-29  6949             pr_err(MPT3SAS_FMT
a51dfd76f Suganath Prabu S 2018-08-29  6950                 "%s: pci error 
recovery reset or"
a51dfd76f Suganath Prabu S 2018-08-29  6951                 " pci device unplug 
occurred\n",
a51dfd76f Suganath Prabu S 2018-08-29  6952                 ioc->name, 
__func__);
a51dfd76f Suganath Prabu S 2018-08-29  6953             if 
(mpt3sas_base_pci_device_is_unplugged(ioc))
a51dfd76f Suganath Prabu S 2018-08-29  6954                     
ioc->schedule_dead_ioc_flush_running_cmds(ioc);
a51dfd76f Suganath Prabu S 2018-08-29  6955             r = 0;
a51dfd76f Suganath Prabu S 2018-08-29  6956             goto out_unlocked;
a51dfd76f Suganath Prabu S 2018-08-29  6957     }
a51dfd76f Suganath Prabu S 2018-08-29  6958
a51dfd76f Suganath Prabu S 2018-08-29  6959     mpt3sas_halt_firmware(ioc);
a51dfd76f Suganath Prabu S 2018-08-29  6960
f92363d12 Sreekanth Reddy  2012-11-30  6961     
spin_lock_irqsave(&ioc->ioc_reset_in_progress_lock, flags);
f92363d12 Sreekanth Reddy  2012-11-30  6962     ioc->shost_recovery = 1;
f92363d12 Sreekanth Reddy  2012-11-30  6963     
spin_unlock_irqrestore(&ioc->ioc_reset_in_progress_lock, flags);
f92363d12 Sreekanth Reddy  2012-11-30  6964
f92363d12 Sreekanth Reddy  2012-11-30  6965     if 
((ioc->diag_buffer_status[MPI2_DIAG_BUF_TYPE_TRACE] &
f92363d12 Sreekanth Reddy  2012-11-30  6966         
MPT3_DIAG_BUFFER_IS_REGISTERED) &&
f92363d12 Sreekanth Reddy  2012-11-30  6967         
(!(ioc->diag_buffer_status[MPI2_DIAG_BUF_TYPE_TRACE] &
f92363d12 Sreekanth Reddy  2012-11-30  6968         
MPT3_DIAG_BUFFER_IS_RELEASED))) {
f92363d12 Sreekanth Reddy  2012-11-30  6969             is_trigger = 1;
f92363d12 Sreekanth Reddy  2012-11-30  6970             ioc_state = 
mpt3sas_base_get_iocstate(ioc, 0);
f92363d12 Sreekanth Reddy  2012-11-30  6971             if ((ioc_state & 
MPI2_IOC_STATE_MASK) == MPI2_IOC_STATE_FAULT)
f92363d12 Sreekanth Reddy  2012-11-30  6972                     is_fault = 1;
f92363d12 Sreekanth Reddy  2012-11-30  6973     }
c7a357058 Bart Van Assche  2018-06-15  6974     _base_pre_reset_handler(ioc);
c666d3be9 Sreekanth Reddy  2018-02-16  6975     
mpt3sas_wait_for_commands_to_complete(ioc);
f92363d12 Sreekanth Reddy  2012-11-30  6976     _base_mask_interrupts(ioc);
98c56ad32 Calvin Owens     2016-07-28  6977     r = _base_make_ioc_ready(ioc, 
type);
f92363d12 Sreekanth Reddy  2012-11-30  6978     if (r)
f92363d12 Sreekanth Reddy  2012-11-30  6979             goto out;
c7a357058 Bart Van Assche  2018-06-15  6980     _base_after_reset_handler(ioc);
f92363d12 Sreekanth Reddy  2012-11-30  6981
f92363d12 Sreekanth Reddy  2012-11-30  6982     /* If this hard reset is called 
while port enable is active, then
f92363d12 Sreekanth Reddy  2012-11-30  6983      * there is no reason to call 
make_ioc_operational
f92363d12 Sreekanth Reddy  2012-11-30  6984      */
f92363d12 Sreekanth Reddy  2012-11-30  6985     if (ioc->is_driver_loading && 
ioc->port_enable_failed) {
f92363d12 Sreekanth Reddy  2012-11-30  6986             ioc->remove_host = 1;
f92363d12 Sreekanth Reddy  2012-11-30  6987             r = -EFAULT;
f92363d12 Sreekanth Reddy  2012-11-30  6988             goto out;
f92363d12 Sreekanth Reddy  2012-11-30  6989     }
98c56ad32 Calvin Owens     2016-07-28  6990     r = _base_get_ioc_facts(ioc);
f92363d12 Sreekanth Reddy  2012-11-30  6991     if (r)
f92363d12 Sreekanth Reddy  2012-11-30  6992             goto out;
9b05c91ae Sreekanth Reddy  2014-09-12  6993
9b05c91ae Sreekanth Reddy  2014-09-12  6994     if (ioc->rdpq_array_enable && 
!ioc->rdpq_array_capable)
9b05c91ae Sreekanth Reddy  2014-09-12  6995             panic("%s: Issue 
occurred with flashing controller firmware."
9b05c91ae Sreekanth Reddy  2014-09-12  6996                   "Please reboot 
the system and ensure that the correct"
9b05c91ae Sreekanth Reddy  2014-09-12  6997                   " firmware 
version is running\n", ioc->name);
9b05c91ae Sreekanth Reddy  2014-09-12  6998
98c56ad32 Calvin Owens     2016-07-28  6999     r = 
_base_make_ioc_operational(ioc);
f92363d12 Sreekanth Reddy  2012-11-30  7000     if (!r)
c7a357058 Bart Van Assche  2018-06-15  7001             
_base_reset_done_handler(ioc);
f92363d12 Sreekanth Reddy  2012-11-30  7002
f92363d12 Sreekanth Reddy  2012-11-30  7003   out:
f92363d12 Sreekanth Reddy  2012-11-30  7004     dtmprintk(ioc, 
pr_info(MPT3SAS_FMT "%s: %s\n",
f92363d12 Sreekanth Reddy  2012-11-30  7005         ioc->name, __func__, ((r == 
0) ? "SUCCESS" : "FAILED")));
f92363d12 Sreekanth Reddy  2012-11-30  7006
f92363d12 Sreekanth Reddy  2012-11-30  7007     
spin_lock_irqsave(&ioc->ioc_reset_in_progress_lock, flags);
f92363d12 Sreekanth Reddy  2012-11-30  7008     ioc->shost_recovery = 0;
f92363d12 Sreekanth Reddy  2012-11-30  7009     
spin_unlock_irqrestore(&ioc->ioc_reset_in_progress_lock, flags);
f92363d12 Sreekanth Reddy  2012-11-30  7010     ioc->ioc_reset_count++;
f92363d12 Sreekanth Reddy  2012-11-30  7011     
mutex_unlock(&ioc->reset_in_progress_mutex);
f92363d12 Sreekanth Reddy  2012-11-30  7012
f92363d12 Sreekanth Reddy  2012-11-30  7013   out_unlocked:
f92363d12 Sreekanth Reddy  2012-11-30  7014     if ((r == 0) && is_trigger) {
f92363d12 Sreekanth Reddy  2012-11-30  7015             if (is_fault)
f92363d12 Sreekanth Reddy  2012-11-30  7016                     
mpt3sas_trigger_master(ioc, MASTER_TRIGGER_FW_FAULT);
f92363d12 Sreekanth Reddy  2012-11-30  7017             else
f92363d12 Sreekanth Reddy  2012-11-30  7018                     
mpt3sas_trigger_master(ioc,
f92363d12 Sreekanth Reddy  2012-11-30  7019                         
MASTER_TRIGGER_ADAPTER_RESET);
f92363d12 Sreekanth Reddy  2012-11-30  7020     }
f92363d12 Sreekanth Reddy  2012-11-30  7021     dtmprintk(ioc, 
pr_info(MPT3SAS_FMT "%s: exit\n", ioc->name,
f92363d12 Sreekanth Reddy  2012-11-30  7022         __func__));
f92363d12 Sreekanth Reddy  2012-11-30 @7023     return r;

:::::: The code at line 7023 was first introduced by commit
:::::: f92363d12359498f9a9960511de1a550f0ec41c2 [SCSI] mpt3sas: add new driver 
supporting 12GB SAS

:::::: TO: Sreekanth Reddy <[email protected]>
:::::: CC: James Bottomley <[email protected]>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Reply via email to