Re: [PATCH v6 0/4] ext4: Coordinate data-only flush requests sent by fsync

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Neil Brown
Date: Monday, November 29, 2010 - 5:39 pm

On Mon, 29 Nov 2010 14:05:36 -0800 "Darrick J. Wong" <djwong@us.ibm.com>
wrote:


I haven't seen any of the preceding discussion do I might be missing
something important, but this seems needlessly complex and intrusive.
In particular, I don't like adding code to md to propagate these timings up
to the fs, and I don't the arbitrary '2ms' number.

Would it not be sufficient to simply gather flushes while a flush is pending.
i.e
  - if no flush is pending, set the 'flush pending' flag, submit a flush,
    then clear the flag.
  - if a flush is pending, then wait for it to complete, and then submit a
    single flush on behalf of all pending flushes.

That way when flush is fast, you do a flush every time, and when it is slow
you gather multiple flushes together.
I think it would issues a few more flushes than your scheme, but it would be
a much neater solution.  Have you tried that and found it to be insufficient?

Thanks,
NeilBrown



--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [PATCH v6 0/4] ext4: Coordinate data-only flush reques ..., Neil Brown, (Mon Nov 29, 5:39 pm)
Re: [PATCH v6 0/4] ext4: Coordinate data-only flush reques ..., Christoph Hellwig, (Tue Nov 30, 9:41 am)
Re: [PATCH v6 0/4] ext4: Coordinate data-only flush reques ..., Christoph Hellwig, (Tue Nov 30, 9:43 am)