All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oleg Drokin <green@linuxhacker.ru>
To: Chris Mason <mason@suse.com>
Cc: reiserfs-list@namesys.com
Subject: Re: v3 experimental data=ordered and logging speedups for 2.6.1
Date: Wed, 11 Feb 2004 16:26:51 +0200	[thread overview]
Message-ID: <20040211142651.GD3042@linuxhacker.ru> (raw)
In-Reply-To: <1076508034.15498.5.camel@watt.suse.com>

Hello!

On Wed, Feb 11, 2004 at 09:00:34AM -0500, Chris Mason wrote:

> > Anyway there should be absolutely zero problems with bdb, I looked in their code
> > and they have sanity checks that do not allow write size to be bigger than
> > some values that they think are safe (16K I think).
> Well, it was easiest to trigger with older rpm versions, but you'll get
> hit by eventually.  Keep in mind the suse autobuild system runs rpm
> thousands (hundreds of thousands) of times per day.  It wasn't an easy
> bug to hit.

What are the symptoms?

> > > 06-reiserfs-jh-2
> > > Adds data=ordered support, along with a journal header attached to
> > > the buffer head.  This allows for more efficient data=ordered support
> > > than I had in 2.4.x.
> > I have some comments on this one, too.
> > Replicating __block_commit_write just to make sure you add buffer to ordered
> > list seems to be overkill. You can easily put buffers to some temp list at
> > buffer allocation time and then just add entire temp list to ordered
> > buffers list, I think. 
> If you use the generic __block_commit_write, you've got to update i_size
> first to make sure the generic code doesn't do it.  There are a few

No.
The auto i_size update happens only if you use generic_commit_write(),
but I used block_commit_write() which does not do this.

> other tricky parts when the data=journal code is added.  We've already
> made our own file_write call, it doesn't make sense to warp it just to
> avoid our own __block_commit_write ;-)

Well, code duplication is not very good thing.

> > Also this will make handling of mmap write in the middle
> > of write a little bit more correct, I think. BTW, I do not see where do you
> > specially handle mmap writes so that they are written in correct order wrt
> > inode updates.
> Those changes are still only in my local tree.  I wanted to get the
> basic functionality out there for testing.

Well, I need the quota part too, before I can put that on my university's file
server to get more testing ;)))

Bye,
    Oleg

  reply	other threads:[~2004-02-11 14:26 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-19 16:45 v3 experimental data=ordered and logging speedups for 2.6.1 Chris Mason
2004-01-19 22:53 ` Dieter Nützel
2004-01-19 22:54   ` Mike Fedyk
2004-01-21  1:50   ` Chris Mason
2004-02-09 13:04     ` Dieter Nützel
2004-02-09 14:14       ` Javier Marcet
2004-01-21 15:09 ` Oleg Drokin
2004-02-11 11:49 ` Oleg Drokin
2004-02-11 14:00   ` Chris Mason
2004-02-11 14:26     ` Oleg Drokin [this message]
2004-02-11 14:59       ` Chris Mason
2004-02-11 15:09         ` Oleg Drokin
2004-02-12 14:18           ` Chris Mason

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=20040211142651.GD3042@linuxhacker.ru \
    --to=green@linuxhacker.ru \
    --cc=mason@suse.com \
    --cc=reiserfs-list@namesys.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 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.