--- /dev/null
+--- uClibc-0.9.30/libc/sysdeps/linux/i386/bits/kernel_types.h.orig 2008-07-23 13:23:36.000000000 +0200
++++ uClibc-0.9.30/libc/sysdeps/linux/i386/bits/kernel_types.h 2009-01-10 12:14:27.098456370 +0100
+@@ -7,8 +7,10 @@
+
+ /* a hack for compiling a 32 bit user space with 64 bit
+ * kernel on x86_64 */
+-#if !defined(__ARCH_I386_POSIX_TYPES_H) && !defined(_ASM_X86_64_POSIX_TYPES_H)
++#if !defined(__ARCH_I386_POSIX_TYPES_H) && !defined(_ASM_X86_64_POSIX_TYPES_H) && !defined(_ASM_X86_POSIX_TYPES_32_H) && !defined(_ASM_X86_POSIX_TYPES_64_H)
+ #define _ASM_X86_64_POSIX_TYPES_H
++#define _ASM_X86_POSIX_TYPES_32_H
++#define _ASM_X86_POSIX_TYPES_64_H
+ #define __ARCH_I386_POSIX_TYPES_H
+
+ typedef unsigned short __kernel_dev_t;
+--- uClibc-0.9.30/libc/sysdeps/linux/x86_64/bits/kernel_types.h.orig 2008-07-23 13:23:36.000000000 +0200
++++ uClibc-0.9.30/libc/sysdeps/linux/x86_64/bits/kernel_types.h 2009-01-10 12:14:40.298451342 +0100
+@@ -4,8 +4,9 @@
+ * our private content, and not the kernel header, will win.
+ * -Erik
+ */
+-#ifndef _ASM_X86_64_POSIX_TYPES_H
++#if !defined(_ASM_X86_64_POSIX_TYPES_H) && !defined(_ASM_X86_POSIX_TYPES_64_H)
+ #define _ASM_X86_64_POSIX_TYPES_H
++#define _ASM_X86_POSIX_TYPES_64_H
+
+ typedef unsigned long __kernel_dev_t;
+ typedef unsigned long __kernel_ino_t;