Message ID | 49ba93a3-d427-7542-d85a-b74fe1a33a73@omp.ru |
---|---|
State | New |
Headers | show |
Series | scsi: hisi_sas: propagate errors in interrupt_init_v1_hw() | expand |
On 19/05/2021 20:20, Sergey Shtylyov wrote: > After the commit 6c11dc060427 ("scsi: hisi_sas: Fix IRQ checks") we have > the error codes returned by platform_get_irq() ready for the propagation > upsream in interrupt_init_v1_hw() -- that will fix still broken deferred > probing. Let's propagate the error codes from devm_request_irq() as well > since I don't see the reason to override them with -ENOENT... > > Fixes: df2d8213d9e3 ("hisi_sas: use platform_get_irq()") Personally I would drop the fixes tag. I am almost sure that this HW is not used any longer. And I don't see a point in this change being picked up by stable. > Signed-off-by: Sergey Shtylyov<s.shtylyov@omp.ru> Acked-by: John Garry <john.garry@huawei.com>
Sergey, > After the commit 6c11dc060427 ("scsi: hisi_sas: Fix IRQ checks") we > have the error codes returned by platform_get_irq() ready for the > propagation upsream in interrupt_init_v1_hw() -- that will fix still > broken deferred probing. Let's propagate the error codes from > devm_request_irq() as well since I don't see the reason to override > them with -ENOENT... Applied to 5.14/scsi-staging, thanks! -- Martin K. Petersen Oracle Linux Engineering
On Wed, 19 May 2021 22:20:15 +0300, Sergey Shtylyov wrote: > After the commit 6c11dc060427 ("scsi: hisi_sas: Fix IRQ checks") we have > the error codes returned by platform_get_irq() ready for the propagation > upsream in interrupt_init_v1_hw() -- that will fix still broken deferred > probing. Let's propagate the error codes from devm_request_irq() as well > since I don't see the reason to override them with -ENOENT... Applied to 5.14/scsi-queue, thanks! [1/1] scsi: hisi_sas: propagate errors in interrupt_init_v1_hw() https://git.kernel.org/mkp/scsi/c/ab17122e758e -- Martin K. Petersen Oracle Linux Engineering
Index: scsi/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c =================================================================== --- scsi.orig/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c +++ scsi/drivers/scsi/hisi_sas/hisi_sas_v1_hw.c @@ -1649,7 +1649,7 @@ static int interrupt_init_v1_hw(struct h if (irq < 0) { dev_err(dev, "irq init: fail map phy interrupt %d\n", idx); - return -ENOENT; + return irq; } rc = devm_request_irq(dev, irq, phy_interrupts[j], 0, @@ -1657,7 +1657,7 @@ static int interrupt_init_v1_hw(struct h if (rc) { dev_err(dev, "irq init: could not request phy interrupt %d, rc=%d\n", irq, rc); - return -ENOENT; + return rc; } } } @@ -1668,7 +1668,7 @@ static int interrupt_init_v1_hw(struct h if (irq < 0) { dev_err(dev, "irq init: could not map cq interrupt %d\n", idx); - return -ENOENT; + return irq; } rc = devm_request_irq(dev, irq, cq_interrupt_v1_hw, 0, @@ -1676,7 +1676,7 @@ static int interrupt_init_v1_hw(struct h if (rc) { dev_err(dev, "irq init: could not request cq interrupt %d, rc=%d\n", irq, rc); - return -ENOENT; + return rc; } } @@ -1686,7 +1686,7 @@ static int interrupt_init_v1_hw(struct h if (irq < 0) { dev_err(dev, "irq init: could not map fatal interrupt %d\n", idx); - return -ENOENT; + return irq; } rc = devm_request_irq(dev, irq, fatal_interrupts[i], 0, @@ -1694,7 +1694,7 @@ static int interrupt_init_v1_hw(struct h if (rc) { dev_err(dev, "irq init: could not request fatal interrupt %d, rc=%d\n", irq, rc); - return -ENOENT; + return rc; } }
After the commit 6c11dc060427 ("scsi: hisi_sas: Fix IRQ checks") we have the error codes returned by platform_get_irq() ready for the propagation upsream in interrupt_init_v1_hw() -- that will fix still broken deferred probing. Let's propagate the error codes from devm_request_irq() as well since I don't see the reason to override them with -ENOENT... Fixes: df2d8213d9e3 ("hisi_sas: use platform_get_irq()") Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru> --- The patch is against the 'for-next' branch of Martin Petgersen's 'scsi.git' repo. drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)