From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id E503B461A0 for ; Wed, 5 Feb 2025 17:25:07 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DB62D40649; Wed, 5 Feb 2025 17:25:07 +0100 (CET) Received: from mail-pj1-f45.google.com (mail-pj1-f45.google.com [209.85.216.45]) by mails.dpdk.org (Postfix) with ESMTP id 4EB674042E for ; Wed, 5 Feb 2025 17:25:03 +0100 (CET) Received: by mail-pj1-f45.google.com with SMTP id 98e67ed59e1d1-2f9f5caa37cso722358a91.0 for ; Wed, 05 Feb 2025 08:25:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1738772702; x=1739377502; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tQR7HMFBLn+vHlNygZ1YrWong0eA4S4pgzdM13oH2Qg=; b=xYBgxcnjoL7yg5Hw8R0Lx2T6qI6eqpdOnuDdK+06QFgs7mV1RI9tw6gE46zYEB88dL CgJoLeIZJhGPgI4I01I+C55dOJC3H93UsqDsIMA5SOvzTCy8eTaOJlE145N3GFWqD3lQ QZUtD3OsAFNz2oPJlaqwb1gNYa9woJK9wdqc9iDNCZPoq7JRSlVEouWhmtCravikO0JC fquGU/2ftvNsNRs0jtjH17lbUshHOPLzIeHq5Y0uj8HZxIsmadPP0WTuuWwE0nlGx6Yt vYjIvo76xnenRqzE0qLXN8matMvyYJasavMI2deg734nfxIMhNqcvK4sA0+Smt7yczRj DzWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738772702; x=1739377502; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tQR7HMFBLn+vHlNygZ1YrWong0eA4S4pgzdM13oH2Qg=; b=DOrsF9ABNRWcbRIZsUcQx6sUgfTsmkrPZfg4PL+qyWSbdFqK+rkZ/V58fYpEK+btIS bJWGSI5GylbPEQyk3Od2zVz1qTw/i5VXPYT01RudcUBYYk9UA7X8MRASYJD7cF74CPAs P2abevFMPS8LE9J8JChFMCTEg+ZcvEJCnSIxGr0Xd1U9uV+MbJrAnkLc3pjzLPKuwqcD BKzmJ1izr/XeJ7CI0PaY2aQIkWOcMSD5HY0lSVzVUHCgf71EuyOkIrypfcV4WzVCDz+n LDd1i9uiqzill/0kbe4fAD2hfEKoTXdaFPQVSuELr5unRXonbBf31QADV9I5KRWViXoa nsPg== X-Forwarded-Encrypted: i=1; AJvYcCXDYDOuEw8v2QeZBdGi0zazKzeukyLLaX5RBuCZhkvYW79PDeSTBRXaewWSxxR7wgFqi1DuQ1Y=@dpdk.org X-Gm-Message-State: AOJu0YzwJYuSBAOYGhIwFx6yHLwUg2Wg34wEooBImqVdNmvfBA5b6Ruy D7hMkAxdflvKdsT4WP5SRK70ToJZb1yILTkFMyW1NkGbR51R24YTtTWsmmxibGc= X-Gm-Gg: ASbGncsNGWKRBu+2h8LUEO8g/KSvfs4wCqZdzuR5BnIwt2ql4yxy5BUYDA1TNtH6oAD 4bUL+Pwxm/HAeFcFCVPmCjKvi19ExrlrS28/vRwunCsHYvQZZTlf6uzzgIwvFKXV7kH1M7Jc/sj J2HEIsybMC4ApsQIRzyRQr8dYAque4vsHrQHeQEuFbnG3a3jT1KFI9RXZxz8BBXlh2Wx7G0PQ5a F87X0v99EIWbjBHRSDQfKTrm1ySHCQIka4xvqzB93Juz35Qv9Bf8dgkzSeWh7/WC2Ly1Y3JSeTX zbaC3osBoSNx1p5RUaVADWbtkPSs1jO0uz7G31xNwkSa8cWkMMkBdcyBW9cj4HJDlqv5 X-Google-Smtp-Source: AGHT+IEkXVgCaAp3Fud+979m5DDQ4vmW3r6bMjIc5fgQ/PI46BDwvpgM5tiqI+svOmZbtIGDg1L2oA== X-Received: by 2002:a17:90b:1d88:b0:2ee:823e:39c4 with SMTP id 98e67ed59e1d1-2f9fddd6945mr125358a91.7.1738772702491; Wed, 05 Feb 2025 08:25:02 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2f9c314b64fsm2138965a91.1.2025.02.05.08.25.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 08:25:02 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , tduszynski@marvell.com, stable@dpdk.org, Jakub Palider Subject: [PATCH v3 03/19] raw/cnxk_gpio: fix file descriptor leak Date: Wed, 5 Feb 2025 08:23:04 -0800 Message-ID: <20250205162448.161161-4-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250205162448.161161-1-stephen@networkplumber.org> References: <20241115060738.313190-1-stephen@networkplumber.org> <20250205162448.161161-1-stephen@networkplumber.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org The function would leak file if fscanf failed. There is a working version in other file, clone that. Link: https://pvs-studio.com/en/blog/posts/cpp/1183/ Fixes: 0e6557b448fa ("raw/cnxk_gpio: add self test") Cc: tduszynski@marvell.com Cc: stable@dpdk.org Signed-off-by: Stephen Hemminger --- drivers/raw/cnxk_gpio/cnxk_gpio_selftest.c | 24 ++++++++++++++-------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/drivers/raw/cnxk_gpio/cnxk_gpio_selftest.c b/drivers/raw/cnxk_gpio/cnxk_gpio_selftest.c index 2f3973a7b5..a0d9942f20 100644 --- a/drivers/raw/cnxk_gpio/cnxk_gpio_selftest.c +++ b/drivers/raw/cnxk_gpio/cnxk_gpio_selftest.c @@ -34,24 +34,30 @@ cnxk_gpio_attr_exists(const char *attr) static int cnxk_gpio_read_attr(char *attr, char *val) { + int ret, ret2; FILE *fp; - int ret; fp = fopen(attr, "r"); if (!fp) return -errno; ret = fscanf(fp, "%s", val); - if (ret < 0) - return -errno; - if (ret != 1) - return -EIO; + if (ret < 0) { + ret = -errno; + goto out; + } + if (ret != 1) { + ret = -EIO; + goto out; + } - ret = fclose(fp); - if (ret) - return -errno; + ret = 0; +out: + ret2 = fclose(fp); + if (!ret) + ret = ret2; - return 0; + return ret; } #define CNXK_GPIO_ERR_STR(err, str, ...) do { \ -- 2.47.2