Re: [RFC][PATCH] libata: enable SATA disk fua detection on default

From: Zheng Liu
Date: Wed May 09 2012 - 08:41:24 EST


On Wed, May 09, 2012 at 07:12:43AM -0400, Christoph Hellwig wrote:
> On Wed, May 09, 2012 at 05:30:16PM +0800, Zheng Liu wrote:
> > IMHO, FUA provides a solution that we can get better performance in write
> > cache mode when we do many flush operations. If I set the disk to write
> > through mode, I won't get this benefit. Am I missing something?
>
> If you set the disk to write through mode you never have to flush the
> cache. So as soonas your number of flushes gets close to the number of
> writes it tends to be a clear win - for ATA the tradeoff is even more in
> favour of write through because the flush command can't be queued yetin
> commonly available standards versions. So if you have a workload that
> basically needs to flush out every write you win - if you have workloads
> where you have a lot more writes than cache flushes write back mode
> wins.

Thanks for your explanation. It seems that there still has a problem.
If I set the disk to write through mode, I need to modify my application
to remove all of flush/sync operations. It is unacceptable for us.

> > Currently, the key issue is that we disable FUA detection for SATA disk.
> > We almost have no chance to change it because it is too complicated to
> > set libata_fua variable when this module is loaded. So why not give
> > SATA disk an opportunity to enable this feature? After all, there is a
> > lot of SATA disks that support this feature.
>
> I'm all in favour of your patch, I just wanted to point out that the
> argument in the description wasn't quite correct.

Thank you. I will fix it. :-)

Regards,
Zheng
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/