[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5374E2A4.2070408@zytor.com>
Date: Thu, 15 May 2014 08:52:04 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: chrubis@...e.cz,
"Michael Kerrisk (man-pages)" <mtk.manpages@...il.com>
CC: Darren Hart <dvhart@...ux.intel.com>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...e.hu>, Jakub Jelinek <jakub@...hat.com>,
"linux-man@...r.kernel.org" <linux-man@...r.kernel.org>,
lkml <linux-kernel@...r.kernel.org>,
Davidlohr Bueso <davidlohr.bueso@...com>,
Arnd Bergmann <arnd@...db.de>,
Steven Rostedt <rostedt@...dmis.org>,
Peter Zijlstra <peterz@...radead.org>,
Linux API <linux-api@...r.kernel.org>,
"Carlos O'Donell" <carlos@...hat.com>
Subject: Re: futex(2) man page update help request
On 05/15/2014 08:42 AM, chrubis@...e.cz wrote:
> Hi!
>> People have a number of times noted that there are problems
>> with syscall(), but I'm not knowledgeable on the details.
>> I'd happily take a patch to the man page (which, for historical
>> reasons, is actually syscall(2)) that explains the the problems
>> (and ideally notes those platforms where there are no problems).
>
> Have a look at this commit that tries to deal with passing 64 bit
> numbers to syscalls. On 32 bit ABI (but not on X32) these needs to be
> split up (accordingly to machine endianity).
>
> https://github.com/linux-test-project/ltp/commit/04afb02b4280a20c262054e8f99a3fad4ad54916
>
That is wrong, too. That assumes that there will never be padding
words, which isn't true in the general case, either.
I really believe the proper fix is to use assembly syscall stubs. In
klibc I build a fairly elaborate machinery to autogenerate such syscall
stubs for a variety of architectures.
-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