This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug nptl/18726] Futexes are broken on MIPS/n32
- From: "oss at malat dot biz" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Tue, 28 Jul 2015 10:27:40 +0000
- Subject: [Bug nptl/18726] Futexes are broken on MIPS/n32
- Auto-submitted: auto-generated
- References: <bug-18726-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=18726
--- Comment #6 from Petr Malat <oss at malat dot biz> ---
(In reply to joseph@codesourcery.com from comment #5)
> On Mon, 27 Jul 2015, oss at malat dot biz wrote:
> > After checking implementation of these new syscalls, which were not present
> > in my old version, I think the proper fix would be to change futex value to
> > signed int type.
>
> Are you saying that in fact the bug was fixed in the kernel, but later
> than 2.6.32?
No, I meant my original proposal of changing ARGIFY is not good, because it
will not work with ftruncate64, lockf64 etc., which are not present in my old
version.
> Because the conclusion in the kernel community was that the
> kernel was the right place to fix this (by always sign-extending affected
> syscall arguments on kernel entry).
OK, I will try with a never kernel. Nevertheless I still think this is also
a bug on glibc side as it violates the ABI.
> And I think the conclusion from more recent discussions in the glibc context
> of a generic API for internal futex uses in glibc is that unsigned int is
> the preferred type for futexes within glibc.
I've got this idea from the prototype specified in futex(2), which says val
argument is of the type int, but on the other hand using unsigned is aligned
with the kernel, as the value is unsigned there too.
--
You are receiving this mail because:
You are on the CC list for the bug.