[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [patch 0/6] xenblk: Add O_DIRECT and O_SYNC support.
On 5/11/08 09:37, "Jens Axboe" <jens.axboe@xxxxxxxxxx> wrote: >>> However, frontend driver could not got the write's flag at all. >>> if we could know the request with O_SYNC flag should be easy to handle, >>> need not touch filesystem layer. >> >> So what does O_SYNC mean to Linux then? If it's not passed down to the >> blkdev layer then it can only mean that requests must be synchronously >> committed as far as that layer. I would therefore imagine you could lose as >> much data natively as you do running on Xen. Where are these megabytes of >> data sitting when they get lost, and why does it not happen when running >> natively? If O_SYNC is not waiting for completion responses from the block >> layer, that's a limitation of Linux's generic block subsystem, isn't it? > > The block layer doesn't care, it's async by nature. What makes O_SYNC > work is that callers will wait on the submitted writes afterwards, not > returning a result until they have reached the drive (that's as far as > that guarentee goes, beyond that you need flushes or barriers). > > So it is definitely NOT a limitation of the block layer, that's very > much how it is designed. The issue at hand is whether Xen's block drivers need to handle O_SYNC specially in any way. It sounds like it is actually handled properly at a higher level (e.g. individual filesystems?) and hence the patches proposed by Oracle make not much sense. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |