@@ -322,7 +322,7 @@ static bool symbol_equal(long key1, long key2, void *ctx __maybe_unused)
322
322
return strcmp ((const char * ) key1 , (const char * ) key2 ) == 0 ;
323
323
}
324
324
325
- static int get_syms (char * * * symsp , size_t * cntp )
325
+ static int get_syms (char * * * symsp , size_t * cntp , bool kernel )
326
326
{
327
327
size_t cap = 0 , cnt = 0 , i ;
328
328
char * name = NULL , * * syms = NULL ;
@@ -349,8 +349,9 @@ static int get_syms(char ***symsp, size_t *cntp)
349
349
}
350
350
351
351
while (fgets (buf , sizeof (buf ), f )) {
352
- /* skip modules */
353
- if (strchr (buf , '[' ))
352
+ if (kernel && strchr (buf , '[' ))
353
+ continue ;
354
+ if (!kernel && !strchr (buf , '[' ))
354
355
continue ;
355
356
356
357
free (name );
@@ -404,7 +405,7 @@ static int get_syms(char ***symsp, size_t *cntp)
404
405
return err ;
405
406
}
406
407
407
- void serial_test_kprobe_multi_bench_attach ( void )
408
+ static void test_kprobe_multi_bench_attach ( bool kernel )
408
409
{
409
410
LIBBPF_OPTS (bpf_kprobe_multi_opts , opts );
410
411
struct kprobe_multi_empty * skel = NULL ;
@@ -415,7 +416,7 @@ void serial_test_kprobe_multi_bench_attach(void)
415
416
char * * syms = NULL ;
416
417
size_t cnt = 0 , i ;
417
418
418
- if (!ASSERT_OK (get_syms (& syms , & cnt ), "get_syms" ))
419
+ if (!ASSERT_OK (get_syms (& syms , & cnt , kernel ), "get_syms" ))
419
420
return ;
420
421
421
422
skel = kprobe_multi_empty__open_and_load ();
@@ -453,6 +454,16 @@ void serial_test_kprobe_multi_bench_attach(void)
453
454
}
454
455
}
455
456
457
+ void serial_test_kprobe_multi_bench_attach_kernel (void )
458
+ {
459
+ test_kprobe_multi_bench_attach (true);
460
+ }
461
+
462
+ void serial_test_kprobe_multi_bench_attach_module (void )
463
+ {
464
+ test_kprobe_multi_bench_attach (false);
465
+ }
466
+
456
467
void test_kprobe_multi_test (void )
457
468
{
458
469
if (!ASSERT_OK (load_kallsyms (), "load_kallsyms" ))
0 commit comments