From: Jan Kara <jack@suse.cz>
To: Badari Pulavarty <pbadari@us.ibm.com>
Cc: Andrew Morton <akpm@osdl.org>,
Anton Altaparmakov <aia21@cam.ac.uk>,
sct@redhat.com, linux-fsdevel <linux-fsdevel@vger.kernel.org>,
lkml <linux-kernel@vger.kernel.org>,
ext4 <linux-ext4@vger.kernel.org>,
jack@suse.cz
Subject: Re: [RFC][PATCH] set_page_buffer_dirty should skip unmapped buffers
Date: Wed, 6 Sep 2006 14:47:19 +0200 [thread overview]
Message-ID: <20060906124719.GA11868@atrey.karlin.mff.cuni.cz> (raw)
In-Reply-To: <1157472702.23501.12.camel@dyn9047017100.beaverton.ibm.com>
Hi,
> On Fri, 2006-09-01 at 10:18 -0700, Andrew Morton wrote:
> > > > > Kernel BUG at fs/buffer.c:2791
> > > > > invalid opcode: 0000 [1] SMP
> > > > >
> > > > > Its complaining about BUG_ON(!buffer_mapped(bh)).
>
> Here is the change that seems to cause the problem. Jana Kara
> introduced a new mode "SWRITE" for ll_rw_block() - where it
> waits for buffer to be unlocked (WRITE will skip locked
> buffers) + jbd journal_commit_transaction() has been changed
> to make use of SWRITE.
>
> http://marc.theaimsgroup.com/?l=linux-fsdevel&m=112109788702895&w=2
>
> Theoritically same race (between journal_commit_transaction() and
> journal_unmap_buffer()+set_page_dirty()) could exist before his changes
> - which should trigger bug in submit_bh(). But I can't seem to hit
> it without his changes. My guess is ll_rw_block() is always skipping
> those cleaned up buffers, before page gets dirtied again ..
I think that the change to ll_rw_block() just widens the window much
more...
> Andrew, what should we do ? Do you suggest handling this in jbd
> itself (like this patch) ?
Actually that part of commit code needs rewrite anyway (and after that
rewrite you get rid of ll_rw_block()) because of other problems - the
code assumes that whenever buffer is locked, it is being written to disk
which is not true... I have some preliminary patches for that but they
are not very nice and so far I didn't have enough time to find a nice
solution.
Honza
--
Jan Kara <jack@suse.cz>
SuSE CR Labs
next prev parent reply other threads:[~2006-09-06 12:47 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-01 15:50 [RFC][PATCH] set_page_buffer_dirty should skip unmapped buffers Badari Pulavarty
2006-09-01 16:12 ` Anton Altaparmakov
2006-09-01 16:32 ` Badari Pulavarty
2006-09-01 17:18 ` Andrew Morton
2006-09-01 17:43 ` Badari Pulavarty
2006-09-01 21:01 ` Badari Pulavarty
2006-09-05 16:11 ` Badari Pulavarty
2006-09-06 12:47 ` Jan Kara [this message]
2006-09-06 15:12 ` Badari Pulavarty
2006-09-06 15:34 ` Jan Kara
2006-09-06 16:19 ` Badari Pulavarty
2006-09-06 16:27 ` Jan Kara
2006-09-06 16:43 ` Badari Pulavarty
2006-09-06 17:03 ` Jan Kara
2006-09-06 17:16 ` Badari Pulavarty
2006-09-06 17:27 ` Jan Kara
2006-09-07 2:14 ` Andrew Morton
2006-09-07 3:04 ` Badari Pulavarty
2006-09-07 3:34 ` Andrew Morton
2006-09-07 15:11 ` Badari Pulavarty
2006-09-07 20:48 ` Jan Kara
2006-09-07 22:30 ` Jan Kara
2006-09-08 4:33 ` Badari Pulavarty
2006-09-08 8:25 ` Jan Kara
2006-09-08 14:35 ` Badari Pulavarty
2006-09-11 9:46 ` Jan Kara
2006-09-11 20:45 ` Badari Pulavarty
2006-09-11 20:52 ` Jan Kara
2006-09-13 20:25 ` Dave Kleikamp
2006-09-14 3:38 ` Andrew Morton
2006-09-27 22:01 ` Eric Sandeen
2006-09-28 15:03 ` [PATCH] JBD: Make journal_do_submit_data static Dave Kleikamp
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=20060906124719.GA11868@atrey.karlin.mff.cuni.cz \
--to=jack@suse.cz \
--cc=aia21@cam.ac.uk \
--cc=akpm@osdl.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pbadari@us.ibm.com \
--cc=sct@redhat.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).