On Fri, Aug 21, 2009 at 01:40:10PM +0200, Jens Axboe wrote: > I've talked to Chris about this in the past too, but I never got around > to benchmarking FUA for O_DIRECT. It should be pretty easy to wire up > without making too many changes, and we do have FUA support on most SATA > drives too. Basically just a check in the driver for whether the > request is O_DIRECT and a WRITE, ala: > > if (rq_data_dir(rq) == WRITE && rq_is_sync(rq)) > WRITE_FUA; > > I know that FUA is used by that other OS, so I think we should be golden > on the hw support side. Just doing FUA should be pretty easy, in fact from my reading of the code we already use FUA for barriers if supported, that is only drain the queue, do a pre-flush for a barrier and then issue the actual barrier write as FUA. I can play around with getting rid of the pre-flush and doing cache flush based emulation if FUA is not supported if you're fine with that. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html