Alexander Kolesen
2010-Nov-21 12:24 UTC
[JFS] Kernel oops when tried to access mounted but unplugged storage
Hello.
I''ve built a kernel from
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
(Date: Fri Nov 19 19:46:45 2010 -0800)
and got a kernel oops when tried to access to unplugged,
but mounted external usb storage formatted with JFS.
Steps to reproduce:
mkfs.jfs /dev/sdb1 (unpluggable USB hard drive)
mount /dev/sdb1 /mnt/drive
cd /mnt/drive
touch test
sync
..unplug a drive
ls
Result:
BUG: unable to handle kernel NULL pointer dereference at
0000000000000020
IP: __mark_inode_dirty
Then I got a kernel coredump. Here is a stack trace:
(gdb) bt
#0 __mark_inode_dirty (inode=0xffff880078fc1490, flags=<value
optimized out>) at fs/fs-writeback.c:990
#1 0xffffffff810e4990 in mark_inode_dirty_sync
(mnt=0xffff88007862fd00, dentry=<value optimized out>) at
include/linux/fs.h:1687
#2 touch_atime (mnt=0xffff88007862fd00, dentry=<value optimized
out>) at fs/inode.c:1505
#3 0xffffffff810dfeb4 in file_accessed (file=0xffff88006afed600,
filler=0xffffffff810dfcf8 <filldir>, buf=0xffff88007762bf38) at
include/linux/fs.h:1763
#4 vfs_readdir (file=0xffff88006afed600, filler=0xffffffff810dfcf8
<filldir>, buf=0xffff88007762bf38) at fs/readdir.c:41
#5 0xffffffff810e001a in sys_getdents (fd=<value optimized out>,
dirent=0x1f61468, count=32768) at fs/readdir.c:214
#6 0xffffffff810279ab in ?? () at arch/x86/kernel/entry_64.S:479
#7 0x00007f8b23d1a4c5 in ?? ()
#8 0x00000000000002bb in ?? ()
#9 0x0000000000000000 in ?? ()
(gdb) p bdi
$1 = (struct backing_dev_info *) 0x0
(gdb) p inode->i_mapping->backing_dev_info
$15 = (struct backing_dev_info *) 0xffff880078878d48
(gdb) p inode->i_sb->s_bdi
$16 = (struct backing_dev_info *) 0x0
I can''t do git bisect because on n''th step my system became
unbootable. But 2.6.35 doesn''t fall.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs"
in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Possibly Parallel Threads
- [PATCH V8 21/33] ocfs2: add support for read_iter and write_iter
- [PATCH V5 19/30] ocfs2: add support for read_iter, write_iter, and direct_IO_bvec
- [PATCH 06/15] genhd: Add return code to device_add_disk
- [PATCH 06/15] genhd: Add return code to device_add_disk
- iozone remove_suid oops...
