Messages in this thread | | | Subject | Re: [RFC]block: add flush request at head | From | Shaohua Li <> | Date | Tue, 19 Apr 2011 09:07:04 +0800 |
| |
On Mon, 2011-04-18 at 17:26 +0800, Christoph Hellwig wrote: > On Mon, Apr 18, 2011 at 10:08:52AM +0200, Jens Axboe wrote: > > Might be worth adding something for this special case, seems like the > > NCQ restrictions will continue to be around forever (or a long time, at > > least). > > I heared people are working on adding a queued FLUSH to the standard, > but it's going to take a long time for it to get into real life systems. > > What would help now is allowing libata to actually use the FUA bit, > given that every common disk and controller supports it these days. > > Shaohua, does adding a > > libata.fua = 1 > > to the kernel command line help your benchmark in any way? It should > if you flushes are mostly from journal writes, but not from fsync > that didn't change any metadata. This is a workload with fsync. I tested libata.fua=1, but nothing changed.
I also hacked the code when we proceed queue running flush list, also proceed queue pending flush list, which doesn't change correctness for sata. This improved a little, around 5%, but doesn't recover the whole regression. so I still need add the flush request at queue head.
Thanks, Shaohua
| |