Skip to content
  • Junxiao Bi's avatar
    ocfs2: o2hb: fix double free bug · 9e13f1f9
    Junxiao Bi authored
    This is a regression issue and caused the following kernel panic when do
    ocfs2 multiple test.
    
      BUG: unable to handle kernel paging request at 00000002000800c0
      IP: [<ffffffff81192978>] kmem_cache_alloc+0x78/0x160
      PGD 7bbe5067 PUD 0
      Oops: 0000 [#1] SMP
      Modules linked in: ocfs2_dlmfs ocfs2_stack_o2cb ocfs2_dlm ocfs2_nodemanager ocfs2_stackglue iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi xen_kbdfront xen_netfront xen_fbfront xen_blkfront
      CPU: 2 PID: 4044 Comm: mpirun Not tainted 4.5.0-rc5-next-20160225 #1
      Hardware name: Xen HVM domU, BIOS 4.3.1OVM 05/14/2014
      task: ffff88007a521a80 ti: ffff88007aed0000 task.ti: ffff88007aed0000
      RIP: 0010:[<ffffffff81192978>]  [<ffffffff81192978>] kmem_cache_alloc+0x78/0x160
      RSP: 0018:ffff88007aed3a48  EFLAGS: 00010282
      RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000001991
      RDX: 0000000000001990 RSI: 00000000024000c0 RDI: 000000000001b330
      RBP: ffff88007aed3a98 R08: ffff88007d29b330 R09: 00000002000800c0
      R10: 0000000c51376d87 R11: ffff8800792cac38 R12: ffff88007cc30f00
      R13: 00000000024000c0 R14: ffffffff811b053f R15: ffff88007aed3ce7
      FS:  0000000000000000(0000) GS:ffff88007d280000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00000002000800c0 CR3: 000000007aeb2000 CR4: 00000000000406e0
      Call Trace:
        __d_alloc+0x2f/0x1a0
        d_alloc+0x17/0x80
        lookup_dcache+0x8a/0xc0
        path_openat+0x3c3/0x1210
        do_filp_open+0x80/0xe0
        do_sys_open+0x110/0x200
        SyS_open+0x19/0x20
        do_syscall_64+0x72/0x230
        entry_SYSCALL64_slow_path+0x25/0x25
      Code: 05 e6 77 e7 7e 4d 8b 08 49 8b 40 10 4d 85 c9 0f 84 dd 00 00 00 48 85 c0 0f 84 d4 00 00 00 49 63 44 24 20 49 8b 3c 24 48 8d 4a 01 <49> 8b 1c 01 4c 89 c8 65 48 0f c7 0f 0f 94 c0 3c 01 75 b6 49 63
      RIP   kmem_cache_alloc+0x78/0x160
      CR2: 00000002000800c0
      ---[ end trace 823969e602e4aaac ]---
    
    Fixes: a4a1dfa4
    
    ("ocfs2/cluster: fix memory leak in o2hb_region_release")
    Signed-off-by: default avatarJunxiao Bi <junxiao.bi@oracle.com>
    Reviewed-by: default avatarJoseph Qi <joseph.qi@huawei.com>
    Cc: Mark Fasheh <mfasheh@suse.de>
    Cc: Joel Becker <jlbec@evilplan.org>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    9e13f1f9