2008-06-18 03:01:17

by Gary Hawco

[permalink] [raw]
Subject: Using delalloc with ordered data mode

I was reviewing your patches from 9 hours ago and was confused as to
whether delalloc still needs writeback mode. I see the
enable-delalloc-by-default-patch that quickly followed the
delalloc-ext4-writeback mode. Does this mean that data=writeback mode must
be used, and if this condition is met, then delalloc is enabled, or is
delalloc enabled even if ordered data mode? Any clarification on this would
be most appreciated.

I am looking for the combination of features that give me the fastest ext4
system with reasonable data integrity.

Gary



2008-06-18 21:31:22

by Mingming Cao

[permalink] [raw]
Subject: Re: Using delalloc with ordered data mode


On Tue, 2008-06-17 at 20:01 +0000, Gary Hawco wrote:
> I was reviewing your patches from 9 hours ago and was confused as to
> whether delalloc still needs writeback mode. I see the
> enable-delalloc-by-default-patch that quickly followed the
> delalloc-ext4-writeback mode. Does this mean that data=writeback mode must
> be used, and if this condition is met, then delalloc is enabled, or is
> delalloc enabled even if ordered data mode? Any clarification on this would
> be most appreciated.
>

Hi Gary, thanks for looking into this. Currently, if you apply the
whole the patch queue patches, you should have a ext4 fs with delalloc
over ordered mode by default. Previously without the delayed allocation
support for ordered mode, the patch queue enabled delalloc over
writeback mode by default.

To clarify, the delayed allocation patches in the series are:

# New delayed allocation patch
delalloc-vfs.patch
delalloc-ext4-writeback-mode.patch

#delalloc support for reverse locking
Add-range_cont-mode-for-writeback.patch
delalloc-ext4-reserve-locking-order-support.patch

#delalloc block reservation(ENOSPC) handling
percpucounter-add-sum-and-set-function.patch
delalloc-ext4-ENOSPC-handling.patch

#delalloc new ordered mode
delalloc-new-ordered-mode.patch

enable-delalloc-by-default.patch
show-delalloc-option.patch


So, with delalloc-ext4-writeback-mode.patch, it has delalloc support for
writeback mode, but you need to enable this feature clearly with mount
option -o delalloc, data=writeback,

With delalloc-new-ordered-mode.patch, it add delalloc support for
ordered mode (the new ordered mode, patches in the patch queue). If you
only apply to here, you need to enable delalloc on ordered mode by mount
-o delalloc, data=ordered

With the enable-delalloc-by-default.patch, it enables delalloc over new
ordered mode by default (no need to specifying delalloc and ordered
mount options), which exercise the new ordered code and also delayed
allocation both.

Mingming