[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120704023634.GB16947@gmail.com>
Date: Wed, 4 Jul 2012 10:36:34 +0800
From: Zheng Liu <gnehzuil.liu@...il.com>
To: Phillip Susi <psusi@...ntu.com>
Cc: Jan Kara <jack@...e.cz>, Eric Sandeen <sandeen@...hat.com>,
Theodore Ts'o <tytso@....edu>, Fredrick <fjohnber@...o.com>,
Ric Wheeler <rwheeler@...hat.com>, linux-ext4@...r.kernel.org,
Andreas Dilger <adilger@...ger.ca>, wenqing.lz@...bao.com
Subject: Re: ext4_fallocate
Hi Phillip,
On Tue, Jul 03, 2012 at 09:15:16PM -0400, Phillip Susi wrote:
> On 07/02/2012 01:44 PM, Jan Kara wrote:
> > Yes, that option is broken and basically unfixable for data=ordered mode
> > (see http://comments.gmane.org/gmane.comp.file-systems.ext4/30727). For
> > data=writeback it works fine AFAICT.
>
> Does data=writeback with barriers fix this fallocate problem?
If we only use data=writeback without 'journal_async_commit', it won't
fix this problem according to my test. :-(
>
> I can see that writing small random bits into a very large uninitialized file would cause a lot of updates to the extent tree, but with a sufficiently large cache, shouldn't many of the small, random writes become coalesced into fewer, larger extent updates that are done at delayed flush time? Are you sure that the extent tree updates are not being done right away and blocking the writing application, instead of being delayed?
Actually the workload needs to flush the data after writting a small
random bits. This workload is met in our product system at Taobao.
Thus, the application has to wait this write to be done. Certainly if
we don't flush the data, the problem won't happen but there is a risk
that we could loss our data.
Regards,
Zheng
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists