This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libgomp/47731] New: [4.6 Regression] futex_wait broken on Linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47731

           Summary: [4.6 Regression] futex_wait broken on Linux
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libgomp
        AssignedTo: jakub@gcc.gnu.org
        ReportedBy: jakub@gcc.gnu.org


As reported in http://gcc.gnu.org/ml/fortran/2011-02/msg00108.html
futex_wait is very much broken since
http://gcc.gnu.org/ml/gcc-patches/2010-10/msg00256.html
There are two problems:
1) the arm futex.h version is broken, as it doesn't pass NULL as the timeout
   parameter to FUTEX_WAIT or FUTEX_WAIT|FUTEX_PRIVATE.  This means the
   parameter contains random garbage, if it happens to be NULL, fine, otherwise
   it could contain some valid pointer and risk that the futex times out or
   it can contain invalid address and thus the syscall can EFAULT right away.
2) as wait.h includes "futex.h", the CPU specific futex.h versions are no
longer
   used.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]