lkml.org 
[lkml]   [2011]   [Jun]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 3/7] ptrace: move SIGTRAP on exec(2) logic to ptrace_event()
Hello,

On Tue, Jun 21, 2011 at 10:40:01PM +0200, Oleg Nesterov wrote:
> > The intention is to concentrate ptrace specific logic in
> > ptrace_event(). We'll have more of them, mostly dependent on
> > PT_SEIZED and I don't think it's a good idea to scatter them across
> > the kernel. They're of no interest outside of ptrace after all. I
> > think it's better to have them collected in one place than scattered
> > around.
>
> This was one of the reasons for tracehooks ;)

Yeah, sure. The problem with tracehook is not that it's a
fundamentally wrong thing to do but it's way over done than actually
necessary and full of requirements which are of no interest to inside
the upstream kernel.

> OK, we can move this helper to ptrace.h although I do not think this
> makes sense. As for "scattered around", imho the code which calculates
> trace in do_fork() falls into the same category.
>
> I still can't understand why ptrace_event() should check EVENT_EXEC.
> This is the special case, it should be handled specially. And while
> I think this is not that important, this is not friendly to do_fork,
> compiler has to generate the code to check event.

The generated code should be the same. I didn't check all the cases
but the few I check didn't really change.

> But OK, I applied 1-5 and 7. This is minor, and we can reconsider this
> later. I mean, right now I think I'll send the cleanup later, and you
> will have to explain your nack ;)

Yeah, yeah, it's a minor point one way or the other. I was (and still
is) thinking about folding most of ptrace-specific event logics into
ptrace_event() and this was just a first step as I think adding more
condition checks in fs/exec.c doesn't make much sense - ie. I might
end up adding PT_SEZIED there too.

Thanks.

--
tejun


\
 
 \ /
  Last update: 2011-06-23 11:01    [from the cache]
©2003-2011 Jasper Spaans