All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: xfs@oss.sgi.com
Subject: Re: [PATCH] [RFC] xfs: wire up aio_fsync method
Date: Fri, 13 Jun 2014 09:44:41 +1000	[thread overview]
Message-ID: <20140612234441.GT9508@dastard> (raw)
In-Reply-To: <20140612141329.GA11676@infradead.org>

On Thu, Jun 12, 2014 at 07:13:29AM -0700, Christoph Hellwig wrote:
> There doesn't really seem anything XFS specific here, so instead
> of wiring up ->aio_fsync I'd implement IOCB_CMD_FSYNC in fs/aio.c
> based on the workqueue and ->fsync.

I really don't know whether the other ->fsync methods in other
filesystems can stand alone like that. I also don't have the
time to test that it works properly on all filesystems right now.

Also, doing this implementation in fs/aio.c would mean we can't
optimise it to reduce things like log forces by splitting up the
work of concurrent fsyncs into a single log force of the highest
LSN of the batch of fsyncs being run. We also want to be able to do
"background fsync" where latency doesn't matter and we only want to
trickle them out rather than issue them as fast as we possibly can.

So I really don't see this as the infrastructure solution that
everyone uses. It could be made a generic method with the filesystem
passing the workqueue to use to generic_aio_fsync(), but for XFS I
see it turning into something much more complex and optimised...

Like I said, this is just a brute force proof of concept.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2014-06-12 23:44 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-12  8:34 [PATCH] [RFC] xfs: wire up aio_fsync method Dave Chinner
2014-06-12  8:56 ` [PATCH] [RFC] fs_mark: add asynchronous fsync Dave Chinner
2014-06-12 14:13 ` [PATCH] [RFC] xfs: wire up aio_fsync method Christoph Hellwig
2014-06-12 23:44   ` Dave Chinner [this message]
2014-06-13 16:23     ` Christoph Hellwig
2014-06-15 22:33       ` Dave Chinner
2014-06-15 22:33         ` Dave Chinner
2014-06-16  2:00         ` Dave Chinner
2014-06-16  2:00           ` Dave Chinner
2014-06-16  2:58           ` Jens Axboe
2014-06-16  2:58             ` Jens Axboe
     [not found]             ` <539E5D66.8040605-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-16  7:19               ` Dave Chinner
2014-06-16  7:19                 ` Dave Chinner
2014-06-16 19:30                 ` Jens Axboe
2014-06-16 19:30                   ` Jens Axboe
2014-06-16 22:27                   ` Dave Chinner
2014-06-17 13:23                     ` Jens Axboe
2014-06-17 13:23                       ` Jens Axboe
2014-06-18  0:28                       ` Dave Chinner
2014-06-18  0:28                         ` Dave Chinner
2014-06-18  0:28                         ` Dave Chinner
2014-06-18  2:24                         ` Jens Axboe
2014-06-18  2:24                           ` Jens Axboe
2014-06-18  2:24                           ` Jens Axboe
2014-06-18  3:13                           ` Dave Chinner
2014-06-18  3:13                             ` Dave Chinner
2014-06-18  3:20                             ` Jens Axboe
2014-06-18  3:20                               ` Jens Axboe
2014-06-18  3:20                               ` Jens Axboe
     [not found]                               ` <53A10597.6020707-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2014-06-18  5:02                                 ` Dave Chinner
2014-06-18  5:02                                   ` Dave Chinner
2014-06-18  5:02                                   ` Dave Chinner
2014-06-18  6:13                                   ` Dave Chinner
2014-06-18  6:13                                     ` Dave Chinner
     [not found]       ` <20140613162352.GB23394-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2014-06-16 21:06         ` Michael Kerrisk (man-pages)
2014-06-16 21:06           ` Michael Kerrisk (man-pages)
2014-06-17 14:01           ` Christoph Hellwig
2014-06-12 15:24 ` Brian Foster
2014-06-12 23:57   ` 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=20140612234441.GT9508@dastard \
    --to=david@fromorbit.com \
    --cc=hch@infradead.org \
    --cc=xfs@oss.sgi.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.