Lines Matching defs:trampoline

136  * Stub used to invoke the list ops without requiring a separate trampoline.
237 * then have the mcount trampoline call the function directly.
1134 if (op->trampoline && op->trampoline_size)
1135 if (addr >= op->trampoline &&
1136 addr < op->trampoline + op->trampoline_size) {
1148 * address is on a dynamically allocated trampoline that would
1862 * function, and the ops has a trampoline registered
1865 if (ftrace_rec_count(rec) == 1 && ops->trampoline)
1871 * custom trampoline in use, then we need to go
1872 * back to the default trampoline.
1912 * left has a trampoline. As TRAMP can only be
2096 * points to a direct trampoline. If it isn't,
2275 (void *)ops->trampoline,
2392 * directly (no ftrace trampoline).
2430 * vice versa, or from a trampoline call.
2494 if (!op->trampoline)
2512 if (op == op_exclude || !op->trampoline)
2530 if (!op->trampoline)
2558 * Need to find the current trampoline for a rec.
2559 * Now, a trampoline is only attached to a rec if there
2571 * a trampoline, it needs to be removed (trampolines are only
2577 if (!op->trampoline)
2690 * Returns: the address of the trampoline to set to
2708 if (FTRACE_WARN_ON(!ops || !ops->trampoline)) {
2709 pr_warn("Bad trampoline accounting at: %p (%pS) (%lx)\n",
2714 return ops->trampoline;
2731 * Returns: the address of the trampoline that is currently being called
2750 pr_warn("Bad trampoline accounting at: %p (%pS)\n",
2755 return ops->trampoline;
3087 ops->trampoline) {
3092 perf_event_text_poke((void *)ops->trampoline,
3093 (void *)ops->trampoline,
3096 ops->trampoline, ops->trampoline_size,
3167 * free trampoline, because those actions could cause further damage.
3215 * If the ops uses a trampoline, then it needs to be
3221 /* The trampoline logic checks the old hashes */
3267 * while on a ftrace trampoline. Just scheduling a task on
4484 if (subops->trampoline) {
4486 (void *)subops->trampoline,
4545 (void *)ops->trampoline,
6076 ops->trampoline = 0;
6080 * register_ftrace_direct - Call a custom trampoline directly
6083 * @addr: The address of the trampoline to call at @ops functions
6107 if (ops->func || ops->trampoline)
6170 ops->trampoline = FTRACE_REGS_ADDR;
6191 * unregister_ftrace_direct - Remove calls to custom trampoline
6273 /* Prevent store tearing if a trampoline concurrently accesses the value */
6289 * @addr: The address of the new trampoline to call at @ops functions
6318 * @addr: The address of the new trampoline to call at @ops functions
6430 if (ops->func || ops->trampoline)
6451 ops->trampoline = FTRACE_REGS_ADDR;
6461 ops->trampoline = 0;
6591 ops->trampoline = 0;
7808 if (!op->trampoline || symnum--)
7810 *value = op->trampoline;
7873 if (cnt == 1 && ops->trampoline)
8468 unsigned long trampoline = ops->trampoline;
8471 if (ops->trampoline && ops->trampoline != trampoline &&
8476 ops->trampoline, ops->trampoline_size, false,
8482 perf_event_text_poke((void *)ops->trampoline, NULL, 0,
8483 (void *)ops->trampoline,
8624 * by the mcount trampoline.
8643 * ftrace_ops_get_func - get the function a trampoline should call
8646 * Normally the mcount trampoline will call the ops->func, but there
8651 * Returns: the function that the trampoline should call for @ops.