[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201106180959.38847.vda.linux@googlemail.com>
Date: Sat, 18 Jun 2011 09:59:38 +0200
From: Denys Vlasenko <vda.linux@...glemail.com>
To: Tejun Heo <tj@...nel.org>
Cc: oleg@...hat.com, jan.kratochvil@...hat.com,
linux-kernel@...r.kernel.org, torvalds@...ux-foundation.org,
akpm@...ux-foundation.org, indan@....nu, bdonlan@...il.com,
pedro@...esourcery.com
Subject: Re: [PATCH 2/5] ptrace: implement PTRACE_SEIZE
On Saturday 18 June 2011 09:55, 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 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 :)]
...unless we plan to introduce PTRACE_O_TRACESTOP (with value 0x00000080)
which enables PTRACE_INTERRUPT and stop notifications independently
of PTRACE_SEIZE. Which would be very useful for e.g. strace.
Then, PTRACE_EVENT_STOP indeed should be 7.
--
vda
--
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