xen-org/blktap — pull request #40 by tmakatos (2013-06-17 10:55:11+00:00)
Title: CA-84868: Warn when closing/pausing VBD with pending failed requests

If a VBD is paused and a request has just failed, the VBD will get
paused with requests left in the failed requests queue; this is not a
bug. Since the VBD is paused failed requests won't be retried until the
VBD is resumed. However, instead of resuming the VBD, the VBD may be
closed. As there are pending requests in the failed requests queue that
aren't retried, tapdisk won't be able to close blktap since the
front-end holds it open as the failed requests haven't been
acknowledged. The front-end utterly considers the failed requests
expired, and tapdisk can close the VBD. Stalling/failing the pause
command until all failed requests have been resolved won't help
VM.migrate.