Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp2741016pxb; Mon, 31 Jan 2022 03:21:17 -0800 (PST) X-Google-Smtp-Source: ABdhPJyuJaX3qpUibEkvxYG/fCdQlj465ONDUFTcHM68of8MyjJMEvyzGIgu9tU20wKTGMXu3sSu X-Received: by 2002:a05:6402:741:: with SMTP id p1mr20200525edy.394.1643628077635; Mon, 31 Jan 2022 03:21:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643628077; cv=none; d=google.com; s=arc-20160816; b=WsE0cr8nzYZd7vyujPAWF3k33iOuF0k6AUvxDl/hNCR9V9Rxx9u7uXggEubQHXN3Yz nQPQ79k0C5E2nvcbhJvECiYR1T9F696DOvcr19vO+llHG2al3pQwkMop6GwkO0wjcqef CgQdALQi0EACAXVFAsefqo8h0YlYjZYb8glM0AAGixWBHnwap0y9Pdlk1PBwdsRTFQM4 R3v4l6osZR78huE/kKmTuvgop+OVtUpJD5/a7TxetC/YacGpf9ywW6d39D45RfVIgPcq 27mbjGpPj+zV3msfiTiQwmE0iHFYdka1SDQF6yHZkkZAdt1Eei/yb39IzN62/M7QHsJ0 td8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:dkim-signature; bh=4eWgk8DR7GAT8RScGPgtPJ9OOwKkWW5UUG5CMXRZ1BY=; b=QcF+eBLHeYDv4dPPAxDQOz2h2lk/DhFsJJZQqltM1mI0YGiNUOh106wCPsSb+T/+fB F15T0X4aiXhyAn91KQuHN/jA6sGRmtLXiZFO8/VX/S758iRzIveZdDT06gdt9j1lI5va FBjS1WE0piNBdqqcMfH1mhwoJDMT7B/uXn2CKEw2iP446CSH43IHwLY3p5GaZ9hK8XSy l/WykVE4n6UmSlDKyk68CtzInIR5dmxwG4U0JYUGzdyOHBZ26ZhNILERSDEpBr/Ep2Nn EwtVqmhG5uPrEX1a2ZuCOgQ96QYC7IP9TKTHDtMEPMAs2DYBJ0HyAvpvvyfRbNSwW/h2 6uDg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=cHYZFwQF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id sc40si7562613ejc.354.2022.01.31.03.20.52; Mon, 31 Jan 2022 03:21:17 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=cHYZFwQF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1350244AbiA1Qrs (ORCPT + 99 others); Fri, 28 Jan 2022 11:47:48 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47146 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1350235AbiA1Qrr (ORCPT ); Fri, 28 Jan 2022 11:47:47 -0500 Received: from mail-pj1-x1031.google.com (mail-pj1-x1031.google.com [IPv6:2607:f8b0:4864:20::1031]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 91033C061714; Fri, 28 Jan 2022 08:47:47 -0800 (PST) Received: by mail-pj1-x1031.google.com with SMTP id z10-20020a17090acb0a00b001b520826011so11394383pjt.5; Fri, 28 Jan 2022 08:47:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=4eWgk8DR7GAT8RScGPgtPJ9OOwKkWW5UUG5CMXRZ1BY=; b=cHYZFwQFHKOpWZ8QZadM5qtwujFptR4ATqBWCNoQbylpkw6gGn+w75cuXeX0xyrCPj S9t0ZM9P6JP/EBCH8jv436iJX06JP9f+qBRYFcfgUv6BnVlVMGKAIY4P0uvN2OR1zJj7 TxhTNwDYrEbNYSDG7YXC/pzBjdF09F04DK66m4vIZx9qV5N9IrmnPZKAtUelCdjp54p0 rxEdpJK4jmgMQMZOpYq2KqgnCTqncU+iiDurgywZg7jDHdXfnbHqrs2di8Fr5a8B6Gbg OVNRryr6aUzKygxztXEYRxZQ7huAhfyUduQVDpgz5gJvHuj1zcfKha1vz5/bbD6ed7xN R6AQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=4eWgk8DR7GAT8RScGPgtPJ9OOwKkWW5UUG5CMXRZ1BY=; b=1wy1FYyE/k/YWVlZ48ob3mSjoDH69OYhbeBWdxLhM3iOZDuaIx5ZcZrpcVZhDzZaa/ N4v1iJcd+K8Ke7VM+dJv9vlrYfb6TIhbw4d5hbX1WNeYJeetj0DjLkqWB93818VYj506 GvP9puD0H23I+ykE2GmzLUu4kr9ooow3eKTDBmYaM3P7+JNoA1L0MwxDWR/96H6FNjul sRyf/nynHriU9dbdSteh2rEaO/jILI+ZOVlh50aitgDAfLv3UQscR5PEwRhLKO+raSzX v8cMasUMGl50MMFgVP6L52z4JFGWxljJVnV+Hgb3buyQ/R3WCAygZFPneXVrEpFpQXUI LQuA== X-Gm-Message-State: AOAM532mYgEUw362BWDud15mzo+lt1decBciM2+aS7lrA0jMaOkkZR91 UajopcOJufcyZnS1/LiGVboVPAJQbrBUNHVAX8E= X-Received: by 2002:a17:902:bd4a:: with SMTP id b10mr5105001plx.152.1643388467079; Fri, 28 Jan 2022 08:47:47 -0800 (PST) Received: from localhost.localdomain ([159.226.95.43]) by smtp.googlemail.com with ESMTPSA id oo2sm3306726pjb.31.2022.01.28.08.47.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Jan 2022 08:47:46 -0800 (PST) From: Miaoqian Lin To: Laxman Dewangan , Mark Brown , Thierry Reding , Jonathan Hunter , Stephen Warren , linux-spi@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org Cc: linmq006@gmail.com Subject: [PATCH v3] spi: tegra20: Fix missing IRQ check in tegra_slink_probe Date: Fri, 28 Jan 2022 16:47:41 +0000 Message-Id: <20220128164741.23846-1-linmq006@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: References: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This func misses checking for platform_get_irq()'s call and may passes the negative error codes to request_threaded_irq(), which takes unsigned IRQ #, causing it to fail with -EINVAL, overriding an original error code. Stop calling request_threaded_irq() with invalid IRQ #s. Fixes: dc4dc3605639 ("spi: tegra: add spi driver for SLINK controller") Signed-off-by: Miaoqian Lin --- Changes in v2: - fix wrong func name in commit message. Changes in v3: - fix Fixes tag info. - remove redundant error message. --- drivers/spi/spi-tegra20-slink.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/spi/spi-tegra20-slink.c b/drivers/spi/spi-tegra20-slink.c index 2a03739a0c60..f8661963ecba 100644 --- a/drivers/spi/spi-tegra20-slink.c +++ b/drivers/spi/spi-tegra20-slink.c @@ -1100,6 +1100,10 @@ static int tegra_slink_probe(struct platform_device *pdev) reset_control_deassert(tspi->rst); spi_irq = platform_get_irq(pdev, 0); + if (spi_irq < 0) { + ret = spi_irq; + goto exit_pm_put; + } tspi->irq = spi_irq; ret = request_threaded_irq(tspi->irq, tegra_slink_isr, tegra_slink_isr_thread, IRQF_ONESHOT, -- 2.17.1