[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <52E5E508.3060203@zytor.com>
Date: Sun, 26 Jan 2014 20:48:08 -0800
From: "H. Peter Anvin" <hpa@...or.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Al Viro <viro@...iv.linux.org.uk>
CC: Ingo Molnar <mingo@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>,
the arch/x86 maintainers <x86@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [RFC] de-asmify the x86-64 system call slowpath
On 01/26/2014 08:32 PM, Linus Torvalds wrote:
> On Sun, Jan 26, 2014 at 4:22 PM, Al Viro <viro@...iv.linux.org.uk> wrote:
>>
>> Umm... Can't uprobe_notify_resume() modify regs as well?
>
> Probably.
>
> .. and on the other hand, we should actually be able to use 'sysret'
> for signal handling on x86-64, because while sysret destroys %rcx and
> doesn't allow for returning to odd modes, for calling a signal handler
> I don't think we really care..
>
Yes, it is the fourth argument register, but we only have three
arguments to a signal handler. I had to think about that one.
>> While we
>> are at it, when we start using the same thing on 32bit kernels, we'll
>> need to watch out for execve() - the reason why start_thread() sets
>> TIF_NOTIFY_RESUME is to force us away from sysexit path. IIRC, vm86
>> is another thing to watch out for (same reasons).
>
> Yes, the 32-bit code I didn't want to touch, partly because I no
> longer have a test-case. And it does end up having some more
> interesting cases.
That is one way to put it. However, this code is incredibly ugly and
getting it cleaned up would really, really help, of course.
-hpa
--
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