Dear all, On the linux-next vanilla next-20240709 tree, I have attempted the seed KCONFIG_SEED=0xEE7AB52F which was known from before to trigger various errors in compile and build process. Though this might seem as contributing to channel noise, Linux refuses to build this config, treating warnings as errors, using this build line: $ time nice make W=1 -k -j 36 |& tee ../err-next-20230709-01a.log; date As I know that the Chief Penguin doesn't like warnings, but I am also aware that there are plenty left, there seems to be more tedious work ahead to make the compilers happy. The compiler output is: drivers/message/fusion/mptsas.c: In function ‘mptsas_reprobe_lun’: drivers/message/fusion/mptsas.c:4234:13: error: variable ‘rc’ set but not used [-Werror=unused-but-set-variable] 4234 | int rc; | ^~ drivers/message/fusion/mptsas.c: In function ‘mptsas_issue_tm’: drivers/message/fusion/mptsas.c:4793:26: error: variable ‘timeleft’ set but not used [-Werror=unused-but-set-variable] 4793 | unsigned long timeleft; | ^~~~~~~~ 4230 4231 static void 4232 mptsas_reprobe_lun(struct scsi_device *sdev, void *data) 4233 { 4234 → int rc; 4235 4236 sdev->no_uld_attach = data ? 1 : 0; 4237 → rc = scsi_device_reprobe(sdev); 4238 } 4239 4787 mptsas_issue_tm(MPT_ADAPTER *ioc, u8 type, u8 channel, u8 id, u64 lun, 4788 int task_context, ulong timeout, u8 *issue_reset) 4789 { 4790 MPT_FRAME_HDR *mf; 4791 SCSITaskMgmt_t *pScsiTm; 4792 int retval; 4793 → unsigned long timeleft; 4794 4795 *issue_reset = 0; 4796 mf = mpt_get_msg_frame(mptsasDeviceResetCtx, ioc); 4797 if (mf == NULL) { 4798 retval = -1; /* return failure */ 4799 dtmprintk(ioc, printk(MYIOC_s_WARN_FMT "TaskMgmt request: no " 4800 "msg frames!!\n", ioc->name)); 4801 goto out; 4802 } 4803 4804 dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT "TaskMgmt request: mr = %p, " 4805 "task_type = 0x%02X,\n\t timeout = %ld, fw_channel = %d, " 4806 "fw_id = %d, lun = %lld,\n\t task_context = 0x%x\n", ioc->name, mf, 4807 type, timeout, channel, id, (unsigned long long)lun, 4808 task_context)); 4809 4810 pScsiTm = (SCSITaskMgmt_t *) mf; 4811 memset(pScsiTm, 0, sizeof(SCSITaskMgmt_t)); 4812 pScsiTm->Function = MPI_FUNCTION_SCSI_TASK_MGMT; 4813 pScsiTm->TaskType = type; 4814 pScsiTm->MsgFlags = 0; 4815 pScsiTm->TargetID = id; 4816 pScsiTm->Bus = channel; 4817 pScsiTm->ChainOffset = 0; 4818 pScsiTm->Reserved = 0; 4819 pScsiTm->Reserved1 = 0; 4820 pScsiTm->TaskMsgContext = task_context; 4821 int_to_scsilun(lun, (struct scsi_lun *)pScsiTm->LUN); 4822 4823 INITIALIZE_MGMT_STATUS(ioc->taskmgmt_cmds.status) 4824 CLEAR_MGMT_STATUS(ioc->internal_cmds.status) 4825 retval = 0; 4826 mpt_put_msg_frame_hi_pri(mptsasDeviceResetCtx, ioc, mf); 4827 4828 /* Now wait for the command to complete */ 4829 → timeleft = wait_for_completion_timeout(&ioc->taskmgmt_cmds.done, 4830 timeout*HZ); 4831 if (!(ioc->taskmgmt_cmds.status & MPT_MGMT_STATUS_COMMAND_GOOD)) { 4832 retval = -1; /* return failure */ 4833 dtmprintk(ioc, printk(MYIOC_s_ERR_FMT 4834 "TaskMgmt request: TIMED OUT!(mr=%p)\n", ioc->name, mf)); 4835 mpt_free_msg_frame(ioc, mf); 4836 if (ioc->taskmgmt_cmds.status & MPT_MGMT_STATUS_DID_IOCRESET) 4837 goto out; 4838 *issue_reset = 1; 4839 goto out; 4840 } 4841 4842 if (!(ioc->taskmgmt_cmds.status & MPT_MGMT_STATUS_RF_VALID)) { 4843 retval = -1; /* return failure */ 4844 dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT 4845 "TaskMgmt request: failed with no reply\n", ioc->name)); 4846 goto out; 4847 } Hope this helps. Best regards, Mirsad Todorovac