Bug 458182

Summary: cat /sys/kernel/debug/gfs2/X/glocks causes panic
Product: Red Hat Enterprise Linux 5 Reporter: Nate Straz <nstraz>
Component: kernelAssignee: Steve Whitehouse <swhiteho>
Status: CLOSED CURRENTRELEASE QA Contact: Cluster QE <mspqa-list>
Severity: high Docs Contact:
Priority: medium    
Version: 5.3CC: adas, bmarzins, cluster-maint, edamato, rpeterso
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-08-07 14:24:26 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Nate Straz 2008-08-06 21:30:52 UTC
Description of problem:

When I cat the glocks debugfs file for a mounted GFS2 file system I hit the following panic.

[root@morph-01 morph-cluster:brawl0]# cat glocks  > /tmp/glocks
BUG: unable to handle kernel paging request at virtual address 8136bd30
 printing eip:
c04e5eb6
*pde = 00000000
Oops: 0000 [#1]
SMP 
last sysfs file: /fs/gfs2/morph-cluster:brawl0/lock_module/block
Modules linked in: lock_dlm(U) gfs2(U) dlm configfs autofs4 hidp rfcomm l2cap bluetooth sunrpc ipv6 xfrm_nalgo crypto_api dm_multipath video sbs backlight i2c_ec button battery asus_acpi ac lp i2c_i801 parport_pc ide_cd parport e1000 e7xxx_edac cdrom intel_rng edac_mc i2c_core floppy sg pcspkr dm_snapshot dm_zero dm_mirror dm_mod qla2xxx scsi_transport_fc ata_piix libata sd_mod scsi_mod ext3 jbd uhci_hcd ohci_hcd ehci_hcd
CPU:    1
EIP:    0060:[<c04e5eb6>]    Tainted: G      VLI
EFLAGS: 00010297   (2.6.18-98.el5 #1) 
EIP is at vsnprintf+0x2aa/0x45d
eax: 8136bd30   ebx: ffffffff   ecx: 8136bd30   edx: fffffffe
esi: f6a7684b   edi: f55e8db4   ebp: ffffffff   esp: f55e8d38
ds: 007b   es: 007b   ss: 0068
Process cat (pid: 3187, ti=f55e8000 task=f6ba9000 task.ti=f55e8000)
Stack: 095897f3 f6a7680c 00498089 0000000a ffffffff ffffffff 00000000 f8da6252 
       f6a7680c f64e7c40 f8da6228 f8da621f c04e60df f55e8d90 f8d8f7f0 f55e8d90 
       f8da621f c3131ed0 0000328c f8d8fa3f f64e7c40 f8da6228 f8da621f f8da621f 
Call Trace:
 [<c04e60df>] vsprintf+0xd/0xf
 [<f8d8f7f0>] gfs2_print_dbg+0x28/0x4f [gfs2]
 [<f8d8fa3f>] __dump_glock+0x228/0x39f [gfs2]
 [<c0472b05>] __find_get_block_slow+0xfb/0x105
 [<c0488a46>] mntput_no_expire+0x11/0x6a
 [<c047e7d5>] link_path_walk+0xb3/0xbd
 [<c0459aab>] get_page_from_freelist+0x96/0x333
 [<c04059bf>] apic_timer_interrupt+0x1f/0x24
 [<c0609b9c>] _read_lock+0x4/0xc
 [<f8d8fbcd>] dump_glock+0x17/0x1f [gfs2]
 [<c048c2c4>] seq_read+0xe7/0x273
 [<c048c1dd>] seq_read+0x0/0x273
 [<c0471734>] vfs_read+0x9f/0x141
 [<c0471b82>] sys_read+0x3c/0x63
 [<c0404eff>] syscall_call+0x7/0xb
 =======================
Code: 74 24 10 73 03 c6 06 20 4d 46 85 ed 7f f1 e9 a1 00 00 00 8b 0f b8 12 84 63 c0 8b 54 24 14 81 f9 ff 0f 00 00 0f 46 c8 89 c8 eb 06 <80> 38 00 74 07 40 4a 83 fa ff 75 f4 29 c8 f6 44 24 18 10 89 c3 
EIP: [<c04e5eb6>] vsnprintf+0x2aa/0x45d SS:ESP 0068:f55e8d38
 <0>Kernel panic - not syncing: Fatal exception


Version-Release number of selected component (if applicable):
kernel-2.6.18-98.el5
kmod-gfs2-1.98-1.1.el5.abhi.12

How reproducible:
100%

Steps to Reproduce:
1. mount -t gfs2 /dev/foo /mnt/foo
2. cat /sys/kernel/debug/gfs2/*/glocks
3. panic
  
Actual results:


Expected results:


Additional info:

Comment 1 Nate Straz 2008-08-06 21:52:30 UTC
I retested with the gfs2.ko from kernel-2.6.18-101.el5 and I was not able to hit the panic.  Loading the gfs2.ko from kmod-gfs2-1.98-1.1.el5.abhi.12 caused the bug to come back.

Comment 2 Steve Whitehouse 2008-08-07 08:06:42 UTC
Is this missing bz #456334? If so please retest with that patch applied.

Comment 3 Nate Straz 2008-08-07 14:24:26 UTC
Marking this a closed against the latest kernel.  With the -101.el5 kernel I was not able to panic the system by simply mounting the file system and reading the glocks file.