forked from luck/tmp_suning_uos_patched
[PATCH] ->nr_sectors and ->hard_nr_sectors are not used for BLOCK_PC requests
It's a file system thing, for block requests the only size used in the io paths is ->data_len as it is in bytes, not sectors. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
parent
a52de245ef
commit
2985259b0e
|
@ -2350,12 +2350,12 @@ static int __blk_rq_map_user(request_queue_t *q, struct request *rq,
|
|||
else
|
||||
bio = bio_copy_user(q, uaddr, len, reading);
|
||||
|
||||
if (IS_ERR(bio)) {
|
||||
if (IS_ERR(bio))
|
||||
return PTR_ERR(bio);
|
||||
}
|
||||
|
||||
orig_bio = bio;
|
||||
blk_queue_bounce(q, &bio);
|
||||
|
||||
/*
|
||||
* We link the bounce buffer in and could have to traverse it
|
||||
* later so we have to get a ref to prevent it from being freed
|
||||
|
@ -2379,8 +2379,6 @@ static int __blk_rq_map_user(request_queue_t *q, struct request *rq,
|
|||
rq->biotail->bi_next = bio;
|
||||
rq->biotail = bio;
|
||||
|
||||
rq->nr_sectors += bio_sectors(bio);
|
||||
rq->hard_nr_sectors = rq->nr_sectors;
|
||||
rq->data_len += bio->bi_size;
|
||||
}
|
||||
spin_unlock_irq(q->queue_lock);
|
||||
|
|
|
@ -270,8 +270,6 @@ static int scsi_merge_bio(struct request *rq, struct bio *bio)
|
|||
else {
|
||||
rq->biotail->bi_next = bio;
|
||||
rq->biotail = bio;
|
||||
rq->hard_nr_sectors += bio_sectors(bio);
|
||||
rq->nr_sectors = rq->hard_nr_sectors;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue
Block a user