Replace the hardcoded EIO we dump to the logs. We do have an actual
error to display. The interesting piece is actually vreq->error, response
status is rather boring.
Doing it like this should also prevent people from attributing
failures to *real* EIO, as would be the case with NFS or physical
device issues.
Not that vreq->error may be zero on some failure paths. Consider this
useful information as well; these case can be attribute path to
tapdisk-vbd itself, meaning the respective treqs may have never made
it down to the block driver.
(int)tmp.id, tmp.sector_number, vreq->status);
if (rsp->status != BLKIF_RSP_OKAY)
- ERR(EIO, "returning BLKIF_RSP %d", rsp->status);
+ ERR(-vreq->error, "returning BLKIF_RSP %d", rsp->status);
vbd->returned++;
vbd->callback(vbd->argument, rsp);