mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
minios (blkfront): Add more information on block error
This notably prints the offset and size of the block operation in error. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Acked-by: Ian Campbell <ian.campbell@citrix.com>
This commit is contained in:
1 parent
771b032d1f
commit
8bdd98744d
1 file changed
+14
-4
@@ -509,15 +509,19 @@ moretodo:
|
||||
aiocbp = (void*) (uintptr_t) rsp->id;
|
||||
status = rsp->status;
|
||||
|
||||
if (status != BLKIF_RSP_OKAY)
|
||||
printk("block error %d for op %d\n", status, rsp->operation);
|
||||
|
||||
switch (rsp->operation) {
|
||||
case BLKIF_OP_READ:
|
||||
case BLKIF_OP_WRITE:
|
||||
{
|
||||
int j;
|
||||
|
||||
if (status != BLKIF_RSP_OKAY)
|
||||
printk("%s error %d on %s at offset %llu, num bytes %llu\n",
|
||||
rsp->operation == BLKIF_OP_READ?"read":"write",
|
||||
status, aiocbp->aio_dev->nodename,
|
||||
(unsigned long long) aiocbp->aio_offset,
|
||||
(unsigned long long) aiocbp->aio_nbytes);
|
||||
|
||||
for (j = 0; j < aiocbp->n; j++)
|
||||
gnttab_end_access(aiocbp->gref[j]);
|
||||
|
||||
@@ -525,11 +529,17 @@ moretodo:
|
||||
}
|
||||
|
||||
case BLKIF_OP_WRITE_BARRIER:
|
||||
if (status != BLKIF_RSP_OKAY)
|
||||
printk("write barrier error %d\n", status);
|
||||
break;
|
||||
case BLKIF_OP_FLUSH_DISKCACHE:
|
||||
if (status != BLKIF_RSP_OKAY)
|
||||
printk("flush error %d\n", status);
|
||||
break;
|
||||
|
||||
default:
|
||||
printk("unrecognized block operation %d response\n", rsp->operation);
|
||||
printk("unrecognized block operation %d response (status %d)\n", rsp->operation, status);
|
||||
break;
|
||||
}
|
||||
|
||||
dev->ring.rsp_cons = ++cons;
|
||||
|
||||