Next July 29 : Hugetlb test failure (OOPS free_hugepte_range)
Benjamin Herrenschmidt
benh at kernel.crashing.org
Thu Jul 30 22:30:28 EST 2009
On Thu, 2009-07-30 at 17:55 +0530, Sachin Sant wrote:
> Sachin Sant wrote:
> > 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.
> : ------------[ 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 000000000fe15038
> SP (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
>
More information about the Linuxppc-dev
mailing list