Crosscompiler broken ?
Dag Nygren
dag at newtech.fi
Wed Sep 27 23:19:38 EST 2000
Hi again,
tracing down a severe probem I am seeing when
porting Linux to a PPC-board.
The compilation of the kernel is done with a crosscompiler
on an Intel x86 system and strange things are happening:
This is the part of the code from fs/dcache.c:
==================== Code =============
do {
unsigned long tmp;
nr_hash = (1UL << order) * PAGE_SIZE /
sizeof(struct list_head);
d_hash_mask = (nr_hash - 1);
tmp = nr_hash;
d_hash_shift = 0;
while ((tmp >>= 1UL) != 0UL)
d_hash_shift++;
dentry_hashtable = (struct list_head *)
__get_free_pages(GFP_ATOMIC, order);
printk("dentry_hashtable(0.5)(addr = 0x%lx) = 0x%lx\n", &dentry_hashtable,
dentry_hashtable); /* DEB
UG */
} while (dentry_hashtable == NULL && --order >= 0);
printk("dentry_hashtable(0.7)(addr = 0x%lx) = 0x%lx\n", &dentry_hashtable,
dentry_hashtable); /* DEB
UG */
==================== Code end =============
here is the output:
__get_free_pages(): page = 0xC024A000, page_address = 0xC0240000
&dentry_hashtable = 0xc01cf0d4, stack = 0xc018af68
__get_free_pages(): page = 0xC0274000, page_address = 0xC0CC0000
dentry_hashtable(0.5)(addr = 0xc01cf0d4) = 0xc0cc0000
dentry_hashtable(0.7)(addr = 0xc01cf0d4) = 0x5
The last line is really strange, who the %&¤&%¤/ is messing around
with the contents of dentry_hashtable ?
Compiler bug ?
--
Dag Nygren email: dag at newtech.fi
Oy NewTech Ab phone: +358 9 8024910
Trasktorpet 3 fax: +358 9 8024916
02360 ESBO GSM: 0400-426312
FINLAND
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-embedded
mailing list