Hi Song, Thank you for the patch! Yet something to improve: [auto build test ERROR on tip/perf/core] [also build test ERROR on v4.19-rc5 next-20180925] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Song-Liu/trace_uprobe-support-reference-counter-in-fd-based-uprobe/20180925-135454 config: i386-randconfig-x005-201838 (attached as .config) compiler: gcc-7 (Debian 7.3.0-1) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 All errors (new ones prefixed by >>): kernel/trace/trace_uprobe.c: In function 'create_local_trace_uprobe': >> kernel/trace/trace_uprobe.c:1376:4: error: 'struct trace_uprobe' has no member named 'ref_ctr_offset' tu->ref_ctr_offset = ref_ctr_offset; ^~ vim +1376 kernel/trace/trace_uprobe.c 1340 1341 #ifdef CONFIG_PERF_EVENTS 1342 struct trace_event_call * 1343 create_local_trace_uprobe(char *name, unsigned long offs, 1344 unsigned long ref_ctr_offset, bool is_return) 1345 { 1346 struct trace_uprobe *tu; 1347 struct path path; 1348 int ret; 1349 1350 ret = kern_path(name, LOOKUP_FOLLOW, &path); 1351 if (ret) 1352 return ERR_PTR(ret); 1353 1354 if (!d_is_reg(path.dentry)) { 1355 path_put(&path); 1356 return ERR_PTR(-EINVAL); 1357 } 1358 1359 /* 1360 * local trace_kprobes are not added to probe_list, so they are never 1361 * searched in find_trace_kprobe(). Therefore, there is no concern of 1362 * duplicated name "DUMMY_EVENT" here. 1363 */ 1364 tu = alloc_trace_uprobe(UPROBE_EVENT_SYSTEM, "DUMMY_EVENT", 0, 1365 is_return); 1366 1367 if (IS_ERR(tu)) { 1368 pr_info("Failed to allocate trace_uprobe.(%d)\n", 1369 (int)PTR_ERR(tu)); 1370 path_put(&path); 1371 return ERR_CAST(tu); 1372 } 1373 1374 tu->offset = offs; 1375 tu->path = path; > 1376 tu->ref_ctr_offset = ref_ctr_offset; 1377 tu->filename = kstrdup(name, GFP_KERNEL); 1378 init_trace_event_call(tu, &tu->tp.call); 1379 1380 if (set_print_fmt(&tu->tp, is_ret_probe(tu)) < 0) { 1381 ret = -ENOMEM; 1382 goto error; 1383 } 1384 1385 return &tu->tp.call; 1386 error: 1387 free_trace_uprobe(tu); 1388 return ERR_PTR(ret); 1389 } 1390 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation