Re: Next July 29 : Hugetlb test failure (OOPS free_hugepte_range)
flat view
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2009-07-30 12:30:49
Also in:
linux-next
On Thu, 2009-07-30 at 17:55 +0530, Sachin Sant wrote:
Sachin Sant wrote:quoted
next-20090728 worked fine. Last commit that changed arch/powerpc/mm/hugetlbpage.c was cb7f3f2d92d1b26c13e30e639b6ee4a78e9a3afa powerpc: Add memory management headers for new 64-bit BookE I will try reverting that commit and check if that helps.Hi Ben, Reverting the above patch helped. The tests ran fine against the patched kernel. But ofcourse that's not the solution :-) Here is some data from xmon that might help find the reason for the failure. This is with today's next.
Thanks. I'll have a look next week. I think when I changed the indices I may have forgotten to update something. Cheers, Ben.
quoted hunk ↗ jump to hunk
: ------------[ cut here ]------------ cpu 0x0: Vector: 700 (Program Check) at [c000000038923560] pc: c0000000000486d4: .free_hugepte_range+0x68/0xa0 lr: c000000000048954: .hugetlb_free_pgd_range+0x248/0x38c sp: c0000000389237e0 msr: 8000000000029032 current = 0xc00000003b1d7780 paca = 0xc000000001002400 pid = 2839, comm = readback kernel BUG at /home/linux-2.6.31-rc4/arch/powerpc/include/asm/pgalloc.h:36! enter ? for help [c000000038923880] c000000000048954 .hugetlb_free_pgd_range+0x248/0x38c [c000000038923970] c000000000165a48 .free_pgtables+0xa0/0x154 [c000000038923a30] c000000000167f78 .exit_mmap+0x13c/0x1cc [c000000038923ae0] c0000000000997ec .mmput+0x68/0x14c [c000000038923b70] c00000000009f1d4 .exit_mm+0x190/0x1b8 [c000000038923c20] c0000000000a16e8 .do_exit+0x214/0x784 [c000000038923d00] c0000000000a1d1c .do_group_exit+0xc4/0xf8 [c000000038923da0] c0000000000a1d7c .SyS_exit_group+0x2c/0x48 [c000000038923e30] c0000000000085b4 syscall_exit+0x0/0x40--- Exception: c01 (System Call) at 000000000fe15038SP (ffb8e030) is in userspace 0:mon> e cpu 0x0: Vector: 700 (Program Check) at [c000000038923560] pc: c0000000000486d4: .free_hugepte_range+0x68/0xa0 lr: c000000000048954: .hugetlb_free_pgd_range+0x248/0x38c sp: c0000000389237e0 msr: 8000000000029032 current = 0xc00000003b1d7780 paca = 0xc000000001002400 pid = 2839, comm = readback kernel BUG at /home/linux-2.6.31-rc4/arch/powerpc/include/asm/pgalloc.h:36! 0:mon> r R00 = 0000000000000001 R16 = 0000000000000000 R01 = c0000000389237e0 R17 = 0000000000000001 R02 = c000000000f165a8 R18 = 000000003fffffff R03 = c0000000014504d0 R19 = 0000000000000000 R04 = c000000039390001 R20 = 0000000000000000 R05 = 0000000000000007 R21 = 0000010000000000 R06 = 0000000000000000 R22 = 0000000040000000 R07 = 0000000040000000 R23 = c0000000014504d0 R08 = c00000003d708188 R24 = 000000003fffffff R09 = c00000003eb40000 R25 = 0000000000000007 R10 = c00000003d708188 R26 = c00000003ebd41b8 R11 = 0000000000000018 R27 = c0000000014504d0 R12 = 0000000040000448 R28 = c00000003eb40018 R13 = c000000001002400 R29 = 0000000000000008 R14 = 00000000ffffffff R30 = 0000000040000000 R15 = 00000000ffffffff R31 = c0000000389237e0 pc = c0000000000486d4 .free_hugepte_range+0x68/0xa0 lr = c000000000048954 .hugetlb_free_pgd_range+0x248/0x38c msr = 8000000000029032 cr = 20042444 ctr = 800000000000b6f4 xer = 0000000000000001 trap = 700 0:mon> Line 36 of arch/powerpc/include/asm/pgalloc.h corresponds to BUG_ON(cachenum > PGF_CACHENUM_MASK); May be something to do with number of elements in huge_pgtable_cache_name ?? Thanks -Sachin