[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081102214042.GG28946@ZenIV.linux.org.uk>
Date: Sun, 2 Nov 2008 21:40:42 +0000
From: Al Viro <viro@...IV.linux.org.uk>
To: T?r?k Edwin <edwintorok@...il.com>
Cc: mingo@...e.hu, srostedt@...hat.com, a.p.zijlstra@...llo.nl,
sandmann@...mi.au.dk, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] Identify which executable object the userspace address
belongs to. Store thread group leader id, and use it to lookup the
address in the process's map. We could have looked up the address
on thread's map, but the thread might not exist by the time we are
called. The process might not exist either, but if you are reading
trace_pipe, that is unlikely.
On Sun, Nov 02, 2008 at 11:28:20PM +0200, T?r?k Edwin wrote:
> On 2008-11-02 23:25, Al Viro wrote:
> > On Sun, Nov 02, 2008 at 11:18:14PM +0200, T??r??k Edwin wrote:
> >
> >> +static int
> >> +trace_seq_path(struct trace_seq *s, struct path *path)
> >> +{
> >> + int ret;
> >> + struct seq_file m;
> >> + m.count = s->len;
> >> + m.size = PAGE_SIZE;
> >> + m.buf = s->buffer;
> >> + ret = seq_path(&m, path, "\n");
> >> + if (ret)
> >> + s->len = m.count;
> >> + return ret;
> >> +}
> >>
> >
> > NAK. seq_path() is a blatantly wrong thing to use here.
> >
>
> Are there any alternatives I could use?
>
> This function is called when I do 'cat /sys/kernel/debug/trace', not
> during tracing itself.
_IF_ you want to get the mangled path, you want to take the guts of
seq_path() into a separate helper and use it - without any references
to struct seq_file since it's completely irrelevant there and you are
using it only as a vehicle for passing the stuff you care about through
the seq_path() interface.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists