Hello, I think I can offer some some more clues to the problem in thread started by Dale, as archived here: https://www.mail-archive.com/gentoo-user@lists.gentoo.org/msg147315.html
I too get the "Your old kernel is broken. You need to update it to a newer version as syscall(<bignum>) will break." message whenever I try to emerge glibc-2.17. This happens on all three of my machines, which are kept up to date and have slightly different configurations. It is likely that many people are in a broken state, but they don't know it because they haven't tried re- emerging glibc. Previously in this thread, I see that Hinnerk van Bruinehsen asked: > Can you run; > printf "#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return \ > syscall(1000)!=-1;}\n" > syscall.c && make syscall && ./syscall && echo $? When I try this on each of my systems, I get the same output: cc syscall.c -o syscall Notice that the line with the 0 is missing. I found a work around: move to an earlier kernel. This problem happens for me on kernel-3.14.14 and for Dale on kernel-3.15.5. But, it DOESN'T happen for me on 3.12.21-r1. When I boot into the 3.12.21-r1 kernel, the printf() above outputs: cc syscall.c -o syscall 0 as it should. Could the emerge glibc fail be due to a required kernel configuration option that didn't make it into 3.14.14 or above?