Re: [PATCH 1/7] mpt3sas: Introduce mpt3sas_base_pci_device_is_unplugged (fwd)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 <lkp@xxxxxxxxx>
To: kbuild@xxxxxx
Cc: Julia Lawall <julia.lawall@xxxxxxx>
Subject: Re: [PATCH 1/7] mpt3sas: Introduce mpt3sas_base_pci_device_is_unplugged

CC: kbuild-all@xxxxxx
In-Reply-To: <1535599593-4739-2-git-send-email-suganath-prabu.subramani@xxxxxxxxxxxx>
References: <1535599593-4739-2-git-send-email-suganath-prabu.subramani@xxxxxxxxxxxx>
TO: Suganath Prabu S <suganath-prabu.subramani@xxxxxxxxxxxx>
CC: linux-scsi@xxxxxxxxxxxxxxx
CC: Sathya.Prakash@xxxxxxxxxxxx, sreekanth.reddy@xxxxxxxxxxxx, Suganath Prabu S <suganath-prabu.subramani@xxxxxxxxxxxx>

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 <Sreekanth.Reddy@xxxxxxx>
:::::: CC: James Bottomley <JBottomley@xxxxxxxxxxxxx>

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



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux