X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=drivers%2Fblock%2Fpktcdvd.c;h=f1b9dd7d47d62c00868acdba0927d68a0c8777e0;hb=cbc31a475a7f7748bd0a4e536533868e7cff8645;hp=93fb6ed4ed522da8b53c3dcc96a915bf80e027eb;hpb=9468482bd4c3b89abe04a770848d5eaa1ea830b0;p=powerpc.git diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index 93fb6ed4ed..f1b9dd7d47 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c @@ -765,7 +765,7 @@ static int pkt_generic_packet(struct pktcdvd_device *pd, struct packet_command * goto out; } - rq->cmd_len = COMMAND_SIZE(rq->cmd[0]); + rq->cmd_len = COMMAND_SIZE(cgc->cmd[0]); memcpy(rq->cmd, cgc->cmd, CDROM_PACKET_SIZE); if (sizeof(rq->cmd) > CDROM_PACKET_SIZE) memset(rq->cmd + CDROM_PACKET_SIZE, 0, sizeof(rq->cmd) - CDROM_PACKET_SIZE); @@ -777,7 +777,8 @@ static int pkt_generic_packet(struct pktcdvd_device *pd, struct packet_command * rq->cmd_flags |= REQ_QUIET; blk_execute_rq(rq->q, pd->bdev->bd_disk, rq, 0); - ret = rq->errors; + if (rq->errors) + ret = -EIO; out: blk_put_request(rq); return ret;