Re: handle_futex_death() infinite loop on ARM (fwd)
On Wed, 4 Jul 2007 12:23:18 +0200, Lennert Buytenhek wrote: >If you're also running into glibc's tst-robust1 test suite test >locking up your ARM machine, you're probably running into the fact >that asm-arm/futex.h includes asm-generic/futex.h, and >asm-generic/futex.h defines futex_atomic_cmpxchg_inatomic() to >return -ENOSYS. This causes handle_futex_death() to loop forever. Has there been any progress on fixing this yet? I've studied the relevant futex code (handle_futex_death() and asm-${arch}/futex.h), and it seems that many archs are seriously broken now, not just arm. Any arch that wires up the set_robust_list() syscall while implementing its asm-${arch}/futex.h by including asm-generic/futex.h allows its kernels to be hung by unprivileged user-space code. My concern is arm, but it seems alpha, avr32, h8300, m68k, m68knommu, and sh64 are also affected by this bug. /Mikael - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: handle_futex_death() infinite loop on ARM (fwd)
On Wed, 4 Jul 2007 12:23:18 +0200, Lennert Buytenhek wrote: If you're also running into glibc's tst-robust1 test suite test locking up your ARM machine, you're probably running into the fact that asm-arm/futex.h includes asm-generic/futex.h, and asm-generic/futex.h defines futex_atomic_cmpxchg_inatomic() to return -ENOSYS. This causes handle_futex_death() to loop forever. Has there been any progress on fixing this yet? I've studied the relevant futex code (handle_futex_death() and asm-${arch}/futex.h), and it seems that many archs are seriously broken now, not just arm. Any arch that wires up the set_robust_list() syscall while implementing its asm-${arch}/futex.h by including asm-generic/futex.h allows its kernels to be hung by unprivileged user-space code. My concern is arm, but it seems alpha, avr32, h8300, m68k, m68knommu, and sh64 are also affected by this bug. /Mikael - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
handle_futex_death() infinite loop on ARM (fwd)
- Forwarded message from Lennert Buytenhek <[EMAIL PROTECTED]> - Date: Wed, 13 Jun 2007 20:40:40 +0200 From: Lennert Buytenhek <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Subject: handle_futex_death() infinite loop User-Agent: Mutt/1.4.1i Hi, If you're also running into glibc's tst-robust1 test suite test locking up your ARM machine, you're probably running into the fact that asm-arm/futex.h includes asm-generic/futex.h, and asm-generic/futex.h defines futex_atomic_cmpxchg_inatomic() to return -ENOSYS. This causes handle_futex_death() to loop forever. cheers, Lennert - End forwarded message - - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
handle_futex_death() infinite loop on ARM (fwd)
- Forwarded message from Lennert Buytenhek [EMAIL PROTECTED] - Date: Wed, 13 Jun 2007 20:40:40 +0200 From: Lennert Buytenhek [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: handle_futex_death() infinite loop User-Agent: Mutt/1.4.1i Hi, If you're also running into glibc's tst-robust1 test suite test locking up your ARM machine, you're probably running into the fact that asm-arm/futex.h includes asm-generic/futex.h, and asm-generic/futex.h defines futex_atomic_cmpxchg_inatomic() to return -ENOSYS. This causes handle_futex_death() to loop forever. cheers, Lennert - End forwarded message - - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/