Am Dienstag, den 01.09.2009, 18:53 +0200 schrieb Moritz Muehlenhoff: > On Sat, Jul 25, 2009 at 01:55:04PM +0200, Bastian Blank wrote: > > Patches attached: > > * Fix uio.h > > * Remove socket.h backward compatibility code. > > uio.h has been marked __KERNEL__-only upstream in commit > 812ed032cdc8138b7546eecc996879756b92d801. > > Did you submit your socket.h patch upstream?
I am bitten by that bug as well. The change in uio.h did not fix it. I updated the patch for socket.h (attached) but I'm not sure if all changes are needed, though. Applying only the first hunk (#ifdef line) fixed all build issue for me. Best regards Manuel
--- a/include/linux/socket.h +++ b/include/linux/socket.h @@ -16,7 +16,7 @@ /* _SS_MAXSIZE value minus size of ss_family */ } __attribute__ ((aligned(_K_SS_ALIGNSIZE))); /* force desired alignment */ -#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2) +#ifdef __KERNEL__ #include <asm/socket.h> /* arch-dependent defines */ #include <linux/sockios.h> /* the SIOCxxx I/O controls */ @@ -101,21 +101,6 @@ ((char *)(cmsg) - (char *)(mhdr)->msg_control))) /* - * This mess will go away with glibc - */ - -#ifdef __KERNEL__ -#define __KINLINE static inline -#elif defined(__GNUC__) -#define __KINLINE static __inline__ -#elif defined(__cplusplus) -#define __KINLINE static inline -#else -#define __KINLINE static -#endif - - -/* * Get the next cmsg header * * PLEASE, do not touch this function. If you think, that it is @@ -128,7 +113,7 @@ * ancillary object DATA. --ANK (980731) */ -__KINLINE struct cmsghdr * __cmsg_nxthdr(void *__ctl, __kernel_size_t __size, +static inline struct cmsghdr * __cmsg_nxthdr(void *__ctl, __kernel_size_t __size, struct cmsghdr *__cmsg) { struct cmsghdr * __ptr; @@ -140,7 +125,7 @@ return __ptr; } -__KINLINE struct cmsghdr * cmsg_nxthdr (struct msghdr *__msg, struct cmsghdr *__cmsg) +static inline struct cmsghdr * cmsg_nxthdr (struct msghdr *__msg, struct cmsghdr *__cmsg) { return __cmsg_nxthdr(__msg->msg_control, __msg->msg_controllen, __cmsg); }