From nobody Tue Dec 2 01:51:36 2025 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B27E11E32B7 for ; Thu, 20 Nov 2025 17:00:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763658018; cv=none; b=PXeUxqGU9ZhullJ/10M+1ubHEdamXox4vGTeueqSH2H+jmxnYHkUskIXJNqfDYUho40o9I5tUOU63Aj1XdZMSVBeoVfU4NCTAnVj9Kp78rOowYFnuOmE8uAYc7R+DqppQ8FNCpKRmg6Y+/X/pk1YxPD8jz82YmyQeYA2jVB5v9o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763658018; c=relaxed/simple; bh=l79bhb8Rml19lkkEmkA0c+LZL1ScG7jhO+hl9yufoGI=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Z5yBrMfUQ6ZpCdOeCQkR19lPS8HkVUJh4Dx8oo/IepLnzbN2JEnnZKq4jTY96s4HHiwSTCKrSFmaZb60AL2Vd3JibV2faEnX3k20g1COnnaBjVx/eZZP+K/UyHm2/XRFabD4w58icmknGSsfbw1WGm/LovAnC49BaCmALd/QXXI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=Cjl2JNrS; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="Cjl2JNrS" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763658015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=Zql52UJpb99WilLwYKYnbYuQW8tcqMVBJhzSSFgCSFM=; b=Cjl2JNrS0MADLwLxc4qF53C1sZ5GXKu0FRxOc788POavZ3UbrwAEVInk0UmHOlj0rLBpoe GH2hCKxxMs8I3SMBZgA7zD0ghrFuc3PvaJro8yEqoc7HvHXxx+MyJ5a+nWeqaIvlpCUvZT 9Fd6McF0sryhfFSeptoaf6TD5uUBllA= Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-131-gK0dQdIkPhek7Kcg_qLZnw-1; Thu, 20 Nov 2025 12:00:11 -0500 X-MC-Unique: gK0dQdIkPhek7Kcg_qLZnw-1 X-Mimecast-MFC-AGG-ID: gK0dQdIkPhek7Kcg_qLZnw_1763658009 Received: from mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 82476195606D; Thu, 20 Nov 2025 17:00:09 +0000 (UTC) Received: from mrout-thinkpadp16vgen1.punetw6.csb (unknown [10.74.80.121]) by mx-prod-int-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id ADB6B1800878; Thu, 20 Nov 2025 17:00:05 +0000 (UTC) From: Malaya Kumar Rout To: linux-kernel@vger.kernel.org Cc: mrout@redhat.com, lyude@redhat.com, malayarout91@gmail.com, "Rafael J. Wysocki" , Len Brown , Robert Moore , linux-acpi@vger.kernel.org, acpica-devel@lists.linux.dev Subject: [PATCH] ACPI: tools: pfrut: fix memory leak and resource leak in pfrut.c Date: Thu, 20 Nov 2025 22:29:58 +0530 Message-ID: <20251120170001.251968-1-mrout@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.93 Content-Type: text/plain; charset="utf-8" Static analysis found an issue in pfrut.c cppcheck output before this patch: tools/power/acpi/tools/pfrut/pfrut.c:225:3: error: Resource leak: fd_update= [resourceLeak] tools/power/acpi/tools/pfrut/pfrut.c:269:3: error: Resource leak: fd_update= [resourceLeak] tools/power/acpi/tools/pfrut/pfrut.c:269:3: error: Resource leak: fd_update= _log [resourceLeak] tools/power/acpi/tools/pfrut/pfrut.c:365:4: error: Memory leak: addr_map_ca= psule [memleak] tools/power/acpi/tools/pfrut/pfrut.c:424:4: error: Memory leak: log_buf [me= mleak] cppcheck output after this patch: No resource leaks found Fix by closing file descriptors and freeing allocated memory. Signed-off-by: Malaya Kumar Rout --- tools/power/acpi/tools/pfrut/pfrut.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/power/acpi/tools/pfrut/pfrut.c b/tools/power/acpi/tools/= pfrut/pfrut.c index 44a9ecbd91e8..4d9b0177c312 100644 --- a/tools/power/acpi/tools/pfrut/pfrut.c +++ b/tools/power/acpi/tools/pfrut/pfrut.c @@ -222,6 +222,7 @@ int main(int argc, char *argv[]) fd_update_log =3D open("/dev/acpi_pfr_telemetry0", O_RDWR); if (fd_update_log < 0) { printf("PFRT device not supported - Quit...\n"); + close(fd_update); return 1; } =20 @@ -265,7 +266,8 @@ int main(int argc, char *argv[]) printf("chunk2_size:%d\n", data_info.chunk2_size); printf("rollover_cnt:%d\n", data_info.rollover_cnt); printf("reset_cnt:%d\n", data_info.reset_cnt); - + close(fd_update); + close(fd_update_log); return 0; } =20 @@ -358,6 +360,7 @@ int main(int argc, char *argv[]) =20 if (ret =3D=3D -1) { perror("Failed to load capsule file"); + munmap(addr_map_capsule, st.st_size); close(fd_capsule); close(fd_update); close(fd_update_log); @@ -420,7 +423,7 @@ int main(int argc, char *argv[]) if (p_mmap =3D=3D MAP_FAILED) { perror("mmap error."); close(fd_update_log); - + free(log_buf); return 1; } =20 --=20 2.51.0