Skip to content

Commit 8108cf1

Browse files
ftrace: Rename _ftrace_direct_multi APIs to _ftrace_direct APIs
JIRA: https://issues.redhat.com/browse/RHEL-101598 commit da8bdfb Author: Florent Revest <[email protected]> Date: Tue Mar 21 15:04:21 2023 +0100 ftrace: Rename _ftrace_direct_multi APIs to _ftrace_direct APIs Now that the original _ftrace_direct APIs are gone, the "_multi" suffixes only add confusion. Link: https://lkml.kernel.org/r/[email protected] Signed-off-by: Florent Revest <[email protected]> Acked-by: Mark Rutland <[email protected]> Tested-by: Mark Rutland <[email protected]> Acked-by: Jiri Olsa <[email protected]> Signed-off-by: Steven Rostedt (Google) <[email protected]> Conflicts: - kernel/trace/trace_selftest.c: 2 hunks modified from already backported fee86a4 ("ftrace: selftest: remove broken trace_direct_tramp") - samples/Kconfig: 1 hunk omitted because of missing commit 503e451 ("ftrace/samples: add missing Kconfig option for ftrace direct multi sample") Assisted-by: Patchpal AI Signed-off-by: Jerome Marchand <[email protected]>
1 parent c6604fd commit 8108cf1

File tree

9 files changed

+54
-53
lines changed

9 files changed

+54
-53
lines changed

include/linux/ftrace.h

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -391,11 +391,11 @@ struct ftrace_func_entry {
391391
#ifdef CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
392392
extern int ftrace_direct_func_count;
393393
unsigned long ftrace_find_rec_direct(unsigned long ip);
394-
int register_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr);
395-
int unregister_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr,
396-
bool free_filters);
397-
int modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr);
398-
int modify_ftrace_direct_multi_nolock(struct ftrace_ops *ops, unsigned long addr);
394+
int register_ftrace_direct(struct ftrace_ops *ops, unsigned long addr);
395+
int unregister_ftrace_direct(struct ftrace_ops *ops, unsigned long addr,
396+
bool free_filters);
397+
int modify_ftrace_direct(struct ftrace_ops *ops, unsigned long addr);
398+
int modify_ftrace_direct_nolock(struct ftrace_ops *ops, unsigned long addr);
399399

400400
void ftrace_stub_direct_tramp(void);
401401

@@ -406,20 +406,20 @@ static inline unsigned long ftrace_find_rec_direct(unsigned long ip)
406406
{
407407
return 0;
408408
}
409-
static inline int register_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
409+
static inline int register_ftrace_direct(struct ftrace_ops *ops, unsigned long addr)
410410
{
411411
return -ENODEV;
412412
}
413-
static inline int unregister_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr,
414-
bool free_filters)
413+
static inline int unregister_ftrace_direct(struct ftrace_ops *ops, unsigned long addr,
414+
bool free_filters)
415415
{
416416
return -ENODEV;
417417
}
418-
static inline int modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
418+
static inline int modify_ftrace_direct(struct ftrace_ops *ops, unsigned long addr)
419419
{
420420
return -ENODEV;
421421
}
422-
static inline int modify_ftrace_direct_multi_nolock(struct ftrace_ops *ops, unsigned long addr)
422+
static inline int modify_ftrace_direct_nolock(struct ftrace_ops *ops, unsigned long addr)
423423
{
424424
return -ENODEV;
425425
}

