Please ignore this patch. I missed to add megaraid_sas in subject line. I realized after sending. Will be resending with proper subject. Sorry for spamming. > -----Original Message----- > From: Sumit Saxena [mailto:sumit.saxena@xxxxxxxxxxxx] > Sent: Friday, July 08, 2016 3:51 PM > To: James.Bottomley@xxxxxxxxxxxxxxxxxxxxx; martin.petersen@xxxxxxxxxx > Cc: linux-scsi@xxxxxxxxxxxxxxx; kashyap.desai@xxxxxxxxxxxx; > lucz@xxxxxxxx; stable@xxxxxxxxxxxxxxx; Sumit Saxena > Subject: [PATCH] Do not fire MR_DCMD_PD_LIST_QUERY to controllers which > do not support it > > There was an issue reported by Lucz Geza on Dell Perc 6i. As per issue > reported, > driver goes into an infinite error reporting loop as soon as there is a > change in > the status of one of the arrays (degrade, resync online etc …). > Below are the error logs reported continuously- > > Jun 25 08:49:30 ns8 kernel: [ 757.757017] megaraid_sas 0000:02:00.0: DCMD > failed/not supported by firmware: megasas_get_pd_list 4115 Jun 25 08:49:30 > ns8 kernel: [ 757.778017] megaraid_sas 0000:02:00.0: DCMD failed/not > supported by firmware: megasas_get_pd_list 4115 Jun 25 08:49:30 ns8 > kernel: [ > 757.799017] megaraid_sas 0000:02:00.0: DCMD failed/not supported by > firmware: megasas_get_pd_list 4115 Jun 25 08:49:30 ns8 kernel: [ > 757.820018] > megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: > megasas_get_pd_list 4115 Jun 25 08:49:30 ns8 kernel: [ 757.841018] > megaraid_sas 0000:02:00.0: DCMD failed/not supported by firmware: > megasas_get_pd_list 4115 > > This issue is very much specific to controllers which do not support DCMD- > MR_DCMD_PD_LIST_QUERY. > In case of any hotplugging/rescanning of drives, AEN thread will be > scheduled by > driver and fire > DCMD- MR_DCMD_PD_LIST_QUERY and if this DCMD is failed then driver will > fail this event processing and will not go ahead for further events. This > will cause > infinite loop of same event getting retried infinitely and causing above > mentioned logs. > > Fix for this problem is: not to fire DCMD MR_DCMD_PD_LIST_QUERY for > controllers which do not support it and send DCMD SUCCESS status to AEN > function so that it can go ahead with other event processing. > > Reported-by: Lucz Geza <geza@xxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> > Signed-off-by: Sumit Saxena <sumit.saxena@xxxxxxxxxxxx> > > --- > drivers/scsi/megaraid/megaraid_sas_base.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c > b/drivers/scsi/megaraid/megaraid_sas_base.c > index f4b0690..2dab3dc 100644 > --- a/drivers/scsi/megaraid/megaraid_sas_base.c > +++ b/drivers/scsi/megaraid/megaraid_sas_base.c > @@ -4079,6 +4079,12 @@ megasas_get_pd_list(struct megasas_instance > *instance) > struct MR_PD_ADDRESS *pd_addr; > dma_addr_t ci_h = 0; > > + if (instance->pd_list_not_supported) { > + dev_info(&instance->pdev->dev, "MR_DCMD_PD_LIST_QUERY > " > + "not supported by firmware\n"); > + return ret; > + } > + > cmd = megasas_get_cmd(instance); > > if (!cmd) { > -- > 2.4.11 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html