Re: [RFC] relaxed barrier semantics

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/29/2010 07:04 PM, Ted Ts'o wrote:
On Thu, Jul 29, 2010 at 04:30:54PM -0600, Andreas Dilger wrote:
Like James wrote, this is basically everything FUA.  It is OK for
ordered mode to allow the device to aggregate the normal filesystem
and journal IO, but when the commit block is written it should flush
all of the previously written data to disk.  This still allows
request re-ordering and merging inside the device, but orders the
data vs. the commit block.  Having the proposed "flush ranges"
interface to the disk would be ideal, since there would be no wasted
time flushing data that does not need it (i.e. other partitions).
My understanding is that "everything FUA" can be a performance
disaster.  That's because it bypasses the track buffer, and things get
written directly to disk.  So there is no possibility to reorder
buffers so that they get written in one disk rotation.  Depending on
the disk, it might even be that if you send N sequential sectors all
tagged with FUA, it could be slower than sending the N sectors
followed by a cache flush or SYNCHRONIZE_CACHE command.

You certainly can reorder in a drive with FUA, you just cannot ACK the write until the tagged request is on disk.

That clearly depends on the firmware of the device and, if it is an uncommon request, firmware people are unlikely to have spent too much thought and time doing it right :-)

It may be worth doing some experiments to see how big N is for various
disks, but I'm pretty sure that FUA will probably turn out to not be
such a great idea for ext3/ext4.

						- Ted

I am also sceptical and would expect a lot of variability in the results,

Ric


--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux