Permalink
Browse files

vioblk: Handle poisoned descriptors. Just a workaround

Signed-off-by: Alexey Zaytsev <alexey.zaytsev@gmail.com>
  • Loading branch information...
1 parent fd7f186 commit 8a970a14a21389af30b0ebae7d16ffacba7f4f22 @xl0 committed Aug 16, 2011
Showing with 7 additions and 0 deletions.
  1. +7 −0 virtio_blk/vioblk.c
View
@@ -680,6 +680,13 @@ vioblk_int_handler(caddr_t arg1, caddr_t arg2)
uint8_t status = req->status;
uint32_t type = req->hdr.type;
+ if (req->xfer == (void * )VIOBLK_POISON) {
+ dev_err(sc->sc_dev, CE_WARN, "Poisoned descriptor!");
+ virtio_free_chain(ve);
+ return (DDI_INTR_CLAIMED);
+ }
+
+
req->xfer = (void *) VIOBLK_POISON;
/* syncing status */

0 comments on commit 8a970a1

Please sign in to comment.