Summary: | sys-kernel/linux-headers-2.4.26-r1 - __NR_waitpid should not be defined in linux/include/asm-arm/unistd.h | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Christopher Friedt <chrisfriedt> |
Component: | [OLD] Core system | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | VERIFIED FIXED | ||
Severity: | critical | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | ARM | ||
OS: | Linux | ||
URL: | http://www.nabble.com/%28ARM%29-small-patch-for-linux---headers-2.4.26-r1-td16094154.html | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | removes __NR_waitpid from include/asm-arm/unistd.h in the kernel headers / sources |
Description
Christopher Friedt
2008-03-17 12:58:54 UTC
Created attachment 146391 [details, diff]
removes __NR_waitpid from include/asm-arm/unistd.h in the kernel headers / sources
I haven't added the URL yet because I thought I would just redirect to my message on the gentoo-embedded list. See Subj. "(ARM) small patch for linux / headers 2.4.26-r1", sent on 20080317 Sorry, 2.4 kernels/linux-headers are completely unsupported, move on. (In reply to comment #3) > Sorry, 2.4 kernels/linux-headers are completely unsupported, move on. > I don't care if you don't support the 2.4 kernel - I unfortunately have to. And there are probably hundreds of people that could benefit from this patch, not just myself. http://tech.groups.yahoo.com/group/ts-7000/ Haven't you forgotten something? Isn't this whole Gentoo thing supposed to be a community driven effort in the first place? By the people, for the people? This is a bug that wasn't fixed in the 2.4.26-rc1 kernel before it became stable. It's a _very_ obvious bug for anyone who uses an ARM processor. Look at the notes by Russel King - waitpid is NOT IMPLEMENTED. It should not be defined in include/asm-arm/unistd.h At least be intelligent enough to accept a bugfix that you don't have to do any work for instead of complaining that you don't want to do any work. If you fetch =sys-kernel/linux-headers-2.4.26-r1, and unpack it, you'll notice that __NR_waitpid is defined in include/asm-arm/unistd.h . This list is what defines the system calls for the linux operating system and is pivotal for having a functional libc. According to the release notes from Russel King[2], who is basically the father of the ARM / Linux project, waitpid is _NOT_ implemented in the arm-linux kernel. If you scroll further down in include/asm-arm/unistd.h, you'll notice that waitpid is a static inline function that acts as a wrapper for wait4. That is further proof that waitpid is _not_ implemented. Hence, __NR_waitpid should _NOT_ be defined in asm-arm/unistd.h . If you look at your own 2.6 linux sources, you will find that __NR_waitpid is also not defined there. This is no coincidence, and it is not defined for a reason. Glibc will break if compiled against the 2.4.26-r1 kernel headers as they are, resulting in ENOSYS (errno # 38 / Function not implemented) every time that waitpid or popen is called. Re-read Comment #3 a couple of times, please. re-assign to the right people ... (In reply to comment #7) > re-assign to the right people ... > Thanks SpanKy - I'm glad that its been properly redirected. added to the 2.4.36 headers, thanks Thanks :) |