Hi,

mounting the following image, creating a directory and unmounting it,
produces an oops during unmount

http://www.cccmz.de/~snakebyte/jfs.72.img.bz2

r...@computer-desktop:~/testing# mount -o loop -t jfs cfs/jfs.72.img 
/media/test/
r...@computer-desktop:~/testing# mkdir /media/test/foo
r...@computer-desktop:~/testing# umount /media/test

I tried this again with JFS debugging enabled, but it did not make a difference.

Kernel is vanilla -rc1 from -git (with the confusing -rc2 in the Makefile)

[  531.380269] BUG: unable to handle kernel paging request at 006f006f
[  531.380656] IP: [<c01b798c>] dispose_list+0x3c/0xf0
[  531.380961] *pde = 00000000
[  531.381154] Oops: 0002 [#1] DEBUG_PAGEALLOC
[  531.381483] last sysfs file: /sys/block/sda/size
[  531.381625] Modules linked in: jfs nfsd exportfs nfs lockd nfs_acl 
auth_rpcgss sunrpc ipv6 fuse unix
[  531.382881]
[  531.383065] Pid: 4192, comm: umount Not tainted (2.6.32-rc2 #24)
[  531.383224] EIP: 0060:[<c01b798c>] EFLAGS: 00010206 CPU: 0
[  531.383380] EIP is at dispose_list+0x3c/0xf0
[  531.383528] EAX: 006603ff EBX: c9c58db8 ECX: c54fa6e8 EDX: 006f006f
[  531.383744] ESI: c9c58dc0 EDI: cab96ef8 EBP: cab96ee4 ESP: cab96ed4
[  531.383903]  DS: 007b ES: 007b FS: 0000 GS: 00e0 SS: 0068
[  531.384019] Process umount (pid: 4192, ti=cab96000 task=c54fa6e8 
task.ti=cab96000)
[  531.384019] Stack:
[  531.384019]  00000000 c9c3cdb8 cab74cb4 c9fd4dc8 cab96f0c c01b7d5b cab74cb4 
00000001
[  531.384019] <0> 00000002 c9fd4dc0 c9fd4dc0 cab74bf0 d19033c0 d19059c0 
cab96f24 c01a5f32
[  531.384019] <0> d19059c0 cab96f34 c6948ce8 00000003 cab96f34 c01a5fe5 
cab74bf0 c01e30f0
[  531.384019] Call Trace:
[  531.384019]  [<c01b7d5b>] ? invalidate_inodes+0xcb/0x130
[  531.384019]  [<c01a5f32>] ? generic_shutdown_super+0x42/0xd0
[  531.384019]  [<c01a5fe5>] ? kill_block_super+0x25/0x40
[  531.384019]  [<c01e30f0>] ? vfs_quota_off+0x0/0x20
[  531.384019]  [<c01a66ca>] ? deactivate_super+0x7a/0x90
[  531.384019]  [<c01bb37a>] ? mntput_no_expire+0x5a/0x90
[  531.384019]  [<c01bb66c>] ? sys_umount+0x4c/0x320
[  531.384019]  [<c01bb959>] ? sys_oldumount+0x19/0x20
[  531.384019]  [<c010305b>] ? sysenter_do_call+0x12/0x32
[  531.384019] Code: 00 00 00 39 f0 75 77 e9 a3 00 00 00 8d 76 00 89 d8 e8 c9 
fc ff ff b8 70 e0 90 c0 e8 8f ac 47 00 8b 53 04 85 d2 74 18 8b 03 85 c0 <89> 02 
74 03 89 50 04 c7 03 00 00 00 00 c7 43 04
00 00 00 00 8b
[  531.384019] EIP: [<c01b798c>] dispose_list+0x3c/0xf0 SS:ESP 0068:cab96ed4
[  531.384019] CR2: 00000000006f006f
[  531.395393] ---[ end trace 422e7957c361f27c ]---
[  531.395534] ------------[ cut here ]------------
[  531.395704] WARNING: at kernel/exit.c:897 do_exit+0x5f4/0x6b0()
[  531.395854] Modules linked in: jfs nfsd exportfs nfs lockd nfs_acl 
auth_rpcgss sunrpc ipv6 fuse unix
[  531.397027] Pid: 4192, comm: umount Tainted: G      D    2.6.32-rc2 #24
[  531.397195] Call Trace:
[  531.397348]  [<c012c784>] ? do_exit+0x5f4/0x6b0
[  531.397512]  [<c0128e0c>] warn_slowpath_common+0x6c/0xc0
[  531.397688]  [<c012c784>] ? do_exit+0x5f4/0x6b0
[  531.397840]  [<c0128e75>] warn_slowpath_null+0x15/0x20
[  531.398013]  [<c012c784>] do_exit+0x5f4/0x6b0
[  531.398163]  [<c0103177>] ? restore_all_notrace+0x0/0x18
[  531.398343]  [<c062fc5a>] ? printk+0x18/0x1e
[  531.398493]  [<c0128d3f>] ? oops_exit+0x2f/0x40
[  531.398668]  [<c0106262>] oops_end+0x92/0xa0
[  531.398816]  [<c062fc5a>] ? printk+0x18/0x1e
[  531.398994]  [<c011ade6>] no_context+0xb6/0x150
[  531.399147]  [<c011aed7>] __bad_area_nosemaphore+0x57/0x190
[  531.399337]  [<c015049b>] ? __lock_acquire+0x2bb/0x1280
[  531.399497]  [<c011b058>] ? bad_area+0x28/0x50
[  531.399666]  [<c011b06a>] bad_area+0x3a/0x50
[  531.399816]  [<c011b3e5>] do_page_fault+0x235/0x280
[  531.399989]  [<c011b1b0>] ? do_page_fault+0x0/0x280
[  531.400184]  [<c0632ae8>] error_code+0x70/0x78
[  531.400336]  [<c063007b>] ? schedule+0x2cb/0x3f0
[  531.400509]  [<c01b798c>] ? dispose_list+0x3c/0xf0
[  531.400663]  [<c01b7d5b>] invalidate_inodes+0xcb/0x130
[  531.400839]  [<c01a5f32>] generic_shutdown_super+0x42/0xd0
[  531.400999]  [<c01a5fe5>] kill_block_super+0x25/0x40
[  531.401174]  [<c01e30f0>] ? vfs_quota_off+0x0/0x20
[  531.401327]  [<c01a66ca>] deactivate_super+0x7a/0x90
[  531.401501]  [<c01bb37a>] mntput_no_expire+0x5a/0x90
[  531.401655]  [<c01bb66c>] sys_umount+0x4c/0x320
[  531.401826]  [<c01bb959>] sys_oldumount+0x19/0x20
[  531.401978]  [<c010305b>] sysenter_do_call+0x12/0x32
[  531.402147] ---[ end trace 422e7957c361f27d ]---


(gdb) l *(dispose_list+0x3c)
0xc01b798c is in dispose_list (include/linux/list.h:571).
566     
567     static inline void __hlist_del(struct hlist_node *n)
568     {
569             struct hlist_node *next = n->next;
570             struct hlist_node **pprev = n->pprev;
571             *pprev = next;
572             if (next)
573                     next->pprev = pprev;
574     }
575     
(gdb) l *(invalidate_inodes+0xcb)
0xc01b7d5b is in invalidate_inodes (fs/inode.c:436).
431             fsnotify_unmount_inodes(&sb->s_inodes);
432             busy = invalidate_list(&sb->s_inodes, &throw_away);
433             spin_unlock(&inode_lock);
434     
435             dispose_list(&throw_away);
436             up_write(&iprune_sem);
437     
438             return busy;
439     }
440     EXPORT_SYMBOL(invalidate_inodes);

Regards, Eric

------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
Jfs-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jfs-discussion

Reply via email to