qemu-e2k/block
Paolo Bonzini b209091957 Revert "iscsi: Fix NULL dereferences / races between task completion and abort"
This reverts commit 64e69e8092.  The commit
returned immediately from iscsi_aio_cancel, risking corruption in case the
following happens:

    guest                  qemu                 target
  =========================================================================
    send write 1 -------->
                           send write 1 -------->
    cancel write 1 ------>
                           cancel write 1 ------>
       <------------------ cancellation processed
    send write 2 -------->
                           send write 2 -------->
                               <---------------- completed write 2
       <------------------ completed write 2
                               <---------------- completed write 1
                               <---------------- cancellation not done

Here, the guest would see write 2 superseding write 1, when in fact the
outcome could have been the opposite.  The right behavior is to return
only after the target says whether the cancellation was done or not, and
it will be implemented by the next three patches.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-08-20 15:50:45 +02:00
..
blkdebug.c blkdebug: optionally tie errors to a specific sector 2012-07-09 15:53:02 +02:00
blkverify.c
bochs.c
cloop.c
cow.c block: Fix spelling in comment (ineffcient -> inefficient) 2012-04-19 15:48:52 +02:00
curl.c allow qemu_iovec_from_buffer() to specify offset from which to start copying 2012-06-11 23:12:11 +04:00
dmg.c
iscsi.c Revert "iscsi: Fix NULL dereferences / races between task completion and abort" 2012-08-20 15:50:45 +02:00
Makefile.objs build: move block/ objects to nested Makefile.objs 2012-06-07 09:21:13 +02:00
nbd.c cleanup qemu_co_sendv(), qemu_co_recvv() and friends 2012-06-11 23:12:11 +04:00
parallels.c
qcow2-cache.c qcow2: always operate caches in writeback mode 2012-06-15 14:03:43 +02:00
qcow2-cluster.c qcow2: implement lazy refcounts 2012-08-06 22:39:14 +02:00
qcow2-refcount.c qcow2: preserve free_byte_offset when qcow2_alloc_bytes() fails 2012-07-09 15:53:01 +02:00
qcow2-snapshot.c qcow2: fix #ifdef'd qcow2_check_refcounts() callers 2012-07-09 15:53:01 +02:00
qcow2.c block: add BLOCK_O_CHECK for qemu-img check 2012-08-10 10:25:12 +02:00
qcow2.h qcow2: implement lazy refcounts 2012-08-06 22:39:14 +02:00
qcow.c change qemu_iovec_to_buf() to match other to,from_buf functions 2012-06-11 23:12:11 +04:00
qed-check.c qed: mark image clean after repair succeeds 2012-08-10 10:25:12 +02:00
qed-cluster.c
qed-gencb.c
qed-l2-cache.c
qed-table.c
qed.c block: add BLOCK_O_CHECK for qemu-img check 2012-08-10 10:25:12 +02:00
qed.h qed: mark image clean after repair succeeds 2012-08-10 10:25:12 +02:00
raw-posix-aio.h
raw-posix.c block: Convert close calls to qemu_close 2012-08-15 10:48:57 +02:00
raw-win32.c block: Convert close calls to qemu_close 2012-08-15 10:48:57 +02:00
raw.c raw: hook into blkdebug 2012-07-09 15:53:02 +02:00
rbd.c Merge remote-tracking branch 'mjt/mjt-iov2' into staging 2012-07-09 12:35:06 -05:00
sheepdog.c sheepdog: do not blindly memset all read buffers 2012-07-17 16:48:29 +02:00
stream.c stream: move rate limiting to a separate header file 2012-06-15 14:03:42 +02:00
vdi.c block: Convert open calls to qemu_open 2012-08-15 10:48:57 +02:00
vmdk.c block: Convert close calls to qemu_close 2012-08-15 10:48:57 +02:00
vpc.c block: Convert close calls to qemu_close 2012-08-15 10:48:57 +02:00
vvfat.c block: Convert close calls to qemu_close 2012-08-15 10:48:57 +02:00