[2.6.30-rc1] Crash in .hpte_need_flush with hugetlbfs test[shm-fork]

Sachin Sant sachinp at in.ibm.com
Wed Apr 8 17:57:17 EST 2009


I was executing libhugetlbfs tests on a power6 box [9117-MMA]. One of the
sub test (shm-fork) caused the machine to crash. Here is the information :

llm62 login: cpu 0x1: Vector: 300 (Data Access) at [c0000000f9827490]
    pc: c000000000038028: .hpte_need_flush+0x1b8/0x2d8
    lr: c000000000037edc: .hpte_need_flush+0x6c/0x2d8
    sp: c0000000f9827710
   msr: 8000000000009032
   dar: c0000000d0157260
 dsisr: 40000000
  current = 0xc0000000f970bc20
  paca    = 0xc000000000a82500
    pid   = 11314, comm = shm-fork
enter ? for help
[c0000000f9827710] c000000000038050 .hpte_need_flush+0x1e0/0x2d8 (unreliable)
[c0000000f98277d0] c000000000039d78 .huge_ptep_get_and_clear+0x40/0x5c
[c0000000f9827850] c00000000010fe88 .__unmap_hugepage_range+0x178/0x2b8
[c0000000f9827940] c00000000011001c .unmap_hugepage_range+0x54/0x88
[c0000000f98279e0] c0000000000f9dc4 .unmap_vmas+0x178/0x8f4
[c0000000f9827b30] c0000000000ff4f4 .unmap_region+0xfc/0x1d8
[c0000000f9827c00] c000000000100c68 .do_munmap+0x2f4/0x38c
[c0000000f9827cc0] c000000000289a74 .SyS_shmdt+0xc0/0x188
[c0000000f9827d70] c00000000000c30c .sys_ipc+0x26c/0x2f4
[c0000000f9827e30] c0000000000084ac syscall_exit+0x0/0x40
--- Exception: c01 (System Call) at 000004000020d2dc
SP (fffd23a3c50) is in userspace
1:mon> di %pc
c000000000038028  eb898000      ld      r28,-32768(r9)
c00000000003802c  2f800000      cmpwi   cr7,r0,0
c000000000038030  409e0028      bne     cr7,c000000000038058    #
.hpte_need_flush+0x1e8/0x2d8
c000000000038034  7fe3fb78      mr      r3,r31
c000000000038038  7f24cb78      mr      r4,r25
c00000000003803c  7f85e378      mr      r5,r28
c000000000038040  7f6607b4      extsw   r6,r27
c000000000038044  7fa7eb78      mr      r7,r29
c000000000038048  39000000      li      r8,0
c00000000003804c  4bffc2cd      bl      c000000000034318        #
.flush_hash_page+0x0/0x1c0
c000000000038050  60000000      nop
c000000000038054  480000bc      b       c000000000038110        #
.hpte_need_flush+0x2a0/0x2d8
c000000000038058  7f0b07b5      extsw.  r11,r24
c00000000003805c  41820030      beq     c00000000003808c        #
.hpte_need_flush+0x21c/0x2d8
c000000000038060  e81e0010      ld      r0,16(r30)
c000000000038064  7fba0000      cmpd    cr7,r26,r0
1:mon>  r
R00 = 0000000000000000   R16 = 000000004f42e5b0
R01 = c0000000f9827710   R17 = 0000000000000000
R02 = c00000000098cf58   R18 = ffffffffffff9010
R03 = 0000000000000004   R19 = 0000000000000000
R04 = 000003ffec000000   R20 = 0000000000000000
R05 = c0000000d014f260   R21 = 0000040000000000
R06 = 0000220008000393   R22 = c0000000d014f260
R07 = 0000000000000001   R23 = 0000000000760000
R08 = 0000000000000004   R24 = 0000000000000000
R09 = c0000000d015f260   R25 = 0000220008000393
R10 = 000000000003ffec   R26 = c0000000f947ca80
R11 = 0000000000000330   R27 = 0000000000000004
R12 = 0000000024022422   R28 = c000000000790430
R13 = c000000000a82500   R29 = 0000000000000001
R14 = 0000000000000010   R30 = c000000000ef0430
R15 = ffffffffffffffff   R31 = 0fa89fffec000000
pc  = c000000000038028 .hpte_need_flush+0x1b8/0x2d8
lr  = c000000000037edc .hpte_need_flush+0x6c/0x2d8
msr = 8000000000009032   cr  = 44022424
ctr = c0000000000fedc0   xer = 0000000000000001   trap =  300
dar = c0000000d0157260   dsisr = 40000000
1:mon> di %lr
c000000000037edc  60000000      nop
c000000000037ee0  7c7b1b78      mr      r27,r3
c000000000037ee4  e8028cd8      ld      r0,-29480(r2)
c000000000037ee8  7fbf0040      cmpld   cr7,r31,r0
c000000000037eec  419d00a8      bgt     cr7,c000000000037f94    #
.hpte_need_flush+0x124/0x2d8
c000000000037ef0  3800ffff      li      r0,-1
c000000000037ef4  3ba00000      li      r29,0
c000000000037ef8  78000600      clrldi  r0,r0,24
c000000000037efc  7fbf0040      cmpld   cr7,r31,r0
c000000000037f00  409d000c      ble     cr7,c000000000037f0c    #
.hpte_need_flush+0x9c/0x2d8
c000000000037f04  e9228ce0      ld      r9,-29472(r2)
c000000000037f08  eba90002      lwa     r29,0(r9)
c000000000037f0c  2fbd0000      cmpdi   cr7,r29,0
c000000000037f10  e97a0390      ld      r11,912(r26)
c000000000037f14  409e003c      bne     cr7,c000000000037f50    #
.hpte_need_flush+0xe0/0x2d8
c000000000037f18  796b83e4      rldicr  r11,r11,16,47
1:mon>

CONFIG_PPC_64K_PAGES=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y

Have attached the dmesg log extracted via xmon. The libhugetlbfs
tests [v2.0] are part of autotest framework [autotest.kernel.org].
The sub test that caused this was shm-fork. I have attached the
libhugetlbfs execution log.

Thanks
-Sachin

-- 

---------------------------------
Sachin Sant
IBM Linux Technology Center
India Systems and Technology Labs
Bangalore, India
---------------------------------

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dmesg_log
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20090408/ab70c75c/attachment.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: libhugetlbfs.runlog
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20090408/ab70c75c/attachment.asc>


More information about the Linuxppc-dev mailing list