lkml.org 
[lkml]   [2021]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.12 417/677] scsi: jazz_esp: Add IRQ check
    Date
    From: Sergey Shtylyov <s.shtylyov@omprussia.ru>

    [ Upstream commit 38fca15c29db6ed06e894ac194502633e2a7d1fb ]

    The driver neglects to check the result of platform_get_irq()'s call and
    blithely passes the negative error codes to request_irq() (which takes
    *unsigned* IRQ #), causing it to fail with -EINVAL, overriding the real
    error code. Stop calling request_irq() with the invalid IRQ #s.

    Link: https://lore.kernel.org/r/594aa9ae-2215-49f6-f73c-33bd38989912@omprussia.ru
    Fixes: 352e921f0dd4 ("[SCSI] jazz_esp: converted to use esp_core")
    Signed-off-by: Sergey Shtylyov <s.shtylyov@omprussia.ru>
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/scsi/jazz_esp.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/drivers/scsi/jazz_esp.c b/drivers/scsi/jazz_esp.c
    index f0ed6863cc70..60a88a95a8e2 100644
    --- a/drivers/scsi/jazz_esp.c
    +++ b/drivers/scsi/jazz_esp.c
    @@ -143,7 +143,9 @@ static int esp_jazz_probe(struct platform_device *dev)
    if (!esp->command_block)
    goto fail_unmap_regs;

    - host->irq = platform_get_irq(dev, 0);
    + host->irq = err = platform_get_irq(dev, 0);
    + if (err < 0)
    + goto fail_unmap_command_block;
    err = request_irq(host->irq, scsi_esp_intr, IRQF_SHARED, "ESP", esp);
    if (err < 0)
    goto fail_unmap_command_block;
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-05-12 23:02    [W:2.708 / U:0.628 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site