On Tue, Jan 15, 2019 at 03:52:21PM +0800, Jason Wang wrote: > Well, this may work but here're my points: > > 1) The code want to recover from backed crash by introducing extra space to > store inflight data, but it still depends on the backend to set/get the > inflight state > > 2) Since the backend could be killed at any time, the backend must have the > ability to recover from the partial inflight state > > So it looks to me 1) tends to be self-contradictory and 2) tends to be > recursive. The above lines show how tricky could the code looks like.
This is a well studied field. Basically you make sure you commit with an atomic write. Restartable sequences allow accelerating this even further. > Solving this at vhost-user level through at backend is probably wrong. It's > time to consider the support from virtio itself. > > Thanks I think both approaches have their space. -- MST