Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp12522595pxu; Sat, 2 Jan 2021 01:54:46 -0800 (PST) X-Google-Smtp-Source: ABdhPJw4TyabX5L+vgQNGqVsQeZWlaral36d5aAldobwYEjMLgdFiDtk+KEvI1adI4W7qDORSIfa X-Received: by 2002:a17:907:d0d:: with SMTP id gn13mr60615566ejc.390.1609581286048; Sat, 02 Jan 2021 01:54:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1609581286; cv=none; d=google.com; s=arc-20160816; b=XYxRCGgmL8LZzxAIwdC9G1xbv2Xobb0lye0FEgrloH9m+H5kx50GgouIhG7dBLaBpc m2FXjQBVVJeHpz9eUmr8k1eGh17RI5Vvvo2aHE6G9vtj+6aUbhfYb2Iv+F7F/vlAaYlX UawrO8l+hZFWbPTJ3GEkNb865n/jW9huuzrBZDm15xA5zn/HmuLht505ayqUTJGpiwbj bvsvVL8kJUF9WYzqbujjZ2afeabGo31631iFKmAGOsaGTcK5RUIe05OdwALpDw0MBQsC AS117yE19f43c2hD9mlFVdy/e4UVvKYO/PhY5mD8ut0HAPBKkz/1GagjnyP3izi4qB8n 4DDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=Fu5YG+tnY0E//uqpF6lZ+RicknIhLEMsC+SR5Ibz7SQ=; b=Jtw1CUFH/m/9YvOp2wvexrXtjW/KmhnEgvq/+yUtjsclCpIZNnpgAiuOMunkmCeo6t jJaPI8rusAUMSa+Dw8pLQ/3t7yOr7WKX2S33JGqt2n5nlXN3PwQg3tvOjmQOtavnan8n S4D9uDY+iWUkCmbsB1Wy4RQx75Tlzr8G+U4NoErrgdDDSfw4uDirmBHP6G3X+tGoY/RZ isyLAdjtvzjVDuMfSW7TRtfk8HLH77u4F7jLgpPlZRBHa9b6rGSb/azEEqzUpzR9TEdW GU3+P7//03arLJYOVa7Nx/SpRhv7uWIfs3Qi3WVR5ByriSmSMeqhU5p0QLAohNWGIPGI PAWA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b13si26616661edw.300.2021.01.02.01.54.05; Sat, 02 Jan 2021 01:54:46 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726487AbhABJv4 (ORCPT + 99 others); Sat, 2 Jan 2021 04:51:56 -0500 Received: from mail.zju.edu.cn ([61.164.42.155]:22520 "EHLO zju.edu.cn" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726388AbhABJvz (ORCPT ); Sat, 2 Jan 2021 04:51:55 -0500 Received: from localhost.localdomain (unknown [10.192.85.18]) by mail-app4 (Coremail) with SMTP id cS_KCgBnIzjmQfBfeKpHAA--.34728S4; Sat, 02 Jan 2021 17:50:34 +0800 (CST) From: Dinghao Liu To: dinghao.liu@zju.edu.cn, kjlu@umn.edu Cc: David Woodhouse , Lu Baolu , Joerg Roedel , Will Deacon , Jiang Liu , Thomas Gleixner , iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: [PATCH] iommu/intel: Fix memleak in intel_irq_remapping_alloc Date: Sat, 2 Jan 2021 17:50:29 +0800 Message-Id: <20210102095029.29053-1-dinghao.liu@zju.edu.cn> X-Mailer: git-send-email 2.17.1 X-CM-TRANSID: cS_KCgBnIzjmQfBfeKpHAA--.34728S4 X-Coremail-Antispam: 1UD129KBjvdXoWrtw45Jw15Wr13GrWxtr15twb_yoWfWFgEkw 13try3WFy5uFn5Zr12vFsxZ34qkw4Ygrn7JrZ5ta4fAw18Zr1kur93ZFWkAFsxG3yUGFW7 CrW3GrWfA348ZjkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUIcSsGvfJTRUUUbVxFc2x0x2IEx4CE42xK8VAvwI8IcIk0rVWrJVCq3wAFIxvE14AK wVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK021l84ACjcxK6xIIjxv20x vE14v26w1j6s0DM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4UJVWxJr1l84ACjcxK6I8E 87Iv67AKxVW0oVCq3wA2z4x0Y4vEx4A2jsIEc7CjxVAFwI0_GcCE3s1le2I262IYc4CY6c 8Ij28IcVAaY2xG8wAqx4xG64xvF2IEw4CE5I8CrVC2j2WlYx0E2Ix0cI8IcVAFwI0_Jr0_ Jr4lYx0Ex4A2jsIE14v26r1j6r4UMcvjeVCFs4IE7xkEbVWUJVW8JwACjcxG0xvY0x0EwI xGrwACjI8F5VA0II8E6IAqYI8I648v4I1lFIxGxcIEc7CjxVA2Y2ka0xkIwI1l42xK82IY c2Ij64vIr41l42xK82IY6x8ErcxFaVAv8VW8uw4UJr1UMxC20s026xCaFVCjc4AY6r1j6r 4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF 67AKxVWUtVW8ZwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1xMIIF0xvE2I x0cI8IcVCY1x0267AKxVWUJVW8JwCI42IY6xAIw20EY4v20xvaj40_WFyUJVCq3wCI42IY 6I8E87Iv67AKxVWUJVW8JwCI42IY6I8E87Iv6xkF7I0E14v26r4j6r4UJbIYCTnIWIevJa 73UjIFyTuYvjfUoOJ5UUUUU X-CM-SenderInfo: qrrzjiaqtzq6lmxovvfxof0/1tbiAg0IBlZdtRuRfAAZsQ Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When irq_domain_get_irq_data() or irqd_cfg() fails meanwhile i == 0, data allocated by kzalloc() has not been freed before returning, which leads to memleak. Fixes: b106ee63abccb ("irq_remapping/vt-d: Enhance Intel IR driver to support hierarchical irqdomains") Signed-off-by: Dinghao Liu --- drivers/iommu/intel/irq_remapping.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/iommu/intel/irq_remapping.c b/drivers/iommu/intel/irq_remapping.c index aeffda92b10b..cdaeed36750f 100644 --- a/drivers/iommu/intel/irq_remapping.c +++ b/drivers/iommu/intel/irq_remapping.c @@ -1354,6 +1354,8 @@ static int intel_irq_remapping_alloc(struct irq_domain *domain, irq_cfg = irqd_cfg(irq_data); if (!irq_data || !irq_cfg) { ret = -EINVAL; + kfree(data); + data = NULL; goto out_free_data; } -- 2.17.1