Make the Lustre ioctl.h header conditional upon _IOWR (which is defined
in every arch ioctl.h) instead of the arch-specific _ASMI386_IOCTL_H
symbol.
That is still #defined to avoid re-inclusion of the kernel header.
b=14746
i=bowen.zhou
-#ifndef _ASMI386_IOCTL_H
+#ifndef _IOWR
+
+/* On i386 and x86_64, _ASM_I386_IOCTL_H is defined by the kernel's ioctl.h,
+ * and on newer kernels this header is shared as _ASM_GENERIC_IOCTL_H.
+ *
+ * We can avoid any problems with the kernel header being included again by
+ * defining _ASM_I386_IOCTL_H here so that a later occurence of <asm/ioctl.h>
+ * does not include the kernel's ioctl.h after this one. b=14746 */
#define _ASMI386_IOCTL_H
+#define _ASM_GENERIC_IOCTL_H
/* ioctl command encoding: 32 bits total, command in lower 16 bits,
* size of the parameter structure in the lower 14 bits of the