From nobody Fri Jul 24 21:52:58 2026 Received: from m16.mail.163.com (m16.mail.163.com [117.135.210.3]) (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 1597534D398; Thu, 23 Jul 2026 08:51:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=117.135.210.3 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796713; cv=none; b=oSBoDZlgxMeSBBO7jzO8QM/T+A6VtEeOslsGxe9pk3hhlClbbMIZ2aep/XyRrOsayOk8GWKBMRZgCuVmqV8MfQxwjg0FNDXS5jbmZkJ46n/ZlF6n2tBOr56CfNZWQCHwiMZc2giS9NL7MeNrrL0tYr4Ca6GfN8VHgMu+dUvscCQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796713; c=relaxed/simple; bh=tgM9o/DpEvL50YP7AXAiYHsExbCXemZgNAnHESGJKTE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ESEbtJN86UBayKzfxO+NDDZwyFmgaJr2o2Bo1xkbIgDhfUe7bMRtBkq51OOElYj1w3sD7f0YDJwNDxIOD06L30mA9DMivC8ikSC3OqYxo5hTTMhPgoxbQU2LqESUvtrEUGO5SzgAcs+vfsCWIEPVa5ARfBepW52N7sX0nqL1IMg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=NLwZPRms; arc=none smtp.client-ip=117.135.210.3 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="NLwZPRms" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=aj 4zqliLEwXTaW1eZQaP/YZLdrTirAHsc39CRSxXaEM=; b=NLwZPRms10tjGHngim s0O13zS8opeqhhYlJkQ0QXf4AlhqwnqP4ionJeKiTKc+bvqGS4JD+Z8wqIs9haap Jx44HkdGq/nAVhfghb+WFwqHF8YNFbIqpAGXbFG4cEqyFC0S/CgSvWrAnFWOSCk0 IyojapPpKvwB5KGjeNOFWPSxs= Received: from localhost.localdomain (unknown []) by gzsmtp4 (Coremail) with SMTP id PygvCgAXxSj01WFqpPy0Ig--.27305S3; Thu, 23 Jul 2026 16:51:02 +0800 (CST) From: Feng Yang To: andrii@kernel.org, eddyz87@gmail.com, ast@kernel.org, daniel@iogearbox.net, memxor@gmail.com, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, jolsa@kernel.org, emil@etsalapatis.com Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 bpf-next 1/5] selftests/bpf: Fix double free of subtest_state->name Date: Thu, 23 Jul 2026 16:50:56 +0800 Message-Id: <20260723085100.482147-2-yangfeng59949@163.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260723085100.482147-1-yangfeng59949@163.com> References: <20260723085100.482147-1-yangfeng59949@163.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-CM-TRANSID: PygvCgAXxSj01WFqpPy0Ig--.27305S3 X-Coremail-Antispam: 1Uf129KBjvdXoWruF4ftryfXFyrCr17Zr43KFg_yoWfCFXE9w 4UXrs7GF10yay5A3WUGr1FkrWkZw4Uur4kXrnIqF13Jay5Xa1DXF4kur1qyas8W39xJa9I van3G3s3Kr1rujkaLaAFLSUrUUUUjb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7IU8S1v7UUUUU== X-CM-SenderInfo: p1dqww5hqjkmqzuzqiywtou0bp/xtbCzxalHmph1famvgAA3S Content-Type: text/plain; charset="utf-8" From: Feng Yang The name has already been freed in the free_subtest_state function and does not need to be freed again. Fixes: 0925225956bb ("bpf/selftests: Add granular subtest output for prog_t= est") Signed-off-by: Feng Yang --- tools/testing/selftests/bpf/test_progs.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/testing/selftests/bpf/test_progs.c b/tools/testing/selft= ests/bpf/test_progs.c index 7ba82974ee78..1d3caf996971 100644 --- a/tools/testing/selftests/bpf/test_progs.c +++ b/tools/testing/selftests/bpf/test_progs.c @@ -1886,7 +1886,6 @@ static int worker_main_send_subtests(int sock, struct= test_state *state) worker_main_send_log(sock, subtest_state->log_buf, subtest_state->log_c= nt); =20 free_subtest_state(subtest_state); - free(subtest_state->name); } =20 out: --=20 2.43.0 From nobody Fri Jul 24 21:52:58 2026 Received: from m16.mail.163.com (m16.mail.163.com [117.135.210.4]) (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 9265B40DB51; Thu, 23 Jul 2026 08:51:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=117.135.210.4 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796717; cv=none; b=djS8ebHcTeqpiiaH8C6z1sSTToRb9Y0FIK2wzBIHEICSaZUnMi8N0KL62VgmiTPtjVdTygdGsKVyOS6anY6GXGHNVUa4tRuWiS5f0vmR3Y8rdTGKNJ7qrrWKh0ovpufqdagwImITEGbgnzNmzjBGmYGGYyRGMDpzK2TJ2DntVl0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796717; c=relaxed/simple; bh=4jt08HWavyPeqdMcuCma0f035xaKPXok7cPySFRUqD0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=UzF9lX43bB2b2o5FHAg48fJgnWyFJ039kfTUBQruoIWLjJWe9jwGncaVKK7LLBgvgaC/o5nrsZ+1MvuPjwME7kWG4z1sGMHm36lAgO/KJk6ZACv55FsjBjWCyI/yBuMHfizp5HEZY9mfVYiBTJ+vFfCxK0W5OPBShiEf8+V+vuk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=O91GrqTi; arc=none smtp.client-ip=117.135.210.4 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="O91GrqTi" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=ra y0Oeu3QzGbxH9FJ4xNi5EQNc2DP3IdHBdATKlGbCo=; b=O91GrqTitstPxdfbpy zj7n9qsRVcfVSjuC1AjBPynSfyc8GDSU7hGpy1tb/JisP07aw/SXJ6j8Gf9vXWol 6njKjobHUhm0s7XJrxZNJoF8/1I61Zj0oTYRe1sFJxp7vGY8NLvveyY5ftE9JsOB j11FNeil92uLCiicspj7Mj5kw= Received: from localhost.localdomain (unknown []) by gzsmtp4 (Coremail) with SMTP id PygvCgAXxSj01WFqpPy0Ig--.27305S4; Thu, 23 Jul 2026 16:51:02 +0800 (CST) From: Feng Yang To: andrii@kernel.org, eddyz87@gmail.com, ast@kernel.org, daniel@iogearbox.net, memxor@gmail.com, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, jolsa@kernel.org, emil@etsalapatis.com Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 bpf-next 2/5] selftests/bpf: Fix incorrect error checking for pthread_create Date: Thu, 23 Jul 2026 16:50:57 +0800 Message-Id: <20260723085100.482147-3-yangfeng59949@163.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260723085100.482147-1-yangfeng59949@163.com> References: <20260723085100.482147-1-yangfeng59949@163.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-CM-TRANSID: PygvCgAXxSj01WFqpPy0Ig--.27305S4 X-Coremail-Antispam: 1Uf129KBjvdXoWrKF4fKrWxZF17tr15KF13CFg_yoWktrg_ur 48Jrn7urs8AF98Ar1IgF1rurWIgw4Y9r40qr4DJFy3tw45GFWDXr4kZrn0yas7WrZ8Gaya qrZYqwnIka1FkjkaLaAFLSUrUUUUjb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7IU8N6pDUUUUU== X-CM-SenderInfo: p1dqww5hqjkmqzuzqiywtou0bp/xtbC0BalHmph1favwQAA37 Content-Type: text/plain; charset="utf-8" From: Feng Yang pthread_create returns 0 on success and a positive error code on failure; it never returns a negative value. The current conditional branch can never= be taken. Failures during thread creation are silently ignored, which will lead to invalid memory access when waiting on threads or dereferencing thread handl= es later. Fixes: 91b2c0afd00c ("selftests/bpf: Add parallelism to test_progs") Signed-off-by: Feng Yang --- tools/testing/selftests/bpf/test_progs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/bpf/test_progs.c b/tools/testing/selft= ests/bpf/test_progs.c index 1d3caf996971..312743c4337f 100644 --- a/tools/testing/selftests/bpf/test_progs.c +++ b/tools/testing/selftests/bpf/test_progs.c @@ -1741,7 +1741,7 @@ static void server_main(void) data[i].worker_id =3D i; data[i].sock_fd =3D env.worker_socks[i]; rc =3D pthread_create(&dispatcher_threads[i], NULL, dispatch_thread, &da= ta[i]); - if (rc < 0) { + if (rc) { perror("Failed to launch dispatcher thread"); exit(EXIT_ERR_SETUP_INFRA); } --=20 2.43.0 From nobody Fri Jul 24 21:52:58 2026 Received: from m16.mail.163.com (m16.mail.163.com [220.197.31.4]) (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 7126D40D562; Thu, 23 Jul 2026 08:51:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.4 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796722; cv=none; b=eD2dOF4S02lb8LxUm09zzvZhcqsM6s08E86gqS8xUmpvqpvZGNwyedpCUDHcP3hwwBd7vYntGQzyzXGYbglIfLX0ZXhWmWuqRfAFofoYGLNcR3LROoDFxZGb2kvaWBDmFxyb5rzDE97k16vqwtJe5nOVj0a02bdkdFrnKWIfX1U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796722; c=relaxed/simple; bh=MgE+UXon5rQaloIoY4oihijPCPm/+kUwqkDhSWvZQd0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=PjfXdJ3/zl1ubi9Yu5ZPpn/wuJHaS8Q7Y9VF7HEFq+wOCXMNev1Pn5CZOoLzHvVIMwpGijxeBtRmwd9CHCl+OKBTs6vzbWq7MQRq1K2R2wH/oI1I5zE7i0npOQu0W0Y07P+TWEB/X74ztkRQC+led/eDsG6UKHm28DQQFk5/Jr4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=jri6bLLV; arc=none smtp.client-ip=220.197.31.4 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="jri6bLLV" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=Mm N/y3uP7cgwc4G0YA5zVpkuGx7uvM2jBgyal0/5sj0=; b=jri6bLLVHxuT+P33WV BlNNUuUmvUE9fmOWOut1j1bt8XpJ/1pSpZ95m6wq/w1mpShbxMaHONi6PcV0E1o2 /q9x6aT7XxE+xxjHuycpHQDoIYTYi6Zd4sYh3LvpYehKXeMKJimHZIZ1QBe4zxGS mT7N33Dzvd3d7raY1JmDAQINk= Received: from localhost.localdomain (unknown []) by gzsmtp4 (Coremail) with SMTP id PygvCgAXxSj01WFqpPy0Ig--.27305S5; Thu, 23 Jul 2026 16:51:02 +0800 (CST) From: Feng Yang To: andrii@kernel.org, eddyz87@gmail.com, ast@kernel.org, daniel@iogearbox.net, memxor@gmail.com, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, jolsa@kernel.org, emil@etsalapatis.com Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 bpf-next 3/5] selftests/bpf: Fix missing allocation null checks in test_progs.c Date: Thu, 23 Jul 2026 16:50:58 +0800 Message-Id: <20260723085100.482147-4-yangfeng59949@163.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260723085100.482147-1-yangfeng59949@163.com> References: <20260723085100.482147-1-yangfeng59949@163.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-CM-TRANSID: PygvCgAXxSj01WFqpPy0Ig--.27305S5 X-Coremail-Antispam: 1Uf129KBjvJXoW7AryDXw43ZrWfuFyDXw43KFg_yoW8Ar15pF WkJr95Kr43XanIqFsxCrWjkF4rKw4vq3yxKayDt347ArnrXr97Kwn7KFWUtFn3urWFvrWf Z3Wv9rsa9r48Ja7anT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jDNVkUUUUU= X-CM-SenderInfo: p1dqww5hqjkmqzuzqiywtou0bp/xtbC0BalHmph1favxAAA3+ Content-Type: text/plain; charset="utf-8" From: Feng Yang Add null checks after memory allocations to prevent potential segmentation = faults. Fixes: 79b453501310 ("tools/bpf: add a test for bpf_get_stack with tracepoi= nt prog") Fixes: 0925225956bb ("bpf/selftests: Add granular subtest output for prog_t= est") Signed-off-by: Feng Yang --- tools/testing/selftests/bpf/test_progs.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/bpf/test_progs.c b/tools/testing/selft= ests/bpf/test_progs.c index 312743c4337f..301c6e11ceaf 100644 --- a/tools/testing/selftests/bpf/test_progs.c +++ b/tools/testing/selftests/bpf/test_progs.c @@ -730,11 +730,14 @@ int compare_map_keys(int map1_fd, int map2_fd) int compare_stack_ips(int smap_fd, int amap_fd, int stack_trace_len) { __u32 key, next_key, *cur_key_p, *next_key_p; - char *val_buf1, *val_buf2; - int i, err =3D 0; + char *val_buf1 =3D NULL, *val_buf2 =3D NULL; + int i, err =3D -ENOMEM; =20 val_buf1 =3D malloc(stack_trace_len); val_buf2 =3D malloc(stack_trace_len); + if (!val_buf1 || !val_buf2) + goto out; + err =3D 0; cur_key_p =3D NULL; next_key_p =3D &key; while (bpf_map_get_next_key(smap_fd, cur_key_p, next_key_p) =3D=3D 0) { @@ -1514,6 +1517,10 @@ static int dispatch_thread_send_subtests(int sock_fd= , struct test_state *state) int subtest_num =3D state->subtest_num; =20 state->subtest_states =3D malloc(subtest_num * sizeof(*subtest_state)); + if (!state->subtest_states) { + state->subtest_num =3D 0; + return -ENOMEM; + } =20 for (int i =3D 0; i < subtest_num; i++) { subtest_state =3D &state->subtest_states[i]; --=20 2.43.0 From nobody Fri Jul 24 21:52:58 2026 Received: from m16.mail.163.com (m16.mail.163.com [220.197.31.3]) (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 2D50B3F4DD7; Thu, 23 Jul 2026 08:51:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.3 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796711; cv=none; b=KZs5PSiQCfaEDpwx5e8vpnHI+Wi/GZvAd56qMbjS96ReiAvmDTxpZDAOSvsdgXS7fYCjJtfLoSUtizTwfYR4BRXGcjJ/SfVLgNuHLesWvM/IzFKuu/t3A4gCW+aTJvpQ7bnKdHB2eCPBPreLxqG5oy+G2zCA7q9cjpfCRZNaafI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796711; c=relaxed/simple; bh=AOxSwF99eJ6SbnSOjDkb8PpXsYPrv8kZ4OYr7ztCjz0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=eFqjRQtriiInGfV0xd9nA+tu1WHzz1JZI0tpj7/N02wxnT4a3dc+JSTJWLJIEukjyEcXzCNIePWoHDlhooZIW2AIFbN1LeJlt/VSjHiitwsD8NgQ8WdzYCOc8znw/unQI6DubY/KYmoSP/G6LNHaFCqk4W2sN1/xfHC6UK3EOOs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=Je6zT7xT; arc=none smtp.client-ip=220.197.31.3 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="Je6zT7xT" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=g/ ZuYoIWJllJl0ZmCrvgDKk/1cZlCliYzgHC6W0UlSg=; b=Je6zT7xTfoos8sdttd p8YzgCbF0hByqnvi7q0nciEzuJQ7yBQQl5hoaH+mAiNPGX0d9naowWTUQNRxgi+j wPpaY8W59+RDINbnsBhceH0Ir4p/S71V2Xaw97xCSC8OD5GfFyDV+fT21N1JYmIc IAlP0NVQLyDVRHoxQEl5oMtPs= Received: from localhost.localdomain (unknown []) by gzsmtp4 (Coremail) with SMTP id PygvCgAXxSj01WFqpPy0Ig--.27305S6; Thu, 23 Jul 2026 16:51:03 +0800 (CST) From: Feng Yang To: andrii@kernel.org, eddyz87@gmail.com, ast@kernel.org, daniel@iogearbox.net, memxor@gmail.com, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, jolsa@kernel.org, emil@etsalapatis.com Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 bpf-next 4/5] selftests/bpf: Use calloc to allocate subtest_states Date: Thu, 23 Jul 2026 16:50:59 +0800 Message-Id: <20260723085100.482147-5-yangfeng59949@163.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260723085100.482147-1-yangfeng59949@163.com> References: <20260723085100.482147-1-yangfeng59949@163.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-CM-TRANSID: PygvCgAXxSj01WFqpPy0Ig--.27305S6 X-Coremail-Antispam: 1Uf129KBjvJXoW7uF4kGFyrKFWfJw4DZF45GFg_yoW8GF13pF WkGr4jgr17tFnIvrnrJr4UArsYgwnrX3yxKryUZw17AF17Xryftrs7K3yjqFnIgrWrZr1r Z3Wv9rs0kw4UtaDanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jndbbUUUUU= X-CM-SenderInfo: p1dqww5hqjkmqzuzqiywtou0bp/xtbC0BelHmph1fev0AAA3q Content-Type: text/plain; charset="utf-8" From: Feng Yang An early return triggered by read_prog_test_msg leaves uninitialized elemen= ts, which leads to memory corruption during free_test_states cleanup. Signed-off-by: Feng Yang --- tools/testing/selftests/bpf/test_progs.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tools/testing/selftests/bpf/test_progs.c b/tools/testing/selft= ests/bpf/test_progs.c index 301c6e11ceaf..07da45230c4b 100644 --- a/tools/testing/selftests/bpf/test_progs.c +++ b/tools/testing/selftests/bpf/test_progs.c @@ -1516,7 +1516,7 @@ static int dispatch_thread_send_subtests(int sock_fd,= struct test_state *state) struct subtest_state *subtest_state; int subtest_num =3D state->subtest_num; =20 - state->subtest_states =3D malloc(subtest_num * sizeof(*subtest_state)); + state->subtest_states =3D calloc(subtest_num, sizeof(*subtest_state)); if (!state->subtest_states) { state->subtest_num =3D 0; return -ENOMEM; @@ -1525,8 +1525,6 @@ static int dispatch_thread_send_subtests(int sock_fd,= struct test_state *state) for (int i =3D 0; i < subtest_num; i++) { subtest_state =3D &state->subtest_states[i]; =20 - memset(subtest_state, 0, sizeof(*subtest_state)); - if (read_prog_test_msg(sock_fd, &msg, MSG_SUBTEST_DONE)) return 1; =20 --=20 2.43.0 From nobody Fri Jul 24 21:52:58 2026 Received: from m16.mail.163.com (m16.mail.163.com [220.197.31.2]) (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 D741D30D41E; Thu, 23 Jul 2026 08:51:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.2 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796713; cv=none; b=l1ouQQPnP7Q316SGN0f1reSjmHhOfmFeDyirg3u0t4gJR7p7xpTr7CgupVJPYwy88gl6jTZwxteqwjLkx9Uk5eDY+b2i2qA+r7I+D1JNeP14wtAToPvbhCWx7NvFaAVIqlO5q3SNnn4nhs4ZQw7vGNhLr1GEHD0wuMZhVvLT+wE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784796713; c=relaxed/simple; bh=Ptv3KKXYe9IIyp076Rfs11b3OoD014ljlRkwecbsQN0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=X9DVxVjqB6N4FsJv4CwnpOhzbyzokWdmD2TzzyvmQeUmwpJ0T/cmfo6nLocwYwMmR8atYjE8KSJ+1OugidddSGeFgMX0CJxa2rBOD+o6qPG9V0lGQkdSQXUPR/7/KKHAw6xvQ4wP5agAvsBCsqADkcNcjvXMmuLSsMeEzka0/es= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=mixBmNrG; arc=none smtp.client-ip=220.197.31.2 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="mixBmNrG" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=OD vUJpcRF5+MzbyTiaOy2oxOnDk3KNf2ayxIkVFMbzk=; b=mixBmNrGbZ4l14zKeB kgHiVJrbLJlIyZ+o0qI51DrRUwPOAY2sE/q1zMgBufBWJfJlDMJVUPfacBRKo6V9 KMieNJJVrb6849t7MTmrdveVOzf7SMuBq231loOSwOK58e+nI4+UkYWwBGiDLwna /3JHLacxzelSE9Y2SMr3AEYqo= Received: from localhost.localdomain (unknown []) by gzsmtp4 (Coremail) with SMTP id PygvCgAXxSj01WFqpPy0Ig--.27305S7; Thu, 23 Jul 2026 16:51:03 +0800 (CST) From: Feng Yang To: andrii@kernel.org, eddyz87@gmail.com, ast@kernel.org, daniel@iogearbox.net, memxor@gmail.com, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, jolsa@kernel.org, emil@etsalapatis.com Cc: bpf@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 bpf-next 5/5] selftests/bpf: Fix memory leak on subtest_states reallocation Date: Thu, 23 Jul 2026 16:51:00 +0800 Message-Id: <20260723085100.482147-6-yangfeng59949@163.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20260723085100.482147-1-yangfeng59949@163.com> References: <20260723085100.482147-1-yangfeng59949@163.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-CM-TRANSID: PygvCgAXxSj01WFqpPy0Ig--.27305S7 X-Coremail-Antispam: 1Uf129KBjvJXoW7tFWxXFW5Xr1UAFyxXF17GFg_yoW8Xr1rpF WkGrWrKr13JFsxZrnrJr1Uua9YgryIqw4xK34jy34UAF17Xr93trn7t3yUtrsxJrWrZr4F v3Wv9rs8Zw48XFUanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jnBMtUUUUU= X-CM-SenderInfo: p1dqww5hqjkmqzuzqiywtou0bp/xtbC0BelHmph1fev3gAA3k Content-Type: text/plain; charset="utf-8" From: Feng Yang Fix memory leak in subtest_states reallocation, and revert subtest_num if allocation fails. Fixes: 0925225956bb ("bpf/selftests: Add granular subtest output for prog_t= est") Signed-off-by: Feng Yang --- tools/testing/selftests/bpf/test_progs.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/bpf/test_progs.c b/tools/testing/selft= ests/bpf/test_progs.c index 07da45230c4b..aa06bab30966 100644 --- a/tools/testing/selftests/bpf/test_progs.c +++ b/tools/testing/selftests/bpf/test_progs.c @@ -573,18 +573,19 @@ bool test__start_subtest_with_desc(const char *subtes= t_name, const char *subtest struct subtest_state *subtest_state; const char *subtest_display_name; size_t sub_state_size =3D sizeof(*subtest_state); + void *tmp; =20 if (env.subtest_state) test__end_subtest(); =20 state->subtest_num++; - state->subtest_states =3D - realloc(state->subtest_states, - state->subtest_num * sub_state_size); - if (!state->subtest_states) { + tmp =3D realloc(state->subtest_states, state->subtest_num * sub_state_siz= e); + if (!tmp) { + state->subtest_num--; fprintf(stderr, "Not enough memory to allocate subtest result\n"); return false; } + state->subtest_states =3D tmp; =20 subtest_state =3D &state->subtest_states[state->subtest_num - 1]; =20 --=20 2.43.0