Re: [PATCH 2/5] ptrace: implement PTRACE_SEIZE

From: Tejun Heo
Date: Sat Jun 18 2011 - 04:30:49 EST


Hello,

On Sat, Jun 18, 2011 at 09:55:37AM +0200, Denys Vlasenko wrote:
> On Tuesday 14 June 2011 11:20, Tejun Heo wrote:
> #define PTRACE_EVENT_FORK 1
> #define PTRACE_EVENT_VFORK 2
> #define PTRACE_EVENT_CLONE 3
> > #define PTRACE_EVENT_EXEC 4
> > #define PTRACE_EVENT_VFORK_DONE 5
> > #define PTRACE_EVENT_EXIT 6
> > +#define PTRACE_EVENT_STOP 7
>
> Er... these constants were corresponding exactly to
> bit positions in ptrace options which enable them:
>
> #define PTRACE_O_TRACESYSGOOD 0x00000001
> #define PTRACE_O_TRACEFORK 0x00000002
> #define PTRACE_O_TRACEVFORK 0x00000004
> #define PTRACE_O_TRACECLONE 0x00000008
> #define PTRACE_O_TRACEEXEC 0x00000010
> #define PTRACE_O_TRACEVFORKDONE 0x00000020
> #define PTRACE_O_TRACEEXIT 0x00000040
>
> For example, PTRACE_O_TRACEEXEC is 4th bit, PTRACE_EVENT_EXEC is 4.
>
> If we'd define PTRACE_EVENT_STOP as 7, any future added
> PTRACE_O_foo bit with value 0x00000080 will be unable
> to follow this convention.

I'm not sure how this will actually play out but currently planning on
adding more implicitly enabled events on SEIZE.

> I propose to define PTRACE_EVENT_STOP as 64 instead, leaving 64 low
> PTRACE_EVENT_foo constants for possible future PTRACE_O_foo bits.
>
> [32 should be enough too, but I feel paranoid today :)]

But this might not be a bad idea. Given that we also support 32bit
archs, going over 32 wouldn't help much tho.

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/