lkml.org 
[lkml]   [2015]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: Compat syscall instrumentation and return from execve issue
On Mon, Nov 9, 2015 at 6:31 PM, Steven Rostedt <rostedt@goodmis.org> wrote:
> On Mon, 9 Nov 2015 17:51:25 -0800
> Andy Lutomirski <luto@amacapital.net> wrote:
>
>
>> do_syscall_32_irqs_on would call syscall_return_slowpath(regs,
>> AUDIT_ARCH_I386). do_syscall_64 (which doesn't exist yet) would call
>> syscall_return_slowpath(regs, AUDIT_ARCH_X86_64).
>>
>
> OK, so you are saying that a execve that switches the current state
> into ia32 will return from the do_syscall_64 regardless? Then we would
> have to add tracepoints that would be for both ia32 and x86_64. But
> that would solve the current issue at hand.
>

Indeed. Unlike fork/clone, execve is only magical insofar as it does
magical things to task_struct and it enters in the 64-bit native case
through a nasty asm path. The former has no effect on the entry code
(except most likely blocking opportunistic sysret because we're a bit
silly and it might break ABI to change that), and the latter barely
matters for this purpose. In any event, I'm planning on getting rid
of the asm stub for 4.5 if I can get the code written and tested in
time.

--Andy




--
Andy Lutomirski
AMA Capital Management, LLC


\
 
 \ /
  Last update: 2015-11-12 02:21    [W:0.060 / U:0.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site