/Linux-v6.6/tools/perf/Documentation/ |
D | perf-probe.txt | 1 perf-probe(1) 6 perf-probe - Define new dynamic tracepoints 11 'perf probe' [options] --add='PROBE' [...] 13 'perf probe' [options] PROBE 15 'perf probe' [options] --del='[GROUP:]EVENT' [...] 17 'perf probe' --list[=[GROUP:]EVENT] 19 'perf probe' [options] --line='LINE' 21 'perf probe' [options] --vars='PROBEPOINT' 23 'perf probe' [options] --funcs 25 'perf probe' [options] --definition='PROBE' [...] [all …]
|
/Linux-v6.6/Documentation/trace/ |
D | kprobes.rst | 16 6. Probe Overhead 38 any instruction in the kernel. A return probe fires when a specified 45 the probe is to be inserted and what handler is to be called when 46 the probe is hit. 87 Since kprobes can probe into a running kernel code, it can change the 107 How Does a Return Probe Work? 112 probe is hit, Kprobes saves a copy of the return address, and replaces 118 passes to the trampoline and that probe is hit. Kprobes' trampoline 138 zero when the return probe is registered, and is incremented every 140 object available for establishing the return probe. [all …]
|
D | kprobetrace.rst | 10 this is based on kprobes (kprobe and kretprobe). So it can probe wherever 11 kprobes can probe (this means, all functions except those with 19 current_tracer. Instead of that, add probe points via 31 p[:[GRP/][EVENT]] [MOD:]SYM[+offs]|MEMADDR [FETCHARGS] : Set a probe 32 r[MAXACTIVE][:[GRP/][EVENT]] [MOD:]SYM[+0] [FETCHARGS] : Set a return probe 33 p[:[GRP/][EVENT]] [MOD:]SYM[+0]%return [FETCHARGS] : Set a return probe 34 -:[GRP/][EVENT] : Clear a probe 40 SYM[+offs] : Symbol+offset where the probe is inserted. 42 MEMADDR : Address where the probe is inserted. 47 FETCHARGS : Arguments. Each probe can have up to 128 args. [all …]
|
D | tracepoints.rst | 10 connect probe functions to them and provides some examples of probe 16 A tracepoint placed in code provides a hook to call a function (probe) 17 that you can provide at runtime. A tracepoint can be "on" (a probe is 18 connected to it) or "off" (no probe is attached). When a tracepoint is 93 Connecting a function (probe) to a tracepoint is done by providing a 94 probe (function to call) for the specific tracepoint through 95 register_trace_subsys_eventname(). Removing a probe is done through 96 unregister_trace_subsys_eventname(); it will remove the probe. 100 the probe. This, and the fact that preemption is disabled around the 101 probe call, make sure that probe removal and module unload are safe. [all …]
|
D | uprobetracer.rst | 14 current_tracer. Instead of that, add probe points via 38 OFFSET : Offset where the probe is inserted. 39 OFFSET%return : Offset where the return probe is inserted. 41 FETCHARGS : Arguments. Each probe can have up to 128 args. 56 (\*1) only for return probe. 81 You can check the total number of probe hits per event via 83 the second is the event name, the third is the number of probe hits. 87 * Add a probe as a new uprobe event, write a new definition to uprobe_events 92 * Add a probe as a new uretprobe event:: 109 at the probed text address. Probe zfree function in /bin/zsh:: [all …]
|
/Linux-v6.6/fs/afs/ |
D | fs_probe.c | 19 * Start the probe polling timer. We have to supply it with an inc on the 43 bool responded = server->probe.responded; in afs_finished_fs_probe() 59 * Handle the completion of a probe. 72 * Handle inability to send a probe due to ENOMEM when trying to allocate a 87 server->probe.local_failure = true; in afs_fs_probe_not_done() 88 if (server->probe.error == 0) in afs_fs_probe_not_done() 89 server->probe.error = -ENOMEM; in afs_fs_probe_not_done() 115 server->probe.error = 0; in afs_fileserver_probe_result() 118 if (!server->probe.responded) { in afs_fileserver_probe_result() 119 server->probe.abort_code = call->abort_code; in afs_fileserver_probe_result() [all …]
|
D | vl_probe.c | 20 if (!(server->probe.flags & AFS_VLSERVER_PROBE_RESPONDED)) { in afs_finished_vl_probe() 30 * Handle the completion of a probe RPC call. 63 server->probe.error = 0; in afs_vlserver_probe_result() 66 if (!(server->probe.flags & AFS_VLSERVER_PROBE_RESPONDED)) { in afs_vlserver_probe_result() 67 server->probe.abort_code = call->abort_code; in afs_vlserver_probe_result() 68 server->probe.error = ret; in afs_vlserver_probe_result() 76 server->probe.flags |= AFS_VLSERVER_PROBE_LOCAL_FAILURE; in afs_vlserver_probe_result() 77 if (server->probe.error == 0) in afs_vlserver_probe_result() 78 server->probe.error = ret; in afs_vlserver_probe_result() 93 if (!(server->probe.flags & AFS_VLSERVER_PROBE_RESPONDED) && in afs_vlserver_probe_result() [all …]
|
/Linux-v6.6/drivers/base/ |
D | map.c | 20 struct probe { struct 21 struct probe *next; argument 33 struct module *module, kobj_probe_t *probe, in kobj_map() argument 39 struct probe *p; in kobj_map() 44 p = kmalloc_array(n, sizeof(struct probe), GFP_KERNEL); in kobj_map() 50 p->get = probe; in kobj_map() 58 struct probe **s = &domain->probes[index % 255]; in kobj_map() 73 struct probe *found = NULL; in kobj_unmap() 80 struct probe **s; in kobj_unmap() 82 struct probe *p = *s; in kobj_unmap() [all …]
|
D | dd.c | 36 * Deferred Probe infrastructure. 38 * Sometimes driver probe order matters, but the kernel doesn't always have 43 * request probing to be deferred by returning -EPROBE_DEFER from its probe hook 45 * Deferred probe maintains two lists of devices, a pending list and an active 47 * pending list. A successful driver probe will trigger moving all devices 60 /* Save the async probe drivers' name from kernel cmdline */ 88 * bus_probe_device() to re-attempt the probe. The loop continues in deferred_probe_work_func() 109 * Drop the mutex while probing each device; the probe path may in deferred_probe_work_func() 118 * probe makes that very unsafe. in deferred_probe_work_func() 161 * list and schedules the deferred probe workqueue to process them. It [all …]
|
/Linux-v6.6/drivers/net/ethernet/sfc/ |
D | ef100.c | 73 netif_dbg(efx, probe, efx->net_dev, in ef100_pci_parse_ef100_entry() 78 netif_err(efx, probe, efx->net_dev, in ef100_pci_parse_ef100_entry() 85 netif_err(efx, probe, efx->net_dev, in ef100_pci_parse_ef100_entry() 127 netif_err(efx, probe, efx->net_dev, in ef100_pci_parse_continue_entry() 137 netif_err(efx, probe, efx->net_dev, in ef100_pci_parse_continue_entry() 148 netif_err(efx, probe, efx->net_dev, in ef100_pci_parse_continue_entry() 166 netif_err(efx, probe, efx->net_dev, in ef100_pci_parse_continue_entry() 196 netif_dbg(efx, probe, efx->net_dev, in ef100_pci_walk_xilinx_table() 201 netif_err(efx, probe, efx->net_dev, in ef100_pci_walk_xilinx_table() 210 netif_err(efx, probe, efx->net_dev, in ef100_pci_walk_xilinx_table() [all …]
|
/Linux-v6.6/tools/testing/selftests/bpf/ |
D | sdt.h | 1 /* <sys/sdt.h> - Systemtap static probe definition macros. 242 Without that assembler support, some combinations of probe placements 402 number of probe arguments is not known until compile time. Since 404 pre-#define SDT_USE_VARIADIC to enable this type of probe. 428 contain the actual assembly code around the probe site. 436 emits the assembly code for "before\nafter", with a probe in between. 437 The probe arguments are the %eax register, and the value of the memory 442 In a GNU C extended asm statement, the probe arguments can be specified 444 macro STAP_PROBE_ASM_OPERANDS gives the C values of these probe arguments, 458 but the probe site is right between "someinsn" and "otherinsn". [all …]
|
D | uprobe_multi.c | 57 #define PROBE STAP_PROBE(test, usdt); macro 59 #define PROBE10 PROBE PROBE PROBE PROBE PROBE \ 60 PROBE PROBE PROBE PROBE PROBE
|
D | test_bpftool.py | 50 raise IfaceNotFoundError("Could not find any network interface to probe") 84 res = bpftool_json(["feature", "probe", "dev", iface]) 95 bpftool_json(["feature", "probe", "kernel"]), 96 bpftool_json(["feature", "probe"]), 120 bpftool_json(["feature", "probe", "kernel", "full"]), 121 bpftool_json(["feature", "probe", "full"]), 142 full_res = bpftool_json(["feature", "probe", "full"]) 143 not_full_res = bpftool_json(["feature", "probe"]) 172 res = bpftool(["feature", "probe", "macros"])
|
/Linux-v6.6/kernel/ |
D | tracepoint.c | 176 printk(KERN_DEBUG "Probe %d : %p\n", i, funcs[i].func); in debug_print_probes() 184 int iter_probes; /* Iterate over old probe array. */ in func_add() 204 /* + 2 : one for new probe, one for NULL func */ in func_add() 255 * If probe is NULL, then nr_probes = nr_del = 0, and then the in func_remove() 321 * Add the probe function to a tracepoint. 346 * that the new probe callbacks array is consistent before setting in tracepoint_add_func() 391 * Remove a probe function from a tracepoint. 463 * tracepoint_probe_register_prio_may_exist - Connect a probe to a tracepoint with priority 465 * @probe: probe handler 472 int tracepoint_probe_register_prio_may_exist(struct tracepoint *tp, void *probe, in tracepoint_probe_register_prio_may_exist() argument [all …]
|
/Linux-v6.6/tools/testing/selftests/ftrace/test.d/direct/ |
D | kprobe-direct.tc | 44 # probe -> direct -> no direct > no probe 50 # probe -> direct -> no probe > no direct 56 # direct -> probe -> no probe > no direct 62 # direct -> probe -> no direct > no noprobe
|
/Linux-v6.6/tools/perf/tests/shell/lib/ |
D | probe_vfs_getname.sh | 4 perf probe -l 2>&1 | grep -q probe:vfs_getname 9 perf probe -q -d probe:vfs_getname* 16 …line=$(perf probe -L getname_flags 2>&1 | grep -E 'result.*=.*filename;' | sed -r 's/[[:space:]]+(… 17 perf probe -q "vfs_getname=getname_flags:${line} pathname=result->name:string" || \ 18 perf probe $add_probe_verbose "vfs_getname=getname_flags:${line} pathname=filename:ustring"
|
/Linux-v6.6/tools/perf/tests/shell/ |
D | record+script_probe_vfs_getname.sh | 2 # Use vfs_getname probe to get syscall args filenames 4 # Uses the 'perf test shell' library to add probe:vfs_getname to the system 6 # checks that that was captured by the vfs_getname probe in the generated 12 . "$(dirname "$0")/lib/probe.sh" 21 skip_no_probe_record_support "probe:vfs_getname*" 23 perf record -o ${perfdata} -e probe:vfs_getname\* touch $file 29 …grep -E " +touch +[0-9]+ +\[[0-9]+\] +[0-9]+\.[0-9]+: +probe:vfs_getname[_0-9]*: +\([[:xdigit:]]+\…
|
/Linux-v6.6/drivers/gpu/drm/i915/ |
D | Kconfig | 60 string "Force probe i915 for selected Intel hardware IDs" 66 Force probe the i915 driver for Intel graphics devices that are 72 It can also be used to block the probe of recognized and fully 75 Use "" to disable force probe. If in doubt, use this. 77 Use "<pci-id>[,<pci-id>,...]" to force probe the i915 for listed 80 Use "*" to force probe the driver for all known devices. Not 83 Use "!" right before the ID to block the probe of the device. For 84 example, "4500,!4571" forces the probe of 4500 and blocks the probe of 87 Use "!*" to block the probe of the driver for all known devices.
|
/Linux-v6.6/tools/perf/ |
D | builtin-probe.c | 3 * builtin-probe.c 5 * Builtin probe command: Set up probe events by C expression 28 #include "util/probe-finder.h" 29 #include "util/probe-event.h" 30 #include "util/probe-file.h" 58 pr_debug("probe-definition(%d): %s\n", params->nevents, str); in parse_probe_event() 74 /* Parse a perf-probe command into event */ in parse_probe_event() 396 pr_info("\nperf is not linked with libtraceevent, to use the new probe you can use tracefs:\n\n"); in perf_add_probe_events() 401 pr_info("\tBefore removing the probe, echo 0 > events/%s/%s/enable\n", group, event); in perf_add_probe_events() 520 "perf probe [<options>] 'PROBEDEF' ['PROBEDEF' ...]", in __cmd_probe() [all …]
|
/Linux-v6.6/drivers/devfreq/event/ |
D | exynos-nocp.c | 3 * exynos-nocp.c - Exynos NoC (Network On Chip) Probe support 30 * The devfreq-event ops structure for nocp probe. 37 /* Disable NoC probe */ in exynos_nocp_set_event() 41 dev_err(nocp->dev, "failed to disable the NoC probe device\n"); in exynos_nocp_set_event() 124 /* Enable NoC probe */ in exynos_nocp_set_event() 134 /* Reset NoC probe */ in exynos_nocp_set_event() 137 dev_err(nocp->dev, "Failed to reset NoC probe device\n"); in exynos_nocp_set_event() 176 dev_err(nocp->dev, "Failed to read the counter of NoC probe device\n"); in exynos_nocp_get_event() 272 pr_info("exynos-nocp: new NoC Probe device registered: %s\n", in exynos_nocp_probe() 288 .probe = exynos_nocp_probe, [all …]
|
/Linux-v6.6/drivers/media/usb/gspca/gl860/ |
D | gl860.c | 315 /* This function is called at probe time */ 383 /* This function is called at probe time after sd_config */ 467 /* Probe sensor orientation */ in sd_callback() 523 .probe = sd_probe, 628 u8 probe, nb26, nb96, nOV, ntry; in gl860_guess_sensor() local 634 ctrl_in(gspca_dev, 0xc0, 2, 0x0000, 0x0004, 1, &probe); in gl860_guess_sensor() 635 ctrl_in(gspca_dev, 0xc0, 2, 0x0000, 0x0004, 1, &probe); in gl860_guess_sensor() 661 ctrl_in(gspca_dev, 0xc0, 2, 0x7a00, 0x8030, 1, &probe); in gl860_guess_sensor() 662 gspca_dbg(gspca_dev, D_PROBE, "probe=0x%02x\n", probe); in gl860_guess_sensor() 663 if (probe == 0xff) in gl860_guess_sensor() [all …]
|
/Linux-v6.6/drivers/base/test/ |
D | test_async_driver_probe.c | 33 dev_err(dev, "async probe took too long\n"); in test_probe() 36 dev_dbg(&pdev->dev, "sleeping for %d msecs in probe\n", in test_probe() 65 .probe = test_probe, 73 .probe = test_probe, 139 pr_err("test failed: probe took too long\n"); in test_async_probe_init() 168 "test failed: probe took too long\n"); in test_async_probe_init() 202 "test failed: probe was too quick\n"); in test_async_probe_init() 228 "test failed: probe was too quick\n"); in test_async_probe_init() 236 * asynchronous probe calls remaining by forcing timeout and remove in test_async_probe_init() 238 * pending asynchronous probe calls. in test_async_probe_init() [all …]
|
/Linux-v6.6/tools/bpf/bpftool/Documentation/ |
D | bpftool-feature.rst | 21 *COMMANDS* := { **probe** | **help** } 26 | **bpftool** **feature probe** [*COMPONENT*] [**full**] [**unprivileged**] [**macros** [**prefix**… 35 **bpftool feature probe** [**kernel**] [**full**] [**macros** [**prefix** *PREFIX*]] 36 Probe the running kernel and dump a number of eBPF-related 55 Keyword **kernel** can be omitted. If no probe target is 68 **bpftool feature probe dev** *NAME* [**full**] [**macros** [**prefix** *PREFIX*]] 69 Probe network device for supported eBPF features and dump 79 functions (**helpers**). The command does not probe the system, but
|
/Linux-v6.6/sound/soc/sof/ |
D | sof-client-probes-ipc3.c | 58 * probe. 88 * Host sends DEINIT request to free previously initialized probe 145 * ipc3_probes_points_info - retrieve list of active probe points 150 * Host sends PROBE_POINT_INFO request to obtain list of active probe 151 * points, valid for disconnection when given probe is no longer 165 * @desc: List of probe points to connect 172 * Each probe point should be removed using PROBE_POINT_REMOVE 199 * @buffer_id: List of probe points to disconnect 202 * Removes previously connected probes from list of active probe
|
/Linux-v6.6/tools/perf/util/ |
D | probe-event.h | 11 /* Probe related configurations */ 37 bool retprobe; /* Return probe flag */ 40 /* probe-tracer tracing argument referencing offset */ 65 /* Perf probe probing point */ 70 bool retprobe; /* Return probe flag */ 76 /* Perf probe probing argument field chain */ 84 /* Perf probe probing argument */ 93 /* Perf probe probing event (point + arg) */ 97 struct perf_probe_point point; /* Probe point */
|