diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 82ccad0a7f1a48e56b4d36a628b56aea5392166e..b9a6b7ad64f383c4056a3d9ff9d7b35dc56209e2 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -914,8 +914,10 @@ static int pkt_handle_queue(struct pktcdvd_device *pd)
 		bio = node->bio;
 		zone = ZONE(bio->bi_sector, pd);
 		list_for_each_entry(p, &pd->cdrw.pkt_active_list, list) {
-			if (p->sector == zone)
+			if (p->sector == zone) {
+				bio = NULL;
 				goto try_next_bio;
+			}
 		}
 		break;
 try_next_bio: