This fixes a panic found by qa on "fuzzy" which uses xfs as a
module... we weren't properly cleaning up xqm. If you see the
following backtrace (can only happen if you're using xfs+quota
as a module), the problem is now fixed in the dev tree.
kernel BUG at slab.c:804!
Entering kdb (current=0xc48cc000, pid 21592) on processor 0 Oops: invalid
operand
due to oops @ 0xc0129101
eax = 0x0000001a ebx = 0xc3fc0378 ecx = 0x00000001 edx = 0x00000001
esi = 0xc3fc036f edi = 0xc8915e14 esp = 0xc48cd9d0 eip = 0xc0129101
ebp = 0xc48cda10 xss = 0x00000018 xcs = 0x00000010 eflags = 0x00010286
xds = 0x00000018 xes = 0x00000018 origeax = 0xffffffff ®s = 0xc48cd99c
[0]kdb> b
EBP EIP Function(args)
0xc48cda10 0xc0129101 kmem_cache_create+0x37d (0xc8915e09, 0x164, 0x20, 0x0,
0x0)
kernel .text 0xc0100000 0xc0128d84 0xc0129150
0xc48cda30 0xc887f75c [xfs_support]kmem_zone_init+0x18 (0x164, 0xc8915e09)
xfs_support .text 0xc887f060 0xc887f744
0xc887f760
0xc48cda50 0xc8895cd4 [xfs]xfs_qm_init+0x124
xfs .text 0xc888f060 0xc8895bb0 0xc8895d40
0xc48cda58 0xc8895e4a [xfs]xfs_qm_hold_quotafs_ref+0x1e (0xc4293000)
xfs .text 0xc888f060 0xc8895e2c 0xc8895e78
0xc48cda7c 0xc8897323 [xfs]xfs_qm_init_quotainfo+0x3b (0xc4293000)
xfs .text 0xc888f060 0xc88972e8 0xc8897504
0xc48cda94 0xc889627b [xfs]xfs_qm_mount_quotas+0x1af (0xc4293000)
xfs .text 0xc888f060 0xc88960cc 0xc889643c
0xc48cdb70 0xc88f21e1 [xfs]xfs_mountfs+0xe3d (0xc3a6fc60, 0xc4293000, 0x806,
0x0)
xfs .text 0xc888f060 0xc88f13a4 0xc88f2288
Date: Wed May 23 20:34:41 PDT 2001
Workarea: snort.melbourne.sgi.com:/diskb/build4/nathans/linux-xfs
The following file(s) were checked into:
bonnie.engr.sgi.com:/isms/slinx/2.4.x-xfs
Modid: 2.4.x-xfs:slinx:95888a
linux/fs/xfs/xfsquotasstubs.c - 1.14
linux/fs/xfs/xfs_vfsops.c - 1.317
linux/fs/xfs/xfs_qm.c - 1.69
- rework the way we initialize and tear down the quota-related
kmem zones. this fixes a problem with (multiple) use of xfs
as a module, found by auto-qa.
|