[klibc] ia64 build failure - no fork or ppoll syscalls in 2.6.16

Jeff Bailey jbailey at ubuntu.com
Sat Apr 22 08:52:01 PDT 2006


klibc fails to build on ia64 because it has neither fork nor the ppoll
syscalls.  This patch marks the former in SYSCALLS.def, and puts a guard
wrapper around the ppoll definition in ppoll.c

Should these calls return ENOSYS rather than simply not existing on some
systems?  If yes, please apply this and I'll follow up with a patch
shortly that does ENOSYS for this and pselect at least.

Signed-off-by: Jeff Bailey <jbailey at ubuntu.com>

--- klibc-1.3.7.orig/klibc/ppoll.c
+++ klibc-1.3.7/klibc/ppoll.c
@@ -3,6 +3,9 @@
  */

 #include <sys/poll.h>
+#include <sys/syscall.h>
+
+#if defined(__NR_ppoll)

 __extern int __ppoll(struct pollfd *, nfds_t, struct timespec *,
                     const sigset_t *, size_t);
@@ -12,3 +15,5 @@
 {
   return __ppoll(ufds, nfds, timeout, sigmask, sizeof *sigmask);
 }
+
+#endif
--- klibc-1.3.7.orig/klibc/SYSCALLS.def
+++ klibc-1.3.7/klibc/SYSCALLS.def
@@ -21,7 +21,7 @@
 <?!ia64> pid_t clone::__clone(unsigned long, void *)
 <?ia64> pid_t clone::__clone2(unsigned long, void *, void *)
 # if ! _KLIBC_NO_MMU
-<!sparc> pid_t fork()
+<!sparc,ia64> pid_t fork()
 <sparc> pid_t fork at forkish()
 #endif
 #if _KLIBC_REAL_VFORK


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: Ceci est une partie de message
	=?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=
Url : http://www.zytor.com/pipermail/klibc/attachments/20060422/ff8ca974/attachment.bin


More information about the klibc mailing list