kernel/bpf/trampoline.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ static int bpf_tramp_ftrace_ops_func(struct ftrace_ops *ops, enum ftrace_ops_cmd
4444
lockdep_assert_held_once(&tr->mutex);
4545

4646
/* Instead of updating the trampoline here, we propagate
47-
* -EAGAIN to register_ftrace_direct_multi(). Then we can
48-
* retry register_ftrace_direct_multi() after updating the
47+
* -EAGAIN to register_ftrace_direct(). Then we can
48+
* retry register_ftrace_direct() after updating the
4949
* trampoline.
5050
*/
5151
if ((tr->flags & BPF_TRAMP_F_CALL_ORIG) &&
@@ -181,7 +181,7 @@ static int unregister_fentry(struct bpf_trampoline *tr, void *old_addr)
181181
int ret;
182182

183183
if (tr->func.ftrace_managed)
184-
ret = unregister_ftrace_direct_multi(tr->fops, (long)old_addr, false);
184+
ret = unregister_ftrace_direct(tr->fops, (long)old_addr, false);
185185
else
186186
ret = bpf_arch_text_poke(ip, BPF_MOD_CALL, old_addr, NULL);
187187

@@ -196,9 +196,9 @@ static int modify_fentry(struct bpf_trampoline *tr, void *old_addr, void *new_ad
196196

197197
if (tr->func.ftrace_managed) {
198198
if (lock_direct_mutex)
199-
ret = modify_ftrace_direct_multi(tr->fops, (long)new_addr);
199+
ret = modify_ftrace_direct(tr->fops, (long)new_addr);
200200
else
201-
ret = modify_ftrace_direct_multi_nolock(tr->fops, (long)new_addr);
201+
ret = modify_ftrace_direct_nolock(tr->fops, (long)new_addr);
202202
} else {
203203
ret = bpf_arch_text_poke(ip, BPF_MOD_CALL, old_addr, new_addr);
204204
}
@@ -221,7 +221,7 @@ static int register_fentry(struct bpf_trampoline *tr, void *new_addr)
221221

222222
if (tr->func.ftrace_managed) {
223223
ftrace_set_filter_ip(tr->fops, (unsigned long)ip, 0, 1);
224-
ret = register_ftrace_direct_multi(tr->fops, (long)new_addr);
224+
ret = register_ftrace_direct(tr->fops, (long)new_addr);
225225
} else {
226226
ret = bpf_arch_text_poke(ip, BPF_MOD_CALL, NULL, new_addr);
227227
}

kernel/trace/ftrace.c

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5305,7 +5305,7 @@ static void remove_direct_functions_hash(struct ftrace_hash *hash, unsigned long
53055305
}
53065306

53075307
/**
5308-
* register_ftrace_direct_multi - Call a custom trampoline directly
5308+
* register_ftrace_direct - Call a custom trampoline directly
53095309
* for multiple functions registered in @ops
53105310
* @ops: The address of the struct ftrace_ops object
53115311
* @addr: The address of the trampoline to call at @ops functions
@@ -5326,7 +5326,7 @@ static void remove_direct_functions_hash(struct ftrace_hash *hash, unsigned long
53265326
* -ENODEV - @ip does not point to a ftrace nop location (or not supported)
53275327
* -ENOMEM - There was an allocation failure.
53285328
*/
5329-
int register_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
5329+
int register_ftrace_direct(struct ftrace_ops *ops, unsigned long addr)
53305330
{
53315331
struct ftrace_hash *hash, *free_hash = NULL;
53325332
struct ftrace_func_entry *entry, *new;
@@ -5384,11 +5384,11 @@ int register_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
53845384
}
53855385
return err;
53865386
}
5387-
EXPORT_SYMBOL_GPL(register_ftrace_direct_multi);
5387+
EXPORT_SYMBOL_GPL(register_ftrace_direct);
53885388

53895389
/**
5390-
* unregister_ftrace_direct_multi - Remove calls to custom trampoline
5391-
* previously registered by register_ftrace_direct_multi for @ops object.
5390+
* unregister_ftrace_direct - Remove calls to custom trampoline
5391+
* previously registered by register_ftrace_direct for @ops object.
53925392
* @ops: The address of the struct ftrace_ops object
53935393
*
53945394
* This is used to remove a direct calls to @addr from the nop locations
@@ -5399,8 +5399,8 @@ EXPORT_SYMBOL_GPL(register_ftrace_direct_multi);
53995399
* 0 on success
54005400
* -EINVAL - The @ops object was not properly registered.
54015401
*/
5402-
int unregister_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr,
5403-
bool free_filters)
5402+
int unregister_ftrace_direct(struct ftrace_ops *ops, unsigned long addr,
5403+
bool free_filters)
54045404
{
54055405
struct ftrace_hash *hash = ops->func_hash->filter_hash;
54065406
int err;
@@ -5423,10 +5423,10 @@ int unregister_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr,
54235423
ftrace_free_filter(ops);
54245424
return err;
54255425
}
5426-
EXPORT_SYMBOL_GPL(unregister_ftrace_direct_multi);
5426+
EXPORT_SYMBOL_GPL(unregister_ftrace_direct);
54275427

54285428
static int
5429-
__modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
5429+
__modify_ftrace_direct(struct ftrace_ops *ops, unsigned long addr)
54305430
{
54315431
struct ftrace_hash *hash;
54325432
struct ftrace_func_entry *entry, *iter;
@@ -5473,7 +5473,7 @@ __modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
54735473
}
54745474

54755475
/**
5476-
* modify_ftrace_direct_multi_nolock - Modify an existing direct 'multi' call
5476+
* modify_ftrace_direct_nolock - Modify an existing direct 'multi' call
54775477
* to call something else
54785478
* @ops: The address of the struct ftrace_ops object
54795479
* @addr: The address of the new trampoline to call at @ops functions
@@ -5490,19 +5490,19 @@ __modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
54905490
* Returns: zero on success. Non zero on error, which includes:
54915491
* -EINVAL - The @ops object was not properly registered.
54925492
*/
5493-
int modify_ftrace_direct_multi_nolock(struct ftrace_ops *ops, unsigned long addr)
5493+
int modify_ftrace_direct_nolock(struct ftrace_ops *ops, unsigned long addr)
54945494
{
54955495
if (check_direct_multi(ops))
54965496
return -EINVAL;
54975497
if (!(ops->flags & FTRACE_OPS_FL_ENABLED))
54985498
return -EINVAL;
54995499

5500-
return __modify_ftrace_direct_multi(ops, addr);
5500+
return __modify_ftrace_direct(ops, addr);
55015501
}
5502-
EXPORT_SYMBOL_GPL(modify_ftrace_direct_multi_nolock);
5502+
EXPORT_SYMBOL_GPL(modify_ftrace_direct_nolock);
55035503

55045504
/**
5505-
* modify_ftrace_direct_multi - Modify an existing direct 'multi' call
5505+
* modify_ftrace_direct - Modify an existing direct 'multi' call
55065506
* to call something else
55075507
* @ops: The address of the struct ftrace_ops object
55085508
* @addr: The address of the new trampoline to call at @ops functions
@@ -5516,7 +5516,7 @@ EXPORT_SYMBOL_GPL(modify_ftrace_direct_multi_nolock);
55165516
* Returns: zero on success. Non zero on error, which includes:
55175517
* -EINVAL - The @ops object was not properly registered.
55185518
*/
5519-
int modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
5519+
int modify_ftrace_direct(struct ftrace_ops *ops, unsigned long addr)
55205520
{
55215521
int err;
55225522

@@ -5526,11 +5526,11 @@ int modify_ftrace_direct_multi(struct ftrace_ops *ops, unsigned long addr)
55265526
return -EINVAL;
55275527

55285528
mutex_lock(&direct_mutex);
5529-
err = __modify_ftrace_direct_multi(ops, addr);
5529+
err = __modify_ftrace_direct(ops, addr);
55305530
mutex_unlock(&direct_mutex);
55315531
return err;
55325532
}
5533-
EXPORT_SYMBOL_GPL(modify_ftrace_direct_multi);
5533+
EXPORT_SYMBOL_GPL(modify_ftrace_direct);
55345534
#endif /* CONFIG_DYNAMIC_FTRACE_WITH_DIRECT_CALLS */
55355535

55365536
/**

kernel/trace/trace_selftest.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -827,7 +827,8 @@ static struct ftrace_ops direct;
827827
* and make sure we get graph trace.
828828
*/
829829
ftrace_set_filter_ip(&direct, (unsigned long)DYN_FTRACE_TEST_NAME, 0, 0);
830-
ret = register_ftrace_direct_multi(&direct, (unsigned long)ftrace_stub_direct_tramp);
830+
ret = register_ftrace_direct(&direct,
831+
(unsigned long)ftrace_stub_direct_tramp);
831832
if (ret)
832833
goto out;
833834

@@ -847,9 +848,9 @@ static struct ftrace_ops direct;
847848

848849
unregister_ftrace_graph(&fgraph_ops);
849850

850-
ret = unregister_ftrace_direct_multi(&direct,
851-
(unsigned long)ftrace_stub_direct_tramp,
852-
true);
851+
ret = unregister_ftrace_direct(&direct,
852+
(unsigned long)ftrace_stub_direct_tramp,
853+
true);
853854
if (ret)
854855
goto out;
855856

samples/ftrace/ftrace-direct-modify.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ static int simple_thread(void *arg)
116116
if (ret)
117117
continue;
118118
t ^= 1;
119-
ret = modify_ftrace_direct_multi(&direct, tramps[t]);
119+
ret = modify_ftrace_direct(&direct, tramps[t]);
120120
if (!ret)
121121
my_tramp = tramps[t];
122122
WARN_ON_ONCE(ret);
@@ -132,7 +132,7 @@ static int __init ftrace_direct_init(void)
132132
int ret;
133133

134134
ftrace_set_filter_ip(&direct, (unsigned long) my_ip, 0, 0);
135-
ret = register_ftrace_direct_multi(&direct, my_tramp);
135+
ret = register_ftrace_direct(&direct, my_tramp);
136136

137137
if (!ret)
138138
simple_tsk = kthread_run(simple_thread, NULL, "event-sample-fn");
@@ -142,12 +142,12 @@ static int __init ftrace_direct_init(void)
142142
static void __exit ftrace_direct_exit(void)
143143
{
144144
kthread_stop(simple_tsk);
145-
unregister_ftrace_direct_multi(&direct, my_tramp, true);
145+
unregister_ftrace_direct(&direct, my_tramp, true);
146146
}
147147

148148
module_init(ftrace_direct_init);
149149
module_exit(ftrace_direct_exit);
150150

151151
MODULE_AUTHOR("Steven Rostedt");
152-
MODULE_DESCRIPTION("Example use case of using modify_ftrace_direct_multi()");
152+
MODULE_DESCRIPTION("Example use case of using modify_ftrace_direct()");
153153
MODULE_LICENSE("GPL");

samples/ftrace/ftrace-direct-multi-modify.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ static int simple_thread(void *arg)
123123
if (ret)
124124
continue;
125125
t ^= 1;
126-
ret = modify_ftrace_direct_multi(&direct, tramps[t]);
126+
ret = modify_ftrace_direct(&direct, tramps[t]);
127127
if (!ret)
128128
my_tramp = tramps[t];
129129
WARN_ON_ONCE(ret);
@@ -141,7 +141,7 @@ static int __init ftrace_direct_multi_init(void)
141141
ftrace_set_filter_ip(&direct, (unsigned long) wake_up_process, 0, 0);
142142
ftrace_set_filter_ip(&direct, (unsigned long) schedule, 0, 0);
143143

144-
ret = register_ftrace_direct_multi(&direct, my_tramp);
144+
ret = register_ftrace_direct(&direct, my_tramp);
145145

146146
if (!ret)
147147
simple_tsk = kthread_run(simple_thread, NULL, "event-sample-fn");
@@ -151,12 +151,12 @@ static int __init ftrace_direct_multi_init(void)
151151
static void __exit ftrace_direct_multi_exit(void)
152152
{
153153
kthread_stop(simple_tsk);
154-
unregister_ftrace_direct_multi(&direct, my_tramp, true);
154+
unregister_ftrace_direct(&direct, my_tramp, true);
155155
}
156156

157157
module_init(ftrace_direct_multi_init);
158158
module_exit(ftrace_direct_multi_exit);
159159

160160
MODULE_AUTHOR("Jiri Olsa");
161-
MODULE_DESCRIPTION("Example use case of using modify_ftrace_direct_multi()");
161+
MODULE_DESCRIPTION("Example use case of using modify_ftrace_direct()");
162162
MODULE_LICENSE("GPL");

samples/ftrace/ftrace-direct-multi.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,12 +73,12 @@ static int __init ftrace_direct_multi_init(void)
7373
ftrace_set_filter_ip(&direct, (unsigned long) wake_up_process, 0, 0);
7474
ftrace_set_filter_ip(&direct, (unsigned long) schedule, 0, 0);
7575

76-
return register_ftrace_direct_multi(&direct, (unsigned long) my_tramp);
76+
return register_ftrace_direct(&direct, (unsigned long) my_tramp);
7777
}
7878

7979
static void __exit ftrace_direct_multi_exit(void)
8080
{
81-
unregister_ftrace_direct_multi(&direct, (unsigned long) my_tramp, true);
81+
unregister_ftrace_direct(&direct, (unsigned long) my_tramp, true);
8282
}
8383

8484
module_init(ftrace_direct_multi_init);

samples/ftrace/ftrace-direct-too.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,17 +76,17 @@ static int __init ftrace_direct_init(void)
7676
{
7777
ftrace_set_filter_ip(&direct, (unsigned long) handle_mm_fault, 0, 0);
7878

79-
return register_ftrace_direct_multi(&direct, (unsigned long) my_tramp);
79+
return register_ftrace_direct(&direct, (unsigned long) my_tramp);
8080
}
8181

8282
static void __exit ftrace_direct_exit(void)
8383
{
84-
unregister_ftrace_direct_multi(&direct, (unsigned long)my_tramp, true);
84+
unregister_ftrace_direct(&direct, (unsigned long)my_tramp, true);
8585
}
8686

8787
module_init(ftrace_direct_init);
8888
module_exit(ftrace_direct_exit);
8989

9090
MODULE_AUTHOR("Steven Rostedt");
91-
MODULE_DESCRIPTION("Another example use case of using register_ftrace_direct_multi()");
91+
MODULE_DESCRIPTION("Another example use case of using register_ftrace_direct()");
9292
MODULE_LICENSE("GPL");

samples/ftrace/ftrace-direct.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,17 +69,17 @@ static int __init ftrace_direct_init(void)
6969
{
7070
ftrace_set_filter_ip(&direct, (unsigned long) wake_up_process, 0, 0);
7171

72-
return register_ftrace_direct_multi(&direct, (unsigned long) my_tramp);
72+
return register_ftrace_direct(&direct, (unsigned long) my_tramp);
7373
}
7474

7575
static void __exit ftrace_direct_exit(void)
7676
{
77-
unregister_ftrace_direct_multi(&direct, (unsigned long)my_tramp, true);
77+
unregister_ftrace_direct(&direct, (unsigned long)my_tramp, true);
7878
}
7979

8080
module_init(ftrace_direct_init);
8181
module_exit(ftrace_direct_exit);
8282

8383
MODULE_AUTHOR("Steven Rostedt");
84-
MODULE_DESCRIPTION("Example use case of using register_ftrace_direct_multi()");
84+
MODULE_DESCRIPTION("Example use case of using register_ftrace_direct()");
8585
MODULE_LICENSE("GPL");

0 commit comments

Comments
 (0)