[RFC,PATCH 14/14] utrace core

Oleg Nesterov oleg at redhat.com
Tue Nov 24 20:41:52 UTC 2009


On 11/24, Andi Kleen wrote:
>
> Oleg Nesterov <oleg at redhat.com> writes:
>
> > From: Roland McGrath <roland at redhat.com>
> >
> > This adds the utrace facility, a new modular interface in the kernel
> > for implementing user thread tracing and debugging.  This fits on top
> > of the tracehook_* layer, so the new code is well-isolated.
>
> Could we just drop the tracehook layer if this finally merged
> and call the low level functions directly?

Not sure I understand. Tracehooks are trivial inline wrappers on
top utrace calls,

> It might have been reasonably early on when it was still out of tree,
> but longer term when it's integrated having strange opaque hooks
> like that just makes the coder harder to read and maintain.

Well, I don't think the code will be better if we remove tracehooks.

For example. tracehook_report_syscall_entry() has a lot of callers
in arch/, each callsite should be changed to do

	if ((task_utrace_flags(current) & UTRACE_EVENT(SYSCALL_ENTRY)) &&
		utrace_report_syscall_entry(regs))
		ret = -1; // this depends on machine

instead of simply calling tracehook_report_syscall_entry().

What is the point?

But again, perhaps I misunderstood you.

Oleg.




More information about the utrace-devel mailing list