Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 996e87be authored by Steven Rostedt's avatar Steven Rostedt Committed by Steven Rostedt
Browse files

ftrace: Move record update for normal and modules into a separate function



The updating of a function record is moved to a single function. This will allow
us to add specific changes in one location for both modules and kernel
functions.

Later patches will determine if the function record itself needs to be updated
(which enables the mcount caller), or just the ftrace_ops needs the update.

Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
parent d2c8c3ea
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
@@ -1743,6 +1743,15 @@ static int ftrace_match(char *str, char *regex, int len, int type)
	return matched;
}

static void
update_record(struct dyn_ftrace *rec, unsigned long flag, int not)
{
	if (not)
		rec->flags &= ~flag;
	else
		rec->flags |= flag;
}

static int
ftrace_match_record(struct dyn_ftrace *rec, char *regex, int len, int type)
{
@@ -1772,10 +1781,7 @@ static int ftrace_match_records(char *buff, int len, int enable)
	do_for_each_ftrace_rec(pg, rec) {

		if (ftrace_match_record(rec, search, search_len, type)) {
			if (not)
				rec->flags &= ~flag;
			else
				rec->flags |= flag;
			update_record(rec, flag, not);
			found = 1;
		}
		/*
@@ -1846,10 +1852,7 @@ static int ftrace_match_module_records(char *buff, char *mod, int enable)

		if (ftrace_match_module_record(rec, mod,
					       search, search_len, type)) {
			if (not)
				rec->flags &= ~flag;
			else
				rec->flags |= flag;
			update_record(rec, flag, not);
			found = 1;
		}
		if (enable && (rec->flags & FTRACE_FL_FILTER))