On Thu, Jul 02, 2015 at 03:10:48PM +0200, Paolo Bonzini wrote:
>
>
> On 02/07/2015 13:21, James Bottomley wrote:
> > > +If the \field{VIRTIO_BLK_F_FLUSH} feature is not negotiated, the
> > > +device SHOULD ensure that all writes are committed to non-volatile
> > > +storage before reporting completion. It MUST do so if it proposed
> > > +\field{VIRTIO_BLK_F_FLUSH}. Failure to do so can cause data loss.
> >
> > Not SHOULD, MUST. Please don't leave spec based doors open to bad
> > implementations. An implementation that allows data corruption MUST NOT
> > have a spec interpretation that supports it.
>
> What I'm trying to do is to make it possible for the guest to detect an
> implementation that is intentionally unsafe. Such an implementation
> MUST NOT propose the VIRTIO_BLK_F_FLUSH feature, unlike the USB drives
> you mention. I totally agree that WCE and FLUSH are not separable.
>
> Paolo
Hmm. Very simple drivers don't negotiate any features.
Making such drivers lose data isn't a good idea I think.
--
MST