diff options
author | Kevin Wolf <kwolf@redhat.com> | 2016-11-18 14:47:36 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2017-06-26 14:51:15 +0200 |
commit | 48cc565e767d1cb4965150d258ebd15a1b3de488 (patch) | |
tree | 895f4ae830b88778a79412291278b699cc9037d9 /block/qed.h | |
parent | 0806c3b5dd1aced4c50eda65e9ecc9cfab4ee58e (diff) | |
download | qemu-48cc565e767d1cb4965150d258ebd15a1b3de488.zip |
qed: Simplify request handling
Now that we process a request in the same coroutine from beginning to
end and don't drop out of it any more, we can look like a proper
coroutine-based driver and simply call qed_aio_next_io() and get a
return value from it instead of spawning an additional coroutine that
reenters the parent when it's done.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'block/qed.h')
-rw-r--r-- | block/qed.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/block/qed.h b/block/qed.h index 37558e425d..fb80943c2d 100644 --- a/block/qed.h +++ b/block/qed.h @@ -129,8 +129,7 @@ enum { }; typedef struct QEDAIOCB { - BlockAIOCB common; - int bh_ret; /* final return status for completion bh */ + BlockDriverState *bs; QSIMPLEQ_ENTRY(QEDAIOCB) next; /* next request */ int flags; /* QED_AIOCB_* bits ORed together */ uint64_t end_pos; /* request end on block device, in bytes */ |