diff options
Diffstat (limited to 'drivers/cdrom')
-rw-r--r-- | drivers/cdrom/cdrom.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c index 7ea0f48f8fa6..2df5cf4ec743 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c | |||
@@ -2133,16 +2133,14 @@ static int cdrom_read_cdda_bpc(struct cdrom_device_info *cdi, __u8 __user *ubuf, | |||
2133 | rq->timeout = 60 * HZ; | 2133 | rq->timeout = 60 * HZ; |
2134 | bio = rq->bio; | 2134 | bio = rq->bio; |
2135 | 2135 | ||
2136 | if (rq->bio) | ||
2137 | blk_queue_bounce(q, &rq->bio); | ||
2138 | |||
2139 | if (blk_execute_rq(q, cdi->disk, rq, 0)) { | 2136 | if (blk_execute_rq(q, cdi->disk, rq, 0)) { |
2140 | struct request_sense *s = rq->sense; | 2137 | struct request_sense *s = rq->sense; |
2141 | ret = -EIO; | 2138 | ret = -EIO; |
2142 | cdi->last_sense = s->sense_key; | 2139 | cdi->last_sense = s->sense_key; |
2143 | } | 2140 | } |
2144 | 2141 | ||
2145 | if (blk_rq_unmap_user(bio, len)) | 2142 | rq->bio = bio; |
2143 | if (blk_rq_unmap_user(rq)) | ||
2146 | ret = -EFAULT; | 2144 | ret = -EFAULT; |
2147 | 2145 | ||
2148 | if (ret) | 2146 | if (ret) |