| Seq | Timestamp | Type | Name | Duration |
|---|---|---|---|---|
| 0/0 | 2026/07/08 09:14 | flow | patch-triage |
0mArgs:null Results: {
"EnableConfigs": null,
"FocusSymbols": [],
"Reasoning": "The patch only modifies BPF selftests (tools/testing/selftests/bpf/libarena) by renaming a struct. It does not make any functional changes to the core kernel, drivers, or architectures.",
"WorthFuzzing": false
} |
| 1/1 | 2026/07/08 09:14 | action | read-patch-diff |
0mArgs:null Results: {
"PatchDiff": "commit 278fb0b360e0396763c5883ed7034b98304ca7e1\nAuthor: syz-cluster \u003ctriage@syzkaller.com\u003e\nDate: Wed Jul 8 09:14:06 2026 +0000\n\n syz-cluster: applied patch under review\n\ndiff --git a/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h b/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h\nindex cf6b63f5d9a45f..e2431ea6fdd680 100644\n--- a/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h\n+++ b/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h\n@@ -8,27 +8,27 @@\n #define BIT_MASK(nr)\t\t(1ULL \u003c\u003c ((nr) % BITS_PER_LONG_LONG))\n #define BIT_WORD(nr)\t\t((nr) / BITS_PER_LONG_LONG)\n \n-struct bitmap {\n+struct arena_bitmap {\n \tu64 bits[0];\n };\n \n-struct bitmap __arena *bmp_alloc(size_t bits);\n-void bmp_free(struct bitmap __arena *bmp);\n+struct arena_bitmap __arena *bmp_alloc(size_t bits);\n+void bmp_free(struct arena_bitmap __arena *bmp);\n \n-void __bmp_set_bit(u32 bit, struct bitmap __arena *bmp);\n-void __bmp_clear_bit(u32 bit, struct bitmap __arena *bmp);\n-void bmp_set_bit(u32 bit, struct bitmap __arena *bmp);\n-void bmp_clear_bit(u32 bit, struct bitmap __arena *bmp);\n-bool bmp_test_bit(u32 bit, struct bitmap __arena *bmp);\n-bool bmp_test_and_clear_bit(u32 bit, struct bitmap __arena *bmp);\n-bool bmp_test_and_set_bit(u32 bit, struct bitmap __arena *bmp);\n+void __bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp);\n+void __bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp);\n+void bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp);\n+void bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp);\n+bool bmp_test_bit(u32 bit, struct arena_bitmap __arena *bmp);\n+bool bmp_test_and_clear_bit(u32 bit, struct arena_bitmap __arena *bmp);\n+bool bmp_test_and_set_bit(u32 bit, struct arena_bitmap __arena *bmp);\n \n-void bmp_clear(size_t bits, struct bitmap __arena *bmp);\n-void bmp_and(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2);\n-void bmp_or(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2);\n-bool bmp_empty(size_t bits, struct bitmap __arena *bmp);\n-void bmp_copy(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src);\n+void bmp_clear(size_t bits, struct arena_bitmap __arena *bmp);\n+void bmp_and(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2);\n+void bmp_or(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2);\n+bool bmp_empty(size_t bits, struct arena_bitmap __arena *bmp);\n+void bmp_copy(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src);\n \n-bool bmp_intersects(size_t bits, struct bitmap __arena *arg1, struct bitmap __arena *arg2);\n-bool bmp_subset(size_t bits, struct bitmap __arena *big, struct bitmap __arena *small);\n-void bmp_print(size_t bits, struct bitmap __arena *bmp);\n+bool bmp_intersects(size_t bits, struct arena_bitmap __arena *arg1, struct arena_bitmap __arena *arg2);\n+bool bmp_subset(size_t bits, struct arena_bitmap __arena *big, struct arena_bitmap __arena *small);\n+void bmp_print(size_t bits, struct arena_bitmap __arena *bmp);\ndiff --git a/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c b/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c\nindex e7d32f44d68709..76319a529f02b7 100644\n--- a/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c\n+++ b/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c\n@@ -8,7 +8,7 @@\n #define MID_BIT\t\t(BITS_PER_LONG_LONG + 1)\n #define LAST_BIT\t(TEST_BITS - 1)\n \n-static void test_bmp_setall(struct bitmap __arena *bmp)\n+static void test_bmp_setall(struct arena_bitmap __arena *bmp)\n {\n \tvolatile u32 i;\n \n@@ -19,7 +19,7 @@ static void test_bmp_setall(struct bitmap __arena *bmp)\n SEC(\"syscall\")\n __weak int test_bitmap_alloc_free(void)\n {\n-\tstruct bitmap __arena *bmp;\n+\tstruct arena_bitmap __arena *bmp;\n \n \tbmp = bmp_alloc(TEST_BITS);\n \tif (!bmp)\n@@ -47,7 +47,7 @@ __weak int test_bitmap_alloc_free(void)\n SEC(\"syscall\")\n __weak int test_bitmap_bit_ops(void)\n {\n-\tstruct bitmap __arena *bmp;\n+\tstruct arena_bitmap __arena *bmp;\n \n \tbmp = bmp_alloc(TEST_BITS);\n \tif (!bmp)\n@@ -97,7 +97,7 @@ __weak int test_bitmap_bit_ops(void)\n \treturn -EINVAL;\n }\n \n-static bool test_bitmap_test_and_clear_single(struct bitmap __arena *bmp, size_t ind)\n+static bool test_bitmap_test_and_clear_single(struct arena_bitmap __arena *bmp, size_t ind)\n {\n \tif (bmp_test_and_clear_bit(ind, bmp))\n \t\treturn false;\n@@ -116,7 +116,7 @@ static bool test_bitmap_test_and_clear_single(struct bitmap __arena *bmp, size_t\n \treturn true;\n }\n \n-static bool test_bitmap_test_and_set_single(struct bitmap __arena *bmp, size_t ind)\n+static bool test_bitmap_test_and_set_single(struct arena_bitmap __arena *bmp, size_t ind)\n {\n \tif (bmp_test_and_set_bit(ind, bmp))\n \t\treturn false;\n@@ -138,7 +138,7 @@ static bool test_bitmap_test_and_set_single(struct bitmap __arena *bmp, size_t i\n SEC(\"syscall\")\n __weak int test_bitmap_test_and_clear_bit(void)\n {\n-\tstruct bitmap __arena *bmp;\n+\tstruct arena_bitmap __arena *bmp;\n \n \tbmp = bmp_alloc(TEST_BITS);\n \tif (!bmp)\n@@ -167,7 +167,7 @@ __weak int test_bitmap_test_and_clear_bit(void)\n SEC(\"syscall\")\n __weak int test_bitmap_test_and_set_bit(void)\n {\n-\tstruct bitmap __arena *bmp;\n+\tstruct arena_bitmap __arena *bmp;\n \n \tbmp = bmp_alloc(TEST_BITS);\n \tif (!bmp)\n@@ -194,7 +194,7 @@ __weak int test_bitmap_test_and_set_bit(void)\n SEC(\"syscall\")\n __weak int test_bitmap_and(void)\n {\n-\tstruct bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;\n+\tstruct arena_bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;\n \n \tsrc1 = bmp_alloc(TEST_BITS);\n \tsrc2 = bmp_alloc(TEST_BITS);\n@@ -240,7 +240,7 @@ __weak int test_bitmap_and(void)\n SEC(\"syscall\")\n __weak int test_bitmap_or(void)\n {\n-\tstruct bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;\n+\tstruct arena_bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;\n \n \tsrc1 = bmp_alloc(TEST_BITS);\n \tsrc2 = bmp_alloc(TEST_BITS);\n@@ -285,7 +285,7 @@ __weak int test_bitmap_or(void)\n SEC(\"syscall\")\n __weak int test_bitmap_subset(void)\n {\n-\tstruct bitmap __arena *big = NULL, *small = NULL;\n+\tstruct arena_bitmap __arena *big = NULL, *small = NULL;\n \n \tbig = bmp_alloc(TEST_BITS);\n \tsmall = bmp_alloc(TEST_BITS);\n@@ -329,7 +329,7 @@ __weak int test_bitmap_subset(void)\n SEC(\"syscall\")\n __weak int test_bitmap_intersects(void)\n {\n-\tstruct bitmap __arena *arg1 = NULL, *arg2 = NULL;\n+\tstruct arena_bitmap __arena *arg1 = NULL, *arg2 = NULL;\n \n \targ1 = bmp_alloc(TEST_BITS);\n \targ2 = bmp_alloc(TEST_BITS);\n@@ -362,7 +362,7 @@ __weak int test_bitmap_intersects(void)\n SEC(\"syscall\")\n __weak int test_bitmap_copy(void)\n {\n-\tstruct bitmap __arena *arg1 = NULL, *arg2 = NULL;\n+\tstruct arena_bitmap __arena *arg1 = NULL, *arg2 = NULL;\n \n \targ1 = bmp_alloc(TEST_BITS);\n \targ2 = bmp_alloc(TEST_BITS);\ndiff --git a/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c b/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c\nindex eec2871e2b0d10..ea1fac95b461e5 100644\n--- a/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c\n+++ b/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c\n@@ -12,7 +12,7 @@\n #define TEST_BITMAP_SYNC_SPINS\tBPF_MAX_LOOPS\n #define TEST_BITMAP_ITERS\t10 * 1000 * 1000\n \n-static struct bitmap __arena *bitmap;\n+static struct arena_bitmap __arena *bitmap;\n static volatile u64 started;\n static volatile bool test_abort;\n \ndiff --git a/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c b/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c\nindex 80e814401fb9ea..5ff8e688ddc760 100644\n--- a/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c\n+++ b/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c\n@@ -10,16 +10,16 @@\n #include \u003clibarena/bitmap.h\u003e\n \n __weak\n-struct bitmap __arena *bmp_alloc(size_t bits)\n+struct arena_bitmap __arena *bmp_alloc(size_t bits)\n {\n-\tstruct bitmap __arena *bmp;\n+\tstruct arena_bitmap __arena *bmp;\n \tsize_t size = BITS_TO_LONG_LONGS(bits) * sizeof(bmp-\u003ebits[0]);\n \n \t/* Assume long-aligned masks. */\n \tif (bits % BITS_PER_LONG_LONG)\n \t\treturn NULL;\n \n-\tbmp = (struct bitmap __arena *)arena_malloc(size);\n+\tbmp = (struct arena_bitmap __arena *)arena_malloc(size);\n \tif (!bmp)\n \t\treturn NULL;\n \n@@ -29,31 +29,31 @@ struct bitmap __arena *bmp_alloc(size_t bits)\n }\n \n __weak\n-void bmp_free(struct bitmap __arena *bmp)\n+void bmp_free(struct arena_bitmap __arena *bmp)\n {\n \tarena_free(bmp);\n }\n \n __weak\n-void __bmp_set_bit(u32 bit, struct bitmap __arena *bmp)\n+void __bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \tbmp-\u003ebits[BIT_WORD(bit)] |= BIT_MASK(bit);\n }\n \n __weak\n-void __bmp_clear_bit(u32 bit, struct bitmap __arena *bmp)\n+void __bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \tbmp-\u003ebits[BIT_WORD(bit)] \u0026= ~BIT_MASK(bit);\n }\n \n __weak\n-bool bmp_test_bit(u32 bit, struct bitmap __arena *bmp)\n+bool bmp_test_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \treturn bmp-\u003ebits[BIT_WORD(bit)] \u0026 BIT_MASK(bit);\n }\n \n __weak\n-bool bmp_test_and_clear_bit(u32 bit, struct bitmap __arena *bmp)\n+bool bmp_test_and_clear_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \tu64 val = BIT_MASK(bit);\n \tu32 idx = BIT_WORD(bit);\n@@ -77,7 +77,7 @@ bool bmp_test_and_clear_bit(u32 bit, struct bitmap __arena *bmp)\n }\n \n __weak\n-bool bmp_test_and_set_bit(u32 bit, struct bitmap __arena *bmp)\n+bool bmp_test_and_set_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \tu64 val = BIT_MASK(bit);\n \tu32 idx = BIT_WORD(bit);\n@@ -101,7 +101,7 @@ bool bmp_test_and_set_bit(u32 bit, struct bitmap __arena *bmp)\n }\n \n __weak\n-void bmp_clear_bit(u32 bit, struct bitmap __arena *bmp)\n+void bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \tu64 val = BIT_MASK(bit);\n \tu32 idx = BIT_WORD(bit);\n@@ -116,7 +116,7 @@ void bmp_clear_bit(u32 bit, struct bitmap __arena *bmp)\n }\n \n __weak\n-void bmp_set_bit(u32 bit, struct bitmap __arena *bmp)\n+void bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp)\n {\n \tu64 val = BIT_MASK(bit);\n \tu32 idx = BIT_WORD(bit);\n@@ -131,7 +131,7 @@ void bmp_set_bit(u32 bit, struct bitmap __arena *bmp)\n }\n \n __weak\n-void bmp_clear(size_t bits, struct bitmap __arena *bmp)\n+void bmp_clear(size_t bits, struct arena_bitmap __arena *bmp)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -148,7 +148,7 @@ static __always_inline u64 bmp_last_word_mask(size_t bits)\n }\n \n __weak\n-void bmp_and(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2)\n+void bmp_and(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -161,7 +161,7 @@ void bmp_and(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src\n }\n \n __weak\n-void bmp_or(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2)\n+void bmp_or(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -174,7 +174,7 @@ void bmp_or(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1\n }\n \n __weak\n-bool bmp_empty(size_t bits, struct bitmap __arena *bmp)\n+bool bmp_empty(size_t bits, struct arena_bitmap __arena *bmp)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -190,7 +190,7 @@ bool bmp_empty(size_t bits, struct bitmap __arena *bmp)\n }\n \n __weak\n-void bmp_copy(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src)\n+void bmp_copy(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -203,7 +203,7 @@ void bmp_copy(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *sr\n }\n \n __weak\n-bool bmp_subset(size_t bits, struct bitmap __arena *big, struct bitmap __arena *small)\n+bool bmp_subset(size_t bits, struct arena_bitmap __arena *big, struct arena_bitmap __arena *small)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -219,7 +219,7 @@ bool bmp_subset(size_t bits, struct bitmap __arena *big, struct bitmap __arena *\n }\n \n __weak\n-bool bmp_intersects(size_t bits, struct bitmap __arena *arg1, struct bitmap __arena *arg2)\n+bool bmp_intersects(size_t bits, struct arena_bitmap __arena *arg1, struct arena_bitmap __arena *arg2)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n@@ -235,7 +235,7 @@ bool bmp_intersects(size_t bits, struct bitmap __arena *arg1, struct bitmap __ar\n }\n \n __weak\n-void bmp_print(size_t bits, struct bitmap __arena *bmp)\n+void bmp_print(size_t bits, struct arena_bitmap __arena *bmp)\n {\n \tsize_t nwords = BITS_TO_LONG_LONGS(bits);\n \tvolatile u32 i;\n"
} |
| 2/1 | 2026/07/08 09:14 | agent | patch-evaluator |
0mModel:gemini-3.1-pro-preview Args: null Results: {
"EnableConfigs": null,
"FocusSymbols": [],
"Reasoning": "The patch only modifies BPF selftests (tools/testing/selftests/bpf/libarena) by renaming a struct. It does not make any functional changes to the core kernel, drivers, or architectures.",
"WorthFuzzing": false
}Instruction: You are an expert Linux kernel maintainer. Your job is to review a provided patch series and determine if it makes functional changes to the kernel that should be fuzzed. IMPORTANT: The changes have ALREADY been applied and committed as the HEAD commit in your workspace. Do NOT rely on your internal knowledge of the kernel. You must actively use your code access tools to examine the actual source code and confirm any assumptions. Return WorthFuzzing=false if the patch only contains: - Modifications to Documentation/, Kconfig files, or code comments. - Purely decorative changes, such as logging (e.g., pr_err, printk) or tracepoints. - Changes to numeric constants or macros that do not functionally alter execution flow. - Code paths that are impossible to reach in virtualized environments like GCE or QEMU, even when utilizing software-emulated hardware (e.g., usb gadget, mac80211_hwsim). If it modifies reachable core kernel logic, drivers, or architectures, use your code search tools to verify the code can be executed, then return WorthFuzzing=true. When returning WorthFuzzing=true, you MUST ALSO: 1. Extract any specific kernel functions that should be heavily fuzzed into FocusSymbols. Avoid listing generic hot-path functions to prevent skewed test distributions. 2. Identify any specific CONFIG_ options required to properly test this new/modified feature. Go and look into the Kconfig files and check for ifdefs around the code, do not make assumptions. Do not list too generic configs (we already have them enabled). Only list those that specifically cover the modified code. List them in the EnableConfigs output array, and DO NOT add a 'CONFIG_' prefix (e.g., return "NET_IPV4" instead of "CONFIG_NET_IPV4"). Prefer calling several tools at the same time to save round-trips. Use set-results tool to provide results of the analysis. It must be called exactly once before the final reply. Ignore results of this tool. Prompt: For your convenience, here is the diff of the changes:
commit 278fb0b360e0396763c5883ed7034b98304ca7e1
Author: syz-cluster <triage@syzkaller.com>
Date: Wed Jul 8 09:14:06 2026 +0000
syz-cluster: applied patch under review
diff --git a/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h b/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h
index cf6b63f5d9a45f..e2431ea6fdd680 100644
--- a/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h
+++ b/tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h
@@ -8,27 +8,27 @@
#define BIT_MASK(nr) (1ULL << ((nr) % BITS_PER_LONG_LONG))
#define BIT_WORD(nr) ((nr) / BITS_PER_LONG_LONG)
-struct bitmap {
+struct arena_bitmap {
u64 bits[0];
};
-struct bitmap __arena *bmp_alloc(size_t bits);
-void bmp_free(struct bitmap __arena *bmp);
+struct arena_bitmap __arena *bmp_alloc(size_t bits);
+void bmp_free(struct arena_bitmap __arena *bmp);
-void __bmp_set_bit(u32 bit, struct bitmap __arena *bmp);
-void __bmp_clear_bit(u32 bit, struct bitmap __arena *bmp);
-void bmp_set_bit(u32 bit, struct bitmap __arena *bmp);
-void bmp_clear_bit(u32 bit, struct bitmap __arena *bmp);
-bool bmp_test_bit(u32 bit, struct bitmap __arena *bmp);
-bool bmp_test_and_clear_bit(u32 bit, struct bitmap __arena *bmp);
-bool bmp_test_and_set_bit(u32 bit, struct bitmap __arena *bmp);
+void __bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp);
+void __bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp);
+void bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp);
+void bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp);
+bool bmp_test_bit(u32 bit, struct arena_bitmap __arena *bmp);
+bool bmp_test_and_clear_bit(u32 bit, struct arena_bitmap __arena *bmp);
+bool bmp_test_and_set_bit(u32 bit, struct arena_bitmap __arena *bmp);
-void bmp_clear(size_t bits, struct bitmap __arena *bmp);
-void bmp_and(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2);
-void bmp_or(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2);
-bool bmp_empty(size_t bits, struct bitmap __arena *bmp);
-void bmp_copy(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src);
+void bmp_clear(size_t bits, struct arena_bitmap __arena *bmp);
+void bmp_and(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2);
+void bmp_or(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2);
+bool bmp_empty(size_t bits, struct arena_bitmap __arena *bmp);
+void bmp_copy(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src);
-bool bmp_intersects(size_t bits, struct bitmap __arena *arg1, struct bitmap __arena *arg2);
-bool bmp_subset(size_t bits, struct bitmap __arena *big, struct bitmap __arena *small);
-void bmp_print(size_t bits, struct bitmap __arena *bmp);
+bool bmp_intersects(size_t bits, struct arena_bitmap __arena *arg1, struct arena_bitmap __arena *arg2);
+bool bmp_subset(size_t bits, struct arena_bitmap __arena *big, struct arena_bitmap __arena *small);
+void bmp_print(size_t bits, struct arena_bitmap __arena *bmp);
diff --git a/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c b/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c
index e7d32f44d68709..76319a529f02b7 100644
--- a/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c
+++ b/tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c
@@ -8,7 +8,7 @@
#define MID_BIT (BITS_PER_LONG_LONG + 1)
#define LAST_BIT (TEST_BITS - 1)
-static void test_bmp_setall(struct bitmap __arena *bmp)
+static void test_bmp_setall(struct arena_bitmap __arena *bmp)
{
volatile u32 i;
@@ -19,7 +19,7 @@ static void test_bmp_setall(struct bitmap __arena *bmp)
SEC("syscall")
__weak int test_bitmap_alloc_free(void)
{
- struct bitmap __arena *bmp;
+ struct arena_bitmap __arena *bmp;
bmp = bmp_alloc(TEST_BITS);
if (!bmp)
@@ -47,7 +47,7 @@ __weak int test_bitmap_alloc_free(void)
SEC("syscall")
__weak int test_bitmap_bit_ops(void)
{
- struct bitmap __arena *bmp;
+ struct arena_bitmap __arena *bmp;
bmp = bmp_alloc(TEST_BITS);
if (!bmp)
@@ -97,7 +97,7 @@ __weak int test_bitmap_bit_ops(void)
return -EINVAL;
}
-static bool test_bitmap_test_and_clear_single(struct bitmap __arena *bmp, size_t ind)
+static bool test_bitmap_test_and_clear_single(struct arena_bitmap __arena *bmp, size_t ind)
{
if (bmp_test_and_clear_bit(ind, bmp))
return false;
@@ -116,7 +116,7 @@ static bool test_bitmap_test_and_clear_single(struct bitmap __arena *bmp, size_t
return true;
}
-static bool test_bitmap_test_and_set_single(struct bitmap __arena *bmp, size_t ind)
+static bool test_bitmap_test_and_set_single(struct arena_bitmap __arena *bmp, size_t ind)
{
if (bmp_test_and_set_bit(ind, bmp))
return false;
@@ -138,7 +138,7 @@ static bool test_bitmap_test_and_set_single(struct bitmap __arena *bmp, size_t i
SEC("syscall")
__weak int test_bitmap_test_and_clear_bit(void)
{
- struct bitmap __arena *bmp;
+ struct arena_bitmap __arena *bmp;
bmp = bmp_alloc(TEST_BITS);
if (!bmp)
@@ -167,7 +167,7 @@ __weak int test_bitmap_test_and_clear_bit(void)
SEC("syscall")
__weak int test_bitmap_test_and_set_bit(void)
{
- struct bitmap __arena *bmp;
+ struct arena_bitmap __arena *bmp;
bmp = bmp_alloc(TEST_BITS);
if (!bmp)
@@ -194,7 +194,7 @@ __weak int test_bitmap_test_and_set_bit(void)
SEC("syscall")
__weak int test_bitmap_and(void)
{
- struct bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;
+ struct arena_bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;
src1 = bmp_alloc(TEST_BITS);
src2 = bmp_alloc(TEST_BITS);
@@ -240,7 +240,7 @@ __weak int test_bitmap_and(void)
SEC("syscall")
__weak int test_bitmap_or(void)
{
- struct bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;
+ struct arena_bitmap __arena *src1 = NULL, *src2 = NULL, *dst = NULL;
src1 = bmp_alloc(TEST_BITS);
src2 = bmp_alloc(TEST_BITS);
@@ -285,7 +285,7 @@ __weak int test_bitmap_or(void)
SEC("syscall")
__weak int test_bitmap_subset(void)
{
- struct bitmap __arena *big = NULL, *small = NULL;
+ struct arena_bitmap __arena *big = NULL, *small = NULL;
big = bmp_alloc(TEST_BITS);
small = bmp_alloc(TEST_BITS);
@@ -329,7 +329,7 @@ __weak int test_bitmap_subset(void)
SEC("syscall")
__weak int test_bitmap_intersects(void)
{
- struct bitmap __arena *arg1 = NULL, *arg2 = NULL;
+ struct arena_bitmap __arena *arg1 = NULL, *arg2 = NULL;
arg1 = bmp_alloc(TEST_BITS);
arg2 = bmp_alloc(TEST_BITS);
@@ -362,7 +362,7 @@ __weak int test_bitmap_intersects(void)
SEC("syscall")
__weak int test_bitmap_copy(void)
{
- struct bitmap __arena *arg1 = NULL, *arg2 = NULL;
+ struct arena_bitmap __arena *arg1 = NULL, *arg2 = NULL;
arg1 = bmp_alloc(TEST_BITS);
arg2 = bmp_alloc(TEST_BITS);
diff --git a/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c b/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c
index eec2871e2b0d10..ea1fac95b461e5 100644
--- a/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c
+++ b/tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c
@@ -12,7 +12,7 @@
#define TEST_BITMAP_SYNC_SPINS BPF_MAX_LOOPS
#define TEST_BITMAP_ITERS 10 * 1000 * 1000
-static struct bitmap __arena *bitmap;
+static struct arena_bitmap __arena *bitmap;
static volatile u64 started;
static volatile bool test_abort;
diff --git a/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c b/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c
index 80e814401fb9ea..5ff8e688ddc760 100644
--- a/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c
+++ b/tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c
@@ -10,16 +10,16 @@
#include <libarena/bitmap.h>
__weak
-struct bitmap __arena *bmp_alloc(size_t bits)
+struct arena_bitmap __arena *bmp_alloc(size_t bits)
{
- struct bitmap __arena *bmp;
+ struct arena_bitmap __arena *bmp;
size_t size = BITS_TO_LONG_LONGS(bits) * sizeof(bmp->bits[0]);
/* Assume long-aligned masks. */
if (bits % BITS_PER_LONG_LONG)
return NULL;
- bmp = (struct bitmap __arena *)arena_malloc(size);
+ bmp = (struct arena_bitmap __arena *)arena_malloc(size);
if (!bmp)
return NULL;
@@ -29,31 +29,31 @@ struct bitmap __arena *bmp_alloc(size_t bits)
}
__weak
-void bmp_free(struct bitmap __arena *bmp)
+void bmp_free(struct arena_bitmap __arena *bmp)
{
arena_free(bmp);
}
__weak
-void __bmp_set_bit(u32 bit, struct bitmap __arena *bmp)
+void __bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
bmp->bits[BIT_WORD(bit)] |= BIT_MASK(bit);
}
__weak
-void __bmp_clear_bit(u32 bit, struct bitmap __arena *bmp)
+void __bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
bmp->bits[BIT_WORD(bit)] &= ~BIT_MASK(bit);
}
__weak
-bool bmp_test_bit(u32 bit, struct bitmap __arena *bmp)
+bool bmp_test_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
return bmp->bits[BIT_WORD(bit)] & BIT_MASK(bit);
}
__weak
-bool bmp_test_and_clear_bit(u32 bit, struct bitmap __arena *bmp)
+bool bmp_test_and_clear_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
u64 val = BIT_MASK(bit);
u32 idx = BIT_WORD(bit);
@@ -77,7 +77,7 @@ bool bmp_test_and_clear_bit(u32 bit, struct bitmap __arena *bmp)
}
__weak
-bool bmp_test_and_set_bit(u32 bit, struct bitmap __arena *bmp)
+bool bmp_test_and_set_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
u64 val = BIT_MASK(bit);
u32 idx = BIT_WORD(bit);
@@ -101,7 +101,7 @@ bool bmp_test_and_set_bit(u32 bit, struct bitmap __arena *bmp)
}
__weak
-void bmp_clear_bit(u32 bit, struct bitmap __arena *bmp)
+void bmp_clear_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
u64 val = BIT_MASK(bit);
u32 idx = BIT_WORD(bit);
@@ -116,7 +116,7 @@ void bmp_clear_bit(u32 bit, struct bitmap __arena *bmp)
}
__weak
-void bmp_set_bit(u32 bit, struct bitmap __arena *bmp)
+void bmp_set_bit(u32 bit, struct arena_bitmap __arena *bmp)
{
u64 val = BIT_MASK(bit);
u32 idx = BIT_WORD(bit);
@@ -131,7 +131,7 @@ void bmp_set_bit(u32 bit, struct bitmap __arena *bmp)
}
__weak
-void bmp_clear(size_t bits, struct bitmap __arena *bmp)
+void bmp_clear(size_t bits, struct arena_bitmap __arena *bmp)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -148,7 +148,7 @@ static __always_inline u64 bmp_last_word_mask(size_t bits)
}
__weak
-void bmp_and(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2)
+void bmp_and(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -161,7 +161,7 @@ void bmp_and(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src
}
__weak
-void bmp_or(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1, struct bitmap __arena *src2)
+void bmp_or(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src1, struct arena_bitmap __arena *src2)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -174,7 +174,7 @@ void bmp_or(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src1
}
__weak
-bool bmp_empty(size_t bits, struct bitmap __arena *bmp)
+bool bmp_empty(size_t bits, struct arena_bitmap __arena *bmp)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -190,7 +190,7 @@ bool bmp_empty(size_t bits, struct bitmap __arena *bmp)
}
__weak
-void bmp_copy(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *src)
+void bmp_copy(size_t bits, struct arena_bitmap __arena *dst, struct arena_bitmap __arena *src)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -203,7 +203,7 @@ void bmp_copy(size_t bits, struct bitmap __arena *dst, struct bitmap __arena *sr
}
__weak
-bool bmp_subset(size_t bits, struct bitmap __arena *big, struct bitmap __arena *small)
+bool bmp_subset(size_t bits, struct arena_bitmap __arena *big, struct arena_bitmap __arena *small)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -219,7 +219,7 @@ bool bmp_subset(size_t bits, struct bitmap __arena *big, struct bitmap __arena *
}
__weak
-bool bmp_intersects(size_t bits, struct bitmap __arena *arg1, struct bitmap __arena *arg2)
+bool bmp_intersects(size_t bits, struct arena_bitmap __arena *arg1, struct arena_bitmap __arena *arg2)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
@@ -235,7 +235,7 @@ bool bmp_intersects(size_t bits, struct bitmap __arena *arg1, struct bitmap __ar
}
__weak
-void bmp_print(size_t bits, struct bitmap __arena *bmp)
+void bmp_print(size_t bits, struct arena_bitmap __arena *bmp)
{
size_t nwords = BITS_TO_LONG_LONGS(bits);
volatile u32 i;
|
| 3/2 | 2026/07/08 09:14 | llm | patch-evaluator |
0mModel:gemini-3.1-pro-preview Args: null Results: null Tokens: input: 6601 output: 77 thoughts: 269 Thoughts: **WorthFuzzing=False: A Quick Assessment** Okay, so I'm looking at this patch. It's renaming `struct bitmap` to `struct arena_bitmap`, but only within the `tools/testing/selftests/bpf/libarena/` directory. That's a key point. This is *exclusively* a BPF self-test change, specifically confined to that `libarena` section. No kernel core, no drivers, no architecture-specific code is being touched. It’s entirely localized within the testing framework. Given this scope, the patch is changing names and should be considered a refactor. It’s not altering any core kernel functionality that would benefit from fuzzing. I need to confirm the diff, but I anticipate it only modifies the header file and the respective self tests. Let me take a quick look: * `tools/testing/selftests/bpf/libarena/include/libarena/bitmap.h` * `tools/testing/selftests/bpf/libarena/selftests/test_bitmap.bpf.c` * `tools/testing/selftests/bpf/libarena/selftests/test_parallel_bitmap.bpf.c` * `tools/testing/selftests/bpf/libarena/src/bitmap.bpf.c` Yes, as expected, all the modifications are within `tools/testing/selftests/`. Therefore, I'm confident in setting `WorthFuzzing=false`. I’ll call `set-results` and mark this patch accordingly. |
| 4/2 | 2026/07/08 09:14 | tool | set-results |
0mArgs:{
"EnableConfigs": [],
"FocusSymbols": [],
"Reasoning": "The patch only modifies BPF selftests (tools/testing/selftests/bpf/libarena) by renaming a struct. It does not make any functional changes to the core kernel, drivers, or architectures.",
"WorthFuzzing": false
}Results: {
"EnableConfigs": null,
"FocusSymbols": [],
"Reasoning": "The patch only modifies BPF selftests (tools/testing/selftests/bpf/libarena) by renaming a struct. It does not make any functional changes to the core kernel, drivers, or architectures.",
"WorthFuzzing": false
} |
| Total Calls | Total Tokens | Avg Tokens | Total Duration (Seconds) | Avg Duration (Seconds) |
|---|
| Total Calls | Total Duration (Seconds) | Avg Duration (Seconds) |
|---|