Fix for include/linux/fs.h in 2.4.0 kernels

Jocelyn Mayer (jocelyn.mayer@netgem.com)
Sat, 03 Feb 2001 00:04:16 +0100


I had some problems while compiling some applications
with the 2.4.0 kernel.
The problem was a conflict between string.h from the libc
and the one from the kernel, which is included in fs.h
So, using <string.h> and <linux/fs.h> at the same time
brings some conflicts.
It seems to me that <linux/string.h> should not be apparent
from user mode, so I did this patch:

--- fs.h-orig Fri Feb 2 23:55:35
2001
+++ fs.h Fri Feb 2 21:26:05
2001
@@ -20,7 +20,7
@@
#include
<linux/stat.h>
#include
<linux/cache.h>
#include
<linux/stddef.h>
-#include
<linux/string.h>
+/* #include <linux/string.h>
*/

#include
<asm/atomic.h>
#include
<asm/bitops.h>
@@ -190,6 +190,7
@@

#include
<asm/semaphore.h>
#include
<asm/byteorder.h>
+#include
<linux/string.h>

extern void update_atime (struct inode
*);
#define UPDATE_ATIME(inode) update_atime
(inode)

Like this, the #include <linux/string.h> is "protected"
by a #ifdef __KERNEL__, so I don't have any conflict any more.

I recompiled my kernel without any problem since I did that patch.

Regards.

Jocelyn Mayer.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/