lkml.org 
[lkml]   [2009]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC,PATCH 14/14] utrace core
On Tue, Nov 24, 2009 at 09:41:52PM +0100, Oleg Nesterov wrote:
> On 11/24, Andi Kleen wrote:
> >
> > Oleg Nesterov <oleg@redhat.com> writes:
> >
> > > From: Roland McGrath <roland@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,

Yes that's the problem -- they are unnecessary obfuscation
when you can just call directly.

>
> > 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().

That should be in the utrace code?

I don't have a problem with having common code somewhere,
just not a whole layer whose only purpose seems to be obfuscation.


> What is the point?

Less code obfuscation.

When it's a utrace call, call it a utrace call, not something else.

-Andi
--
ak@linux.intel.com -- Speaking for myself only.


\
 
 \ /
  Last update: 2009-11-24 22:29    [from the cache]
©2003-2011 Jasper Spaans