Re: [2.6.15-rc7@amd64] gfp.h & BUG_ON
On Wed, Jan 04, 2006 at 08:56:11AM +0100, fred wrote:
> I try to compile kernel 2.6.15-rc7 on a P4 630 EM64T.
> 1) kernel 2.6.15-rc7 compiles fine on my debian i686 distro.
> 2) compliling kernel 2.6.15-rc7 fails on the same linuxbox
> but for my amd64 distro.
> kernel crashes at bootime with this message :
> Kernel BUG at /include/linux/gfp.h:80
> invalid operand : 0000 
> CPU 0
You snipped the most interesting part: the function backtrace.
gfp_zone() crashed cause one of its callers called it with a wrong
argument. The interesting part is what caller it was.
> Looking line 80, one can see :
> static inline int gfp_zone(gfp_t gfp)
> int zone = GFP_ZONEMASK & (__force int) gfp;
> BUG_ON(zone >= GFP_ZONETYPES);
> return zone;
> 3) kernel 2.6.14 compiles fine on my debian amd64 distro.
> gfp.h differs from above : there is no BUG_ON symbol.
Yeah, that happens with development: things change :)
> 4) Any idea ?
There were quite some changes in the memory zone handling in 2.6.15. If
you have a linux git repository, run this to see what really happened:
git whatchanged -p v2.6.14..v2.6.15-rc7 include/linux/gfp.h
You might want to try linux-2.6.15 to see if the problem is already
solved. If not, the fastes way to get this solved is to report it to
the linux-kernel mailing list (see the file REPORTING-BUGS in your
kernel tree for details).
+-- Erik Mouw -- www.harddisk-recovery.com -- +31 70 370 12 90 --
| Lab address: Delftechpark 26, 2628 XH, Delft, The Netherlands