Peter Lieven noticed that reqs->overlap_offset and reqs->overlap_bytes are written outside bs->reqs_lock. Patch 3 fixes it, while patches 1 and 2 are preparatory cleanups.
Paolo Bonzini (3): block: eliminate BDRV_REQ_NO_SERIALISING block/io: wait for serialising requests when a request becomes serialising block/io: take bs->reqs_lock in bdrv_mark_request_serialising block/file-posix.c | 1 - block/io.c | 161 +++++++++++++++++++++++----------------------- include/block/block.h | 12 ---- include/block/block_int.h | 3 +- 4 files changed, 80 insertions(+), 97 deletions(-) -- 1.8.3.1