mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-11 13:27:06 +09:00
Merge tag 'v4.9.188' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidg12-4.9.y
This is the 4.9.188 stable release
This commit is contained in:
@@ -1632,6 +1632,11 @@ static bool test_rec_ops_needs_regs(struct dyn_ftrace *rec)
|
||||
return keep_regs;
|
||||
}
|
||||
|
||||
static struct ftrace_ops *
|
||||
ftrace_find_tramp_ops_any(struct dyn_ftrace *rec);
|
||||
static struct ftrace_ops *
|
||||
ftrace_find_tramp_ops_next(struct dyn_ftrace *rec, struct ftrace_ops *ops);
|
||||
|
||||
static bool __ftrace_hash_rec_update(struct ftrace_ops *ops,
|
||||
int filter_hash,
|
||||
bool inc)
|
||||
@@ -1760,15 +1765,17 @@ static bool __ftrace_hash_rec_update(struct ftrace_ops *ops,
|
||||
}
|
||||
|
||||
/*
|
||||
* If the rec had TRAMP enabled, then it needs to
|
||||
* be cleared. As TRAMP can only be enabled iff
|
||||
* there is only a single ops attached to it.
|
||||
* In otherwords, always disable it on decrementing.
|
||||
* In the future, we may set it if rec count is
|
||||
* decremented to one, and the ops that is left
|
||||
* has a trampoline.
|
||||
* The TRAMP needs to be set only if rec count
|
||||
* is decremented to one, and the ops that is
|
||||
* left has a trampoline. As TRAMP can only be
|
||||
* enabled if there is only a single ops attached
|
||||
* to it.
|
||||
*/
|
||||
rec->flags &= ~FTRACE_FL_TRAMP;
|
||||
if (ftrace_rec_count(rec) == 1 &&
|
||||
ftrace_find_tramp_ops_any(rec))
|
||||
rec->flags |= FTRACE_FL_TRAMP;
|
||||
else
|
||||
rec->flags &= ~FTRACE_FL_TRAMP;
|
||||
|
||||
/*
|
||||
* flags will be cleared in ftrace_check_record()
|
||||
@@ -1961,11 +1968,6 @@ static void print_ip_ins(const char *fmt, const unsigned char *p)
|
||||
printk(KERN_CONT "%s%02x", i ? ":" : "", p[i]);
|
||||
}
|
||||
|
||||
static struct ftrace_ops *
|
||||
ftrace_find_tramp_ops_any(struct dyn_ftrace *rec);
|
||||
static struct ftrace_ops *
|
||||
ftrace_find_tramp_ops_next(struct dyn_ftrace *rec, struct ftrace_ops *ops);
|
||||
|
||||
enum ftrace_bug_type ftrace_bug_type;
|
||||
const void *ftrace_expected;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user