Hi Seokwoo,

kernel test robot noticed the following build errors:

[auto build test ERROR on trace/for-next]
[also build test ERROR on linus/master v6.18-rc7 next-20251127]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    
https://github.com/intel-lab-lkp/linux/commits/Seokwoo-Chung-Ryan/docs-tracing-fprobe-Document-list-filters-and-entry-exit/20251127-024245
base:   https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace 
for-next
patch link:    
https://lore.kernel.org/r/20251126184110.72241-3-seokwoo.chung130%40gmail.com
patch subject: [PATCH v4 2/3] tracing/fprobe: Support comma-separated symbols 
and :entry/:exit
config: x86_64-randconfig-001-20251127 
(https://download.01.org/0day-ci/archive/20251127/[email protected]/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 
87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20251127/[email protected]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: 
https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

>> kernel/trace/trace_fprobe.c:1284:1: error: function definition is not 
>> allowed here
    1284 | {
         | ^
   kernel/trace/trace_fprobe.c:1514:1: error: function definition is not 
allowed here
    1514 | {
         | ^
   kernel/trace/trace_fprobe.c:1531:1: error: function definition is not 
allowed here
    1531 | {
         | ^
   kernel/trace/trace_fprobe.c:1536:1: error: function definition is not 
allowed here
    1536 | {
         | ^
   kernel/trace/trace_fprobe.c:1546:1: error: function definition is not 
allowed here
    1546 | {
         | ^
   kernel/trace/trace_fprobe.c:1574:1: error: function definition is not 
allowed here
    1574 | {
         | ^
   kernel/trace/trace_fprobe.c:1610:1: error: function definition is not 
allowed here
    1610 | {
         | ^
   kernel/trace/trace_fprobe.c:1655:1: error: function definition is not 
allowed here
    1655 | {
         | ^
   kernel/trace/trace_fprobe.c:1684:1: error: function definition is not 
allowed here
    1684 | {
         | ^
>> kernel/trace/trace_fprobe.c:1702:15: error: use of undeclared identifier 
>> 'init_fprobe_trace_early'
    1702 | core_initcall(init_fprobe_trace_early);
         |               ^
>> kernel/trace/trace_fprobe.c:1702:15: error: use of undeclared identifier 
>> 'init_fprobe_trace_early'
>> kernel/trace/trace_fprobe.c:1702:40: error: expected '}'
    1702 | core_initcall(init_fprobe_trace_early);
         |                                        ^
   kernel/trace/trace_fprobe.c:1175:1: note: to match this '{'
    1175 | {
         | ^
   12 errors generated.


vim +1284 kernel/trace/trace_fprobe.c

08c9306fc2e32b Masami Hiramatsu (Google  2023-08-23  1281) 
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1282) static int 
trace_fprobe_create_internal(int argc, const char *argv[],
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1283)                      
                struct traceprobe_parse_context *ctx)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06 @1284) {
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1285)      /*
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1286)       * Argument 
syntax:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1287)       *  - Add 
fentry probe:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1288)       *      
f[:[GRP/][EVENT]] [MOD:]KSYM [FETCHARGS]
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1289)       *  - Add fexit 
probe:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1290)       *      
f[N][:[GRP/][EVENT]] [MOD:]KSYM%return [FETCHARGS]
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1291)       *  - Add 
tracepoint probe:
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1292)       *      
t[:[GRP/][EVENT]] TRACEPOINT [FETCHARGS]
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1293)       *
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1294)       * Fetch args:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1295)       *  $retval     
: fetch return value
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1296)       *  $stack      
: fetch stack address
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1297)       *  $stackN     
: fetch Nth entry of stack (N:0-)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1298)       *  $argN       
: fetch Nth argument (N:1-)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1299)       *  $comm       
: fetch current task comm
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1300)       *  @ADDR       
: fetch memory at ADDR (ADDR should be in kernel)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1301)       *  
@SYM[+|-offs] : fetch memory at SYM +|- offs (SYM is a data symbol)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1302)       * 
Dereferencing memory fetch:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1303)       *  
+|-offs(ARG) : fetch memory at ARG +|- offs address.
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1304)       * Alias name 
of args:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1305)       *  
NAME=FETCHARG : set NAME as alias of FETCHARG.
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1306)       * Type of args:
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1307)       *  
FETCHARG:TYPE : use TYPE instead of unsigned long.
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1308)       */
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1309)      struct 
trace_fprobe *tf __free(free_trace_fprobe) = NULL;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1310)      const char 
*event = NULL, *group = FPROBE_EVENT_SYSTEM;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1311)      struct module 
*mod __free(module_put) = NULL;
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1312)      const char 
**new_argv __free(kfree) = NULL;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1313)      char 
*parsed_nofilter __free(kfree) = NULL;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1314)      char 
*parsed_filter __free(kfree) = NULL;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1315)      char *symbol 
__free(kfree) = NULL;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1316)      char *ebuf 
__free(kfree) = NULL;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1317)      char *gbuf 
__free(kfree) = NULL;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1318)      char *sbuf 
__free(kfree) = NULL;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1319)      char *abuf 
__free(kfree) = NULL;
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1320)      char *dbuf 
__free(kfree) = NULL;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1321)      int i, new_argc 
= 0, ret = 0;
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1322)      bool 
is_tracepoint = false;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1323)      bool list_mode 
= false;
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1324)      bool is_return 
= false;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1325) 
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1326)      if ((argv[0][0] 
!= 'f' && argv[0][0] != 't') || argc < 2)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1327)              return 
-ECANCELED;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1328) 
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1329)      if (argv[0][0] 
== 't') {
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1330)              
is_tracepoint = true;
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1331)              group = 
TRACEPOINT_EVENT_SYSTEM;
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1332)      }
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1333) 
a2224559cbba1d Masami Hiramatsu (Google  2024-12-26  1334)      if (argv[0][1] 
!= '\0') {
a2224559cbba1d Masami Hiramatsu (Google  2024-12-26  1335)              if 
(argv[0][1] != ':') {
a2224559cbba1d Masami Hiramatsu (Google  2024-12-26  1336)                      
trace_probe_log_set_index(0);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1337)                      
trace_probe_log_err(1, BAD_MAXACT);
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1338)                      
return -EINVAL;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1339)              }
a2224559cbba1d Masami Hiramatsu (Google  2024-12-26  1340)              event = 
&argv[0][2];
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1341)      }
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1342) 
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1343)      
trace_probe_log_set_index(1);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1344) 
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1345)      /* Parse spec 
early (single vs list, suffix, base symbol) */
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1346)      ret = 
parse_fprobe_spec(argv[1], is_tracepoint, &symbol, &is_return,
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1347)                      
&list_mode, &parsed_filter, &parsed_nofilter);
08c9306fc2e32b Masami Hiramatsu (Google  2023-08-23  1348)      if (ret < 0)
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1349)              return 
-EINVAL;
08c9306fc2e32b Masami Hiramatsu (Google  2023-08-23  1350) 
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1351)      for (i = 2; i < 
argc; i++) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1352)              char 
*tmp = strstr(argv[i], "$retval");
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1353) 
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1354)              if (tmp 
&& !isalnum(tmp[7]) && tmp[7] != '_') {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1355)                      
if (is_tracepoint) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1356)                      
        trace_probe_log_set_index(i);
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1357)                      
        trace_probe_log_err(tmp - argv[i], RETVAL_ON_PROBE);
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1358)                      
        return -EINVAL;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1359)                      
}
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1360)                      
is_return = true;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1361)                      
break;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1362)              }
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1363)      }
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1364) 
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1365)      
trace_probe_log_set_index(0);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1366)      if (event) {
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1367)              gbuf = 
kmalloc(MAX_EVENT_NAME_LEN, GFP_KERNEL);
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1368)              if 
(!gbuf)
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1369)                      
return -ENOMEM;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1370)              ret = 
traceprobe_parse_event_name(&event, &group, gbuf,
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1371)                      
                          event - argv[0]);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1372)              if (ret)
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1373)                      
return -EINVAL;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1374)      }
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1375) 
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1376)      if (!event) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1377)              /*
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1378)               * 
Event name rules:
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1379)               * - 
For list/wildcard: require explicit [GROUP/]EVENT
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1380)               * - 
For single literal: autogenerate symbol__entry/symbol__exit
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1381)               */
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1382)              if 
(list_mode || has_wildcard(symbol)) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1383)                      
trace_probe_log_err(0, NO_GROUP_NAME);
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1384)                      
return -EINVAL;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1385)              }
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1386)              ebuf = 
kmalloc(MAX_EVENT_NAME_LEN, GFP_KERNEL);
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1387)              if 
(!ebuf)
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1388)                      
return -ENOMEM;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1389)              /* Make 
a new event name */
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1390)              if 
(is_tracepoint)
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1391)                      
snprintf(ebuf, MAX_EVENT_NAME_LEN, "%s%s",
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1392)                      
         isdigit(*symbol) ? "_" : "", symbol);
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1393)              else
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1394)                      
snprintf(ebuf, MAX_EVENT_NAME_LEN, "%s__%s", symbol,
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1395)                      
         is_return ? "exit" : "entry");
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1396)              
sanitize_event_name(ebuf);
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1397)              event = 
ebuf;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1398)      }
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1399) 
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1400)      if (is_return)
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1401)              
ctx->flags |= TPARG_FL_RETURN;
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1402)      else
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1403)              
ctx->flags |= TPARG_FL_FENTRY;
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1404) 
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1405)      ctx->funcname = 
NULL;
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1406)      if 
(is_tracepoint) {
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1407)              /* Get 
tracepoint and lock its module until the end of the registration. */
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1408)              struct 
tracepoint *tpoint;
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1409) 
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1410)              
ctx->flags |= TPARG_FL_TPOINT;
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1411)              mod = 
NULL;
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1412)              tpoint 
= find_tracepoint(symbol, &mod);
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1413)              if 
(tpoint) {
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1414)                      
sbuf = kmalloc(KSYM_NAME_LEN, GFP_KERNEL);
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1415)                      
if (!sbuf)
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1416)                      
        return -ENOMEM;
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1417)                      
ctx->funcname = kallsyms_lookup((unsigned long)tpoint->probestub,
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1418)                      
                                NULL, NULL, NULL, sbuf);
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1419)              }
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1420)      }
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1421) 
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1422)      if (!list_mode 
&& !has_wildcard(symbol) && !is_tracepoint)
e3d6e1b9a34c74 Masami Hiramatsu (Google  2025-04-01  1423)              
ctx->funcname = symbol;
b576e09701c7d0 Masami Hiramatsu (Google  2023-06-06  1424) 
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1425)      abuf = 
kmalloc(MAX_BTF_ARGS_LEN, GFP_KERNEL);
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1426)      if (!abuf)
d643eaa7082dc3 Masami Hiramatsu (Google  2025-07-23  1427)              return 
-ENOMEM;
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1428)      argc -= 2; argv 
+= 2;
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1429)      new_argv = 
traceprobe_expand_meta_args(argc, argv, &new_argc,
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1430)                      
                       abuf, MAX_BTF_ARGS_LEN, ctx);
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1431)      if 
(IS_ERR(new_argv))
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1432)              return 
PTR_ERR(new_argv);
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1433)      if (new_argv) {
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1434)              argc = 
new_argc;
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1435)              argv = 
new_argv;
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1436)      }
57faaa04804ccb Masami Hiramatsu (Google  2025-03-27  1437)      if (argc > 
MAX_TRACE_ARGS) {
57faaa04804ccb Masami Hiramatsu (Google  2025-03-27  1438)              
trace_probe_log_set_index(2);
57faaa04804ccb Masami Hiramatsu (Google  2025-03-27  1439)              
trace_probe_log_err(0, TOO_MANY_ARGS);
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1440)              return 
-E2BIG;
57faaa04804ccb Masami Hiramatsu (Google  2025-03-27  1441)      }
18b1e870a49671 Masami Hiramatsu (Google  2023-06-06  1442) 
d9b15224dd8ff8 Ye Bin                    2024-03-22  1443       ret = 
traceprobe_expand_dentry_args(argc, argv, &dbuf);
d9b15224dd8ff8 Ye Bin                    2024-03-22  1444       if (ret)
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1445)              return 
ret;
d9b15224dd8ff8 Ye Bin                    2024-03-22  1446  
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1447)      /* setup a 
probe */
2867495dea8632 Masami Hiramatsu (Google  2025-04-01  1448)      tf = 
alloc_trace_fprobe(group, event, symbol, argc, is_return, is_tracepoint);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1449)      if (IS_ERR(tf)) 
{
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1450)              ret = 
PTR_ERR(tf);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1451)              /* This 
must return -ENOMEM, else there is a bug */
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1452)              
WARN_ON_ONCE(ret != -ENOMEM);
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1453)              return 
ret;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1454)      }
e2d0d7b2f42dca Masami Hiramatsu (Google  2023-06-06  1455) 
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1456)      /* carry list 
parsing result into tf */
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1457)      if 
(!is_tracepoint) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1458)              
tf->list_mode = list_mode;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1459)              if 
(parsed_filter) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1460)                      
tf->filter = kstrdup(parsed_filter, GFP_KERNEL);
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1461)                      
if (!tf->filter)
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1462)                      
        return -ENOMEM;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1463)              }
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1464)              if 
(parsed_nofilter) {
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1465)                      
tf->nofilter = kstrdup(parsed_nofilter, GFP_KERNEL);
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1466)                      
if (!tf->nofilter)
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1467)                      
        return -ENOMEM;
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1468)              }
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1469)      }
a90d508c939bee Seokwoo Chung (Ryan       2025-11-26  1470) 
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1471)      /* parse 
arguments */
73f35080477e89 Mikel Rychliski           2024-09-30  1472       for (i = 0; i < 
argc; i++) {
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1473)              
trace_probe_log_set_index(i + 2);
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1474)              
ctx->offset = 0;
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1475)              ret = 
traceprobe_parse_probe_arg(&tf->tp, i, argv[i], ctx);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1476)              if (ret)
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1477)                      
return ret;     /* This can be -ENOMEM */
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1478)      }
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1479) 
25f00e40ce7953 Masami Hiramatsu (Google  2024-03-04  1480)      if (is_return 
&& tf->tp.entry_arg) {
25f00e40ce7953 Masami Hiramatsu (Google  2024-03-04  1481)              
tf->fp.entry_handler = trace_fprobe_entry_handler;
25f00e40ce7953 Masami Hiramatsu (Google  2024-03-04  1482)              
tf->fp.entry_data_size = traceprobe_get_entry_data_size(&tf->tp);
db5e228611b118 Masami Hiramatsu (Google  2025-02-26  1483)              if 
(ALIGN(tf->fp.entry_data_size, sizeof(long)) > MAX_FPROBE_DATA_SIZE) {
db5e228611b118 Masami Hiramatsu (Google  2025-02-26  1484)                      
trace_probe_log_set_index(2);
db5e228611b118 Masami Hiramatsu (Google  2025-02-26  1485)                      
trace_probe_log_err(0, TOO_MANY_EARGS);
db5e228611b118 Masami Hiramatsu (Google  2025-02-26  1486)                      
return -E2BIG;
db5e228611b118 Masami Hiramatsu (Google  2025-02-26  1487)              }
25f00e40ce7953 Masami Hiramatsu (Google  2024-03-04  1488)      }
25f00e40ce7953 Masami Hiramatsu (Google  2024-03-04  1489) 
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1490)      ret = 
traceprobe_set_print_fmt(&tf->tp,
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1491)                      
is_return ? PROBE_PRINT_RETURN : PROBE_PRINT_NORMAL);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1492)      if (ret < 0)
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1493)              return 
ret;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1494) 
2db832ec9090d3 Masami Hiramatsu (Google  2025-04-01  1495)      ret = 
register_trace_fprobe_event(tf);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1496)      if (ret) {
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1497)              
trace_probe_log_set_index(1);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1498)              if (ret 
== -EILSEQ)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1499)                      
trace_probe_log_err(0, BAD_INSN_BNDRY);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1500)              else if 
(ret == -ENOENT)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1501)                      
trace_probe_log_err(0, BAD_PROBE_ADDR);
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1502)              else if 
(ret != -ENOMEM && ret != -EEXIST)
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1503)                      
trace_probe_log_err(0, FAIL_REG_PROBE);
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1504)              return 
-EINVAL;
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1505)      }
334e5519c37570 Masami Hiramatsu (Google  2023-06-06  1506) 
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1507)      /* 'tf' is 
successfully registered. To avoid freeing, assign NULL. */
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1508)      tf = NULL;
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1509) 
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1510)      return 0;
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1511) }
8275637215bd3d Masami Hiramatsu (Google  2025-01-17  1512) 

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Reply via email to