From: Dave Chinner <david@fromorbit.com>
To: Christoph Hellwig <hch@lst.de>
Cc: viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH 1/4] fs: do not drop inode_lock in dispose_list
Date: Mon, 25 Oct 2010 20:20:36 +1100 [thread overview]
Message-ID: <20101025092035.GU32255@dastard> (raw)
In-Reply-To: <20101025054611.GB16131@dastard>
On Mon, Oct 25, 2010 at 04:46:11PM +1100, Dave Chinner wrote:
> On Mon, Oct 25, 2010 at 04:33:53PM +1100, Dave Chinner wrote:
> > On Sun, Oct 24, 2010 at 07:40:24PM +0200, Christoph Hellwig wrote:
> > >
> > > Despite the comment above it we can not safely drop the lock here.
> > > invalidate_list is called from many other places that just umount.
> > > Also switch to proper list macros now that we never drop the lock.
> > >
> > > Signed-off-by: Christoph Hellwig <hch@lst.de>
> >
> > What tree are these patches against - a couple of them don't quite
> > apply to Al's merge-stem tree...
>
> Not sure whether it's my merge, something in Al's tree series or
> something brought in from the post-2.6.36 tree, but it goes splat
> pretty quickly (xfstest 013) with:
>
> [ 302.233778] BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
> [ 302.235129] IP: [<ffffffff8114cc3a>] __put_super+0x2a/0x80
> [ 302.235997] PGD 7a98a067 PUD 7a98b067 PMD 0
> [ 302.236024] Oops: 0002 [#1] SMP
> [ 302.236024] last sysfs file: /sys/devices/virtio-pci/virtio1/block/vda/removable
> [ 302.236024] CPU 1
> [ 302.236024] Modules linked in:
> [ 302.236024]
> [ 302.236024] Pid: 2523, comm: flush-253:0 Not tainted 2.6.36-dgc+ #577 /Bochs
> [ 302.236024] RIP: 0010:[<ffffffff8114cc3a>] [<ffffffff8114cc3a>] __put_super+0x2a/0x80
> [ 302.236024] RSP: 0018:ffff88007b6a3c60 EFLAGS: 00010246
> [ 302.236024] RAX: ffff88007cf3c820 RBX: ffff88007c3e1000 RCX: ffff88007b6a3c60
> [ 302.236024] RDX: 0000000000000000 RSI: ffff88007b1f5220 RDI: ffff88007c3e1000
> [ 302.236024] RBP: ffff88007b6a3c70 R08: ffff88007b6a3c60 R09: ffff88007c1eb800
> [ 302.236024] R10: ffff88007b6a3c60 R11: 0000000000000001 R12: ffff88007c199778
> [ 302.236024] R13: ffff88007619b1d0 R14: ffff88007c199808 R15: ffffffff81d427e0
> [ 302.236024] FS: 0000000000000000(0000) GS:ffff88007fd00000(0000) knlGS:0000000000000000
> [ 302.236024] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [ 302.236024] CR2: 0000000000000008 CR3: 000000007a989000 CR4: 00000000000006e0
> [ 302.236024] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [ 302.236024] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [ 302.236024] Process flush-253:0 (pid: 2523, threadinfo ffff88007b6a2000, task ffff88007c91b040)
> [ 302.236024] Stack:
> [ 302.236024] ffff88007b6a3c70 ffff88007c3e1000 ffff88007b6a3c90 ffffffff8114d135
> [ 302.236024] <0> ffff88007b6a3c90 ffff88007c3e1000 ffff88007b6a3ce0 ffffffff8116e010
> [ 302.236024] <0> ffff88007b6a3d30 ffff88007c3e1068 0000000000000000 ffff88007b461ec0
> [ 302.236024] Call Trace:
> [ 302.236024] [<ffffffff8114d135>] put_super+0x25/0x40
> [ 302.236024] [<ffffffff8116e010>] writeback_inodes_wb+0x130/0x180
> [ 302.236024] [<ffffffff8116e2fb>] wb_writeback+0x29b/0x410
> [ 302.236024] [<ffffffff8105fb89>] ? default_spin_lock_flags+0x9/0x10
> [ 302.236024] [<ffffffff817f6a4f>] ? _raw_spin_lock_irqsave+0x2f/0x40
> [ 302.236024] [<ffffffff8116e507>] wb_do_writeback+0x97/0x1e0
> [ 302.236024] [<ffffffff8116e702>] bdi_writeback_thread+0xb2/0x270
> [ 302.236024] [<ffffffff8116e650>] ? bdi_writeback_thread+0x0/0x270
> [ 302.236024] [<ffffffff8109f976>] kthread+0x96/0xa0
> [ 302.236024] [<ffffffff81036de4>] kernel_thread_helper+0x4/0x10
> [ 302.236024] [<ffffffff8109f8e0>] ? kthread+0x0/0xa0
> [ 302.236024] [<ffffffff81036de0>] ? kernel_thread_helper+0x0/0x10
> [ 302.236024] Code: 90 55 48 89 e5 53 48 83 ec 08 0f 1f 44 00 00 8b 87 a8 00 00 00 48 89 fb ff c8 89 87 a8 00 00 00 85 c0 75
> [ 302.236024] RIP [<ffffffff8114cc3a>] __put_super+0x2a/0x80
> [ 302.236024] RSP <ffff88007b6a3c60>
> [ 302.236024] CR2: 0000000000000008
> [ 302.265338] ---[ end trace 64118e3d92267d36 ]---
This is coming form Al's tree, so it's not these specific patches
that are triggering it.
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
next prev parent reply other threads:[~2010-10-25 9:20 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-24 17:40 [PATCH 1/4] fs: do not drop inode_lock in dispose_list Christoph Hellwig
2010-10-24 17:40 ` [PATCH 2/4] fs: fold invalidate_list into invalidate_inodes Christoph Hellwig
2010-10-24 21:45 ` Christian Stroetmann
2010-10-24 17:40 ` [PATCH 3/4] fs: skip I_FREEING inodes in writeback_sb_inodes Christoph Hellwig
2010-10-24 21:46 ` Christian Stroetmann
2010-10-24 17:40 ` [PATCH 4/4] fs: kill I_WILL_FREE Christoph Hellwig
2010-10-24 21:46 ` Christian Stroetmann
2010-10-24 21:50 ` Christian Stroetmann
2010-10-26 1:28 ` Al Viro
2010-10-26 19:18 ` Al Viro
2010-10-25 5:33 ` [PATCH 1/4] fs: do not drop inode_lock in dispose_list Dave Chinner
2010-10-25 5:46 ` Dave Chinner
2010-10-25 9:20 ` Dave Chinner [this message]
2010-10-25 10:07 ` Christoph Hellwig
2010-10-25 23:07 ` Dave Chinner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101025092035.GU32255@dastard \
--to=david@fromorbit.com \
--cc=hch@lst.de \
--cc=linux-fsdevel@vger.kernel.org \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.