OSDN Git Service

ide/atapi: make PIO read requests async
authorPeter Lieven <pl@kamp.de>
Tue, 17 Nov 2015 19:59:52 +0000 (14:59 -0500)
committerJohn Snow <jsnow@redhat.com>
Tue, 17 Nov 2015 20:06:15 +0000 (15:06 -0500)
commit5f81724d80a1492c73d329242663962139db739b
treea8fbe7169471029e3c4f730336e20414e3b383f1
parentc27e9014d56fa4880e7d741275d887c3a5949997
ide/atapi: make PIO read requests async

PIO read requests on the ATAPI interface used to be sync blk requests.
This has two significant drawbacks. First the main loop hangs util an
I/O request is completed and secondly if the I/O request does not
complete (e.g. due to an unresponsive storage) Qemu hangs completely.

Note: Due to possible race conditions requests during an ongoing
elementary transfer are still sync.

Signed-off-by: Peter Lieven <pl@kamp.de>
Reviewed-by: John Snow <jsnow@redhat.com>
Message-id: 1447345846-15624-2-git-send-email-pl@kamp.de
Signed-off-by: John Snow <jsnow@redhat.com>
hw/ide/atapi.c