This is basically a supplementary fix of 06c3916b.

On 512 disks, the crash only happens when copy-on-read is enabled, which is
covered by the previou fix.  But on 4k disks the write request that triggers
the notifier itself may be serialised, in which case the read req from
backup_do_cow will still be serialised in bdrv_aligned_preadv, resulting in the
same assertion failure.

Fam Zheng (3):
  block: Don't wait serialising for non-COR read requests
  iotests: Add "add_drive_raw" method
  iotests: Add regresion test case for write notifier assertion failure

 block/backup.c                |  2 +-
 block/io.c                    | 12 +++++++-----
 include/block/block.h         |  4 ++--
 tests/qemu-iotests/056        | 25 +++++++++++++++++++++++++
 tests/qemu-iotests/056.out    |  4 ++--
 tests/qemu-iotests/iotests.py |  5 +++++
 trace-events                  |  2 +-
 7 files changed, 43 insertions(+), 11 deletions(-)

-- 
2.4.3


Reply via email to