linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Jens Axboe <jens.axboe@oracle.com>
Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	chris.mason@oracle.com, david@fromorbit.com, hch@infradead.org,
	tytso@mit.edu, akpm@linux-foundation.org, jack@suse.cz
Subject: Re: [PATCH 1/8] writeback: move super_block argument to struct writeback_control
Date: Tue, 1 Sep 2009 17:51:30 -0400	[thread overview]
Message-ID: <20090901215130.GA24397@infradead.org> (raw)
In-Reply-To: <1251803946-9243-2-git-send-email-jens.axboe@oracle.com>

On Tue, Sep 01, 2009 at 01:18:59PM +0200, Jens Axboe wrote:
> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
> ---
>  drivers/staging/pohmelfs/inode.c |    3 ++-
>  fs/fs-writeback.c                |   14 +++++++-------
>  fs/ubifs/budget.c                |    5 +++--
>  fs/ubifs/super.c                 |    3 ++-
>  include/linux/fs.h               |    3 +--
>  include/linux/writeback.h        |    2 ++

I think we need better calling conventions here.  Currently this whole
area is on crack, we have from highest to lowest layer:


 - sync_inodes_sb - does two totally different things based on the
   wait flag.  If the wait flag is set does a WB_SYNC_ALL writeout
   of all pages.  If not does a WB_SYNC_NONE based on some whacky
   heuristics despite actually wanting to write out everything.
 - sync_sb_inodes - toally useless wrapper.  Introduces because reiser4
   eventually wanted to hook in there, but that needs some major
   rethinking before it can happen.
 - generic_sync_inodes_sb - used to implement both cases of
   sync_inodes_sb, plus:

    - UBIFS budgeting writeouts, in either blocking or non-blocking
      way
    - UBIFS sync use that is gone in -next because we fixed sync
    - a complete crackpot usage in pohmelfs, which we fortunately can
      simply ignore because it's in -staging.


So instead of exporting generic_sync_sb_inodes which now takes just
a wbc we should just export two helpers to either data integrity sync
and SB or do a SYNC_NONE on it, both taking no other parameter than
the superblock.


  parent reply	other threads:[~2009-09-01 21:51 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-01 11:18 [PATCH 0/8] Per-bdi writeback flusher threads v16 Jens Axboe
2009-09-01 11:18 ` [PATCH 1/8] writeback: move super_block argument to struct writeback_control Jens Axboe
2009-09-01 11:55   ` Theodore Tso
2009-09-01 11:57     ` Theodore Tso
2009-09-01 12:05       ` Jens Axboe
2009-09-01 14:06         ` Theodore Tso
2009-09-01 21:51   ` Christoph Hellwig [this message]
2009-09-02  6:45     ` Jens Axboe
2009-09-01 11:19 ` [PATCH 2/8] writeback: move dirty inodes from super_block to backing_dev_info Jens Axboe
2009-09-01 11:19 ` [PATCH 3/8] writeback: switch to per-bdi threads for flushing data Jens Axboe
2009-09-01 11:19 ` [PATCH 4/8] writeback: get rid of pdflush completely Jens Axboe
2009-09-01 11:19 ` [PATCH 5/8] writeback: add some debug inode list counters to bdi stats Jens Axboe
2009-09-01 11:19 ` [PATCH 6/8] writeback: add name to backing_dev_info Jens Axboe
2009-09-01 11:19 ` [PATCH 7/8] writeback: check for registered bdi in flusher add and inode dirty Jens Axboe
2009-09-01 11:19 ` [PATCH 8/8] vm: Add an tuning knob for vm.max_writeback_pages Jens Axboe
2009-09-01 18:38   ` Peter Zijlstra
2009-09-01 18:44     ` Christoph Hellwig
2009-09-01 20:27       ` Theodore Tso
2009-09-02  7:32         ` Peter Zijlstra
2009-09-02  7:35           ` Peter Zijlstra
2009-09-01 23:52       ` Jamie Lokier
2009-09-01 23:56         ` Jamie Lokier

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=20090901215130.GA24397@infradead.org \
    --to=hch@infradead.org \
    --cc=akpm@linux-foundation.org \
    --cc=chris.mason@oracle.com \
    --cc=david@fromorbit.com \
    --cc=jack@suse.cz \
    --cc=jens.axboe@oracle.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tytso@mit.edu \
    /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).