From nobody Sat Feb 7 18:15:12 2026 Received: from out-180.mta0.migadu.com (out-180.mta0.migadu.com [91.218.175.180]) (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 D5610230D35 for ; Thu, 27 Feb 2025 14:27:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740666441; cv=none; b=pZW1jAbKlAMqZQzlv6SoY47yI5R2ROz7MGjnqAEHWsay3XjFwh5G9QCkdq5iFDYtAkA57TuOliYl7SDOhci2a/q+D1hejNA3a3plJ33JDBfQJLBI1bXfpAeUAfC7PPcVQnY58qFw7UXsmxAWIOuDdfJYdqeIXRlf44JXgvgs19M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740666441; c=relaxed/simple; bh=9NJh4qWBaG6Re9XAkRIRu/sfCXk4U7OusKRVt14Xt5o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=QAVgkxrzXe8+DJtTKCEj++5XwUNxlpjeoYQ9YqcX3TgjHLOitAckOgpkMProekyKJ5QmUueHRgYVqGa5dyJMRWCVfRu6RvbDUz6FYEslAzLk2+sINuiSijHnDVL/bbkhaop+18Qas0SAshT+CK0CjVQ4OPDdKPD/ZBc8MohxG4Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=nwmWaF96; arc=none smtp.client-ip=91.218.175.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="nwmWaF96" X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1740666436; 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: in-reply-to:in-reply-to:references:references; bh=s7AvVgItQBcIy3/yElChkvzIw9QALk+tx+dIFetvRkg=; b=nwmWaF96KstZUIDUwvmXpOsGOBzSQAJeUTep86aEKE0QY40D4ZU8xwstYHcScmI/ZkCKud BZ2OaoQXOqd07v0dJJA5DKbILtc0UF32ch5v9wEG1G7rObojUixm0EvtJX4vMlCUZrENFQ lN8Ykv+OXzoFmEIvecUy6DvzYcOBviY= From: Jiayuan Chen To: bpf@vger.kernel.org Cc: john.fastabend@gmail.com, davem@davemloft.net, kuba@kernel.org, andrii@kernel.org, eddyz87@gmail.com, mykolal@fb.com, ast@kernel.org, daniel@iogearbox.net, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, kpsingh@kernel.org, sdf@fomichev.me, haoluo@google.com, jolsa@kernel.org, shuah@kernel.org, hawk@kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, mrpre@163.com, Jiayuan Chen Subject: [PATCH bpf-next v1 1/3] selftests/bpf: Allow auto port binding for cgroup connect Date: Thu, 27 Feb 2025 22:26:44 +0800 Message-ID: <20250227142646.59711-2-jiayuan.chen@linux.dev> In-Reply-To: <20250227142646.59711-1-jiayuan.chen@linux.dev> References: <20250227142646.59711-1-jiayuan.chen@linux.dev> 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-Migadu-Flow: FLOW_OUT Content-Type: text/plain; charset="utf-8" Allow auto port binding for cgroup connect test to avoid binding conflict. Result: ./test_progs -a cgroup_v1v2 59 cgroup_v1v2:OK Summary: 1/0 PASSED, 0 SKIPPED, 0 FAILED Signed-off-by: Jiayuan Chen --- .../testing/selftests/bpf/prog_tests/cgroup_v1v2.c | 13 +++++++++---- .../testing/selftests/bpf/progs/connect4_dropper.c | 4 +++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/tools/testing/selftests/bpf/prog_tests/cgroup_v1v2.c b/tools/t= esting/selftests/bpf/prog_tests/cgroup_v1v2.c index 64abba72ac10..37c1cc52ed98 100644 --- a/tools/testing/selftests/bpf/prog_tests/cgroup_v1v2.c +++ b/tools/testing/selftests/bpf/prog_tests/cgroup_v1v2.c @@ -10,12 +10,18 @@ static int run_test(int cgroup_fd, int server_fd, bool classid) { struct connect4_dropper *skel; - int fd, err =3D 0; + int fd, err =3D 0, port; =20 skel =3D connect4_dropper__open_and_load(); if (!ASSERT_OK_PTR(skel, "skel_open")) return -1; =20 + port =3D get_socket_local_port(server_fd); + if (!ASSERT_GE(port, 0, "get_socket_local_port")) + return -1; + + skel->bss->port =3D ntohs(port); + skel->links.connect_v4_dropper =3D bpf_program__attach_cgroup(skel->progs.connect_v4_dropper, cgroup_fd); @@ -48,10 +54,9 @@ void test_cgroup_v1v2(void) { struct network_helper_opts opts =3D {}; int server_fd, client_fd, cgroup_fd; - static const int port =3D 60120; =20 /* Step 1: Check base connectivity works without any BPF. */ - server_fd =3D start_server(AF_INET, SOCK_STREAM, NULL, port, 0); + server_fd =3D start_server(AF_INET, SOCK_STREAM, NULL, 0, 0); if (!ASSERT_GE(server_fd, 0, "server_fd")) return; client_fd =3D connect_to_fd_opts(server_fd, &opts); @@ -66,7 +71,7 @@ void test_cgroup_v1v2(void) cgroup_fd =3D test__join_cgroup("/connect_dropper"); if (!ASSERT_GE(cgroup_fd, 0, "cgroup_fd")) return; - server_fd =3D start_server(AF_INET, SOCK_STREAM, NULL, port, 0); + server_fd =3D start_server(AF_INET, SOCK_STREAM, NULL, 0, 0); if (!ASSERT_GE(server_fd, 0, "server_fd")) { close(cgroup_fd); return; diff --git a/tools/testing/selftests/bpf/progs/connect4_dropper.c b/tools/t= esting/selftests/bpf/progs/connect4_dropper.c index d3f4c5e4fb69..a3819a5d09c8 100644 --- a/tools/testing/selftests/bpf/progs/connect4_dropper.c +++ b/tools/testing/selftests/bpf/progs/connect4_dropper.c @@ -13,12 +13,14 @@ #define VERDICT_REJECT 0 #define VERDICT_PROCEED 1 =20 +int port; + SEC("cgroup/connect4") int connect_v4_dropper(struct bpf_sock_addr *ctx) { if (ctx->type !=3D SOCK_STREAM) return VERDICT_PROCEED; - if (ctx->user_port =3D=3D bpf_htons(60120)) + if (ctx->user_port =3D=3D bpf_htons(port)) return VERDICT_REJECT; return VERDICT_PROCEED; } --=20 2.47.1 From nobody Sat Feb 7 18:15:12 2026 Received: from out-179.mta0.migadu.com (out-179.mta0.migadu.com [91.218.175.179]) (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 904082376EC for ; Thu, 27 Feb 2025 14:27:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740666447; cv=none; b=oklM+yLchdDpqOB7LSMPsPZoGPkOXsmcWBMKWhBYzTvAfuA5AlgRF9YS4MHKMHmozvFKqOvyGeO5FZR5MuyBBp4XT0Fi2YMGBFTcZFCKiBZSzgv/jAHbuNKdeMpovzBPlRNfx/qgkeC6U6rQisPkE615fKyvWKrIP3ch5w04OCs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740666447; c=relaxed/simple; bh=rDWiyqunZGTOtFOaj6bPovFS1empQsc83Ctjli5d8AA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JPx5Kq70oaCaU9C5UHhpr6OJBmFQr1O8rLpzPqjHGYk+m/hbXL4J/JuJo1i4DMLuYCvRlEKr4gmCn9uzJNEx9STbiJC5wU4QVUEYvYTpJ5iIO3D71s8l7XjuWO/eNxJ1ddbcNg6suReaVmhQntbbT/g5dQ7g+/x9kfH7uQTjZBU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=gNGnGPuk; arc=none smtp.client-ip=91.218.175.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="gNGnGPuk" X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1740666443; 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: in-reply-to:in-reply-to:references:references; bh=ZM2tKqXjjo4I4618vU5KeTgE7YE43jJgVbf+MnAQmK4=; b=gNGnGPuk3qV2Kf4osot90TYQKn6u2hTi1fGtYIo6FtHBtsVui939+Ge7rD9knRdCvppp71 zyHz7s0ufy2lNLANAc8V0OZ5R+eNb6TnTLIabEfLb9KyTCMn2E48zOqrCbn4pZdEjvdFFS VzuUybXQq/8gcQP4QNpg16iBBkyrWZY= From: Jiayuan Chen To: bpf@vger.kernel.org Cc: john.fastabend@gmail.com, davem@davemloft.net, kuba@kernel.org, andrii@kernel.org, eddyz87@gmail.com, mykolal@fb.com, ast@kernel.org, daniel@iogearbox.net, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, kpsingh@kernel.org, sdf@fomichev.me, haoluo@google.com, jolsa@kernel.org, shuah@kernel.org, hawk@kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, mrpre@163.com, Jiayuan Chen Subject: [PATCH bpf-next v1 2/3] selftests/bpf: Allow auto port binding for bpf nf Date: Thu, 27 Feb 2025 22:26:45 +0800 Message-ID: <20250227142646.59711-3-jiayuan.chen@linux.dev> In-Reply-To: <20250227142646.59711-1-jiayuan.chen@linux.dev> References: <20250227142646.59711-1-jiayuan.chen@linux.dev> 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-Migadu-Flow: FLOW_OUT Content-Type: text/plain; charset="utf-8" Allow auto port binding for bpf nf test to avoid binding conflict. ./test_progs -a bpf_nf 24/1 bpf_nf/xdp-ct:OK 24/2 bpf_nf/tc-bpf-ct:OK 24/3 bpf_nf/alloc_release:OK 24/4 bpf_nf/insert_insert:OK 24/5 bpf_nf/lookup_insert:OK 24/6 bpf_nf/set_timeout_after_insert:OK 24/7 bpf_nf/set_status_after_insert:OK 24/8 bpf_nf/change_timeout_after_alloc:OK 24/9 bpf_nf/change_status_after_alloc:OK 24/10 bpf_nf/write_not_allowlisted_field:OK 24 bpf_nf:OK Summary: 1/10 PASSED, 0 SKIPPED, 0 FAILED Signed-off-by: Jiayuan Chen --- tools/testing/selftests/bpf/prog_tests/bpf_nf.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tools/testing/selftests/bpf/prog_tests/bpf_nf.c b/tools/testin= g/selftests/bpf/prog_tests/bpf_nf.c index a4a1f93878d4..dbd13f8e42a7 100644 --- a/tools/testing/selftests/bpf/prog_tests/bpf_nf.c +++ b/tools/testing/selftests/bpf/prog_tests/bpf_nf.c @@ -72,11 +72,14 @@ static void test_bpf_nf_ct(int mode) if (!ASSERT_OK(system(cmd), cmd)) goto end; =20 - srv_port =3D (mode =3D=3D TEST_XDP) ? 5005 : 5006; - srv_fd =3D start_server(AF_INET, SOCK_STREAM, "127.0.0.1", srv_port, TIME= OUT_MS); + srv_fd =3D start_server(AF_INET, SOCK_STREAM, "127.0.0.1", 0, TIMEOUT_MS); if (!ASSERT_GE(srv_fd, 0, "start_server")) goto end; =20 + srv_port =3D get_socket_local_port(srv_fd); + if (!ASSERT_GE(srv_port, 0, "get_sock_local_port")) + goto end; + client_fd =3D connect_to_server(srv_fd); if (!ASSERT_GE(client_fd, 0, "connect_to_server")) goto end; @@ -91,7 +94,7 @@ static void test_bpf_nf_ct(int mode) skel->bss->saddr =3D peer_addr.sin_addr.s_addr; skel->bss->sport =3D peer_addr.sin_port; skel->bss->daddr =3D peer_addr.sin_addr.s_addr; - skel->bss->dport =3D htons(srv_port); + skel->bss->dport =3D srv_port; =20 if (mode =3D=3D TEST_XDP) prog_fd =3D bpf_program__fd(skel->progs.nf_xdp_ct_test); --=20 2.47.1 From nobody Sat Feb 7 18:15:12 2026 Received: from out-172.mta0.migadu.com (out-172.mta0.migadu.com [91.218.175.172]) (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 163B92343AB; Thu, 27 Feb 2025 14:27:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740666453; cv=none; b=HBnJIxuYtHFm/UzC1FxwtRZNBNJm/M0XiWFNF+nCAuZf+svoX7hVmQF/RhQ0QeOIFDRs+Ln6iCM65vk19gJOKKEXFt6Y5pXyqt5VTuLl/ahQJxrASYfg8OPvI1tuua7KCtbW9HZ2CKr+r+eTlchOBuQhYjVKKcPBE32Ln1iESVc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1740666453; c=relaxed/simple; bh=n4EvS2tujlITFMmhI1w8JTOm/HL+ES1yhv6hk/Wk0Hs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KeXK9r/TYNpqqVAjMQLkOM+gc0+D+HgahVekLh9gX0WrOREoxlxwSkf//uedqTsGJsxVYb6VodVLDxO1cZw88yNE68igIbEvIJB65HPM4qay/yj0hZL+A+QkG1B1lO2fnbXOzFbWg/EK6rbovE87DUnD3Bj2Tff9MoKEJG/Csmo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=fvJIXCW5; arc=none smtp.client-ip=91.218.175.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="fvJIXCW5" X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1740666450; 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: in-reply-to:in-reply-to:references:references; bh=7aagjyEaL1HJrTcuwbXuuxWhha8H/1pOmC7GbTqPHhw=; b=fvJIXCW5O3SFzdRVlqNHIXFvxueNSmtKxq4Uu1qC8YagvVdnuIQ/TqRUcKyaVIhnw1ldCB q3k9GzOa44xYHh3wle8san33RyvGO/v+gs47VgID+CVz7WJC/hVEY4eeI1+Xx/FfGjXmhy yEl9Gsqn2NJeBdP6GN0ekdQSgFTn0ro= From: Jiayuan Chen To: bpf@vger.kernel.org Cc: john.fastabend@gmail.com, davem@davemloft.net, kuba@kernel.org, andrii@kernel.org, eddyz87@gmail.com, mykolal@fb.com, ast@kernel.org, daniel@iogearbox.net, martin.lau@linux.dev, song@kernel.org, yonghong.song@linux.dev, kpsingh@kernel.org, sdf@fomichev.me, haoluo@google.com, jolsa@kernel.org, shuah@kernel.org, hawk@kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, mrpre@163.com, Jiayuan Chen Subject: [PATCH bpf-next v1 3/3] selftests/bpf: Fixes for test_maps test Date: Thu, 27 Feb 2025 22:26:46 +0800 Message-ID: <20250227142646.59711-4-jiayuan.chen@linux.dev> In-Reply-To: <20250227142646.59711-1-jiayuan.chen@linux.dev> References: <20250227142646.59711-1-jiayuan.chen@linux.dev> 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-Migadu-Flow: FLOW_OUT Content-Type: text/plain; charset="utf-8" BPF CI has failed 3 times in the last 24 hours. Add retry for ENOMEM. It's similar to the optimization plan: commit 2f553b032cad ("selftsets/bpf: Retry map update for non-preallocated = per-cpu map") Failed CI: https://github.com/kernel-patches/bpf/actions/runs/13549227497/job/37868926= 343 https://github.com/kernel-patches/bpf/actions/runs/13548089029/job/37865812= 030 https://github.com/kernel-patches/bpf/actions/runs/13553536268/job/37883329= 296 selftests/bpf: Fixes for test_maps test Fork 100 tasks to 'test_update_delete' Fork 100 tasks to 'test_update_delete' Fork 100 tasks to 'test_update_delete' Fork 100 tasks to 'test_update_delete' ...... test_task_storage_map_stress_lookup:PASS test_maps: OK, 0 SKIPPED Signed-off-by: Jiayuan Chen --- tools/testing/selftests/bpf/test_maps.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/bpf/test_maps.c b/tools/testing/selfte= sts/bpf/test_maps.c index 8b40e9496af1..986ce32b113a 100644 --- a/tools/testing/selftests/bpf/test_maps.c +++ b/tools/testing/selftests/bpf/test_maps.c @@ -1396,9 +1396,10 @@ static void test_map_stress(void) #define MAX_DELAY_US 50000 #define MIN_DELAY_RANGE_US 5000 =20 -static bool retry_for_again_or_busy(int err) +static bool can_retry(int err) { - return (err =3D=3D EAGAIN || err =3D=3D EBUSY); + return (err =3D=3D EAGAIN || err =3D=3D EBUSY || + (err =3D=3D ENOMEM && map_opts.map_flags =3D=3D BPF_F_NO_PREALLOC)); } =20 int map_update_retriable(int map_fd, const void *key, const void *value, i= nt flags, int attempts, @@ -1451,12 +1452,12 @@ static void test_update_delete(unsigned int fn, voi= d *data) =20 if (do_update) { err =3D map_update_retriable(fd, &key, &value, BPF_NOEXIST, MAP_RETRIES, - retry_for_again_or_busy); + can_retry); if (err) printf("error %d %d\n", err, errno); assert(err =3D=3D 0); err =3D map_update_retriable(fd, &key, &value, BPF_EXIST, MAP_RETRIES, - retry_for_again_or_busy); + can_retry); if (err) printf("error %d %d\n", err, errno); assert(err =3D=3D 0); --=20 2.47.1