From mboxrd@z Thu Jan 1 00:00:00 1970 From: Fengguang Wu Subject: Re: writeback: bad unlock balance detected in 3.5-rc1 Date: Sat, 9 Jun 2012 00:45:35 +0900 Message-ID: <20120608154535.GA887@localhost> References: <20120608150736.GF21080@quack.suse.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Theodore Ts'o , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org To: Jan Kara Return-path: Content-Disposition: inline In-Reply-To: <20120608150736.GF21080@quack.suse.cz> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Fri, Jun 08, 2012 at 05:07:36PM +0200, Jan Kara wrote: > On Fri 08-06-12 10:36:13, Ted Tso wrote: > > > > I can reproduce this fairly easily by using ext4 w/o a journal, running > > under KVM with 1024megs memory, with fsstress (xfstests #13): Good catch, thanks! > Argh, I wonder how come I didn't hit this. Does attached patch fix the > problem? > diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c > index 8d2fb8c..41a3ccf 100644 > --- a/fs/fs-writeback.c > +++ b/fs/fs-writeback.c > @@ -664,6 +664,7 @@ static long writeback_sb_inodes(struct super_block *sb, > /* Wait for I_SYNC. This function drops i_lock... */ > inode_sleep_on_writeback(inode); > /* Inode may be gone, start again */ > + spin_lock(&wb->list_lock); > continue; > } That looks like the fix. So I pushed it to writeback-for-next. Thanks for the quick fixing! I'm yet to setup and run xfstests regularly, so as to catch such kind of problems earlier in future. Thanks, Fengguang