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