fix raw_aio_read\write error handling (Stefano Stabellini)
authoraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
Thu, 29 Jan 2009 17:02:08 +0000 (17:02 +0000)
committeraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
Thu, 29 Jan 2009 17:02:08 +0000 (17:02 +0000)
commitd7f91ad33fd2602510ee650d4dbc09e67a7af9fc
tree450e1ca561b8ea7af2040bc9b22302f99d4fc4a8
parent005ba0ca0a6aac691f5d95e50bfd11579e789c4f
fix raw_aio_read\write error handling (Stefano Stabellini)

Currently when qemu_paio_read or qemu_paio_write return an error we call
qemu_aio_release without removing the request from the list.
I know that in the current implementation qemu_paio_write\read don't return
any error, but still the behavior is wrong, especially considering
that the implementation of these two functions is likely to change in is
the future.
This patch fixes the problem adding a raw_aio_remove function that
removes the callback from the queue and also calls qemu_aio_release.
raw_aio_remove is called by raw_aio_read, raw_aio_write and
raw_aio_cancel.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6470 c046a42c-6fe2-441c-8c8c-71466251a162
block-raw-posix.c