[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Fatal crash on xen4.2 HVM + qemu-xen dm + NFS
On Tue, 22 Jan 2013, Stefano Stabellini wrote: > > But this would explain why I'm still seeing the crash with O_DIRECT > > apparently off (cache=writeback), as the cache setting is being ignored. > > > > This would also explain why Ian might not have seen it (it went in > > late and without O_DIRECT we think this crash can't happen). > > > > Is the BDRV_O_NOCACHE | BDRV_O_CACHE_WB combination intentional or > > should BDRV_O_NOCACHE be removed? Why would the default be different > > for emulated and PV disks? > > The setting is different from the one of emulated devices because after > analyzing the IDE code, we thought that using BDRV_O_CACHE_WB would be > safe enough because when the guest wants to make sure that the data hits > the disk, it issues an IDE FLUSH_CACHE operation. > > In the xen_disk case instead, we weren't quite sure about the > assumptions of all the possible different PV frontend drivers, so we > went for the safe choice, that is O_DIRECT. > > In fact if we wanted to change the cache setting for xen_disk, we would > probably have to go back to write-through (this setting is selected by > passing neither BDRV_O_NOCACHE nor BDRV_O_CACHE_WB) that is quite slow. > > Recently, thanks to Konrad's work on blkfront cache flushes, a new flush > operation has been implemented in the block protocol: > BLKIF_OP_FLUSH_DISKCACHE. BLKIF_OP_FLUSH_DISKCACHE was introduced in > xen_disk by 7e7b7cba16faa7b721b822fa9ed8bebafa35700f "xen_disk: > implement BLKIF_OP_FLUSH_DISKCACHE, remove BLKIF_OP_WRITE_BARRIER". > Thanks to the new operation, maybe it is now safe to use write-back > caching. > Konrad, what do you think? Is blkback using the Linux disk cache by > default? Or is it using O_DIRECT? Looking more closely at xen_disk's flush operations, even if the semantics of the old BLKIF_OP_WRITE_BARRIER is confused, the implementation of it in xen_disk is strickly a superset of the flushes performed by the new BLKIF_OP_FLUSH_DISKCACHE. So unless blkfront issues fewer cache flushes when using BLKIF_OP_WRITE_BARRIER, I am tempted to say that even with the old flush operation, it might be safe to open the file write-back. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |