Re: 2.6.31.1 BUG #include <asm/bitsperlong.h>

From: Bernard Pidoux
Date: Sun Sep 27 2009 - 08:44:50 EST


I downloaded again linux-2.6.31.1.tar.bz2 and unpacked it.

ll /usr/src/linux-2.6.31.1/include/
total 128
drwxrwxr-x 3 root root 4096 2009-09-24 17:45 acpi/
lrwxrwxrwx 1 root root 7 2009-09-27 14:34 asm -> asm-x86/
drwxrwxr-x 3 root root 4096 2009-09-24 17:45 asm-generic/
drwxr-xr-x 2 root root 4096 2009-09-27 14:34 asm-x86/

and

ll /usr/src/linux-2.6.31.1/include/asm/
total 8
-rw-r--r-- 1 root root 4890 2009-09-27 14:34 asm-offsets.h

So, I think that the kernel header problem is in the linux package, not in
my system installation.

Bernard Pidoux



On Sun, Sep 27, 2009 at 01:16:41PM +0200, Bernard Pidoux wrote:
The problem is that when I compile an application that never caused any problem before I get an error due to incorrect reference to <asm/bitsperlong>

This was due to int-ll64.h including <asm/bitsperlong.h> which does not exists.

Is the correct solution to replace symbolic link ?

/usr/src/linux/include/asm->asm-x86

by

/usr/src/linux/include/asm->asm-generic

The correct fix is to include the missing bitsperlong in
the asm-x86 directory.
In other words your kernel headers are broken.

Looking at latest kernel we do export bitsperlong.h.
So see if you can find a fix for your broken kernel headers.

Sam

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