diff options
author | Tejun Heo <tj@kernel.org> | 2009-04-22 22:05:20 -0400 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2009-04-28 01:37:36 -0400 |
commit | 731ec497e5888c6792ad62613ae9be97eebcd7ca (patch) | |
tree | 689a8442d8bdfd50ee6ab05b0c6acd0d229fe391 | |
parent | ec24751a6b57e1373a12361e581b2458bc9bb791 (diff) |
block: kill rq->data
Now that all block request data transfer is done via bio, rq->data
isn't used. Kill it.
While at it, make the roles of rq->special and buffer clear.
[ Impact: drop now unncessary field from struct request ]
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Boaz Harrosh <bharrosh@panasas.com>
-rw-r--r-- | block/blk-core.c | 5 | ||||
-rw-r--r-- | block/blk-map.c | 6 | ||||
-rw-r--r-- | block/scsi_ioctl.c | 1 | ||||
-rw-r--r-- | drivers/scsi/scsi_lib.c | 1 | ||||
-rw-r--r-- | include/linux/blkdev.h | 5 |
5 files changed, 7 insertions, 11 deletions
diff --git a/block/blk-core.c b/block/blk-core.c index 0520cc704585..6dd180cf15d2 100644 --- a/block/blk-core.c +++ b/block/blk-core.c | |||
@@ -189,10 +189,9 @@ void blk_dump_rq_flags(struct request *rq, char *msg) | |||
189 | (unsigned long long)rq->sector, | 189 | (unsigned long long)rq->sector, |
190 | rq->nr_sectors, | 190 | rq->nr_sectors, |
191 | rq->current_nr_sectors); | 191 | rq->current_nr_sectors); |
192 | printk(KERN_INFO " bio %p, biotail %p, buffer %p, data %p, len %u\n", | 192 | printk(KERN_INFO " bio %p, biotail %p, buffer %p, len %u\n", |
193 | rq->bio, rq->biotail, | 193 | rq->bio, rq->biotail, |
194 | rq->buffer, rq->data, | 194 | rq->buffer, rq->data_len); |
195 | rq->data_len); | ||
196 | 195 | ||
197 | if (blk_pc_request(rq)) { | 196 | if (blk_pc_request(rq)) { |
198 | printk(KERN_INFO " cdb: "); | 197 | printk(KERN_INFO " cdb: "); |
diff --git a/block/blk-map.c b/block/blk-map.c index f103729b462f..694fefad34e7 100644 --- a/block/blk-map.c +++ b/block/blk-map.c | |||
@@ -156,7 +156,7 @@ int blk_rq_map_user(struct request_queue *q, struct request *rq, | |||
156 | if (!bio_flagged(bio, BIO_USER_MAPPED)) | 156 | if (!bio_flagged(bio, BIO_USER_MAPPED)) |
157 | rq->cmd_flags |= REQ_COPY_USER; | 157 | rq->cmd_flags |= REQ_COPY_USER; |
158 | 158 | ||
159 | rq->buffer = rq->data = NULL; | 159 | rq->buffer = NULL; |
160 | return 0; | 160 | return 0; |
161 | unmap_rq: | 161 | unmap_rq: |
162 | blk_rq_unmap_user(bio); | 162 | blk_rq_unmap_user(bio); |
@@ -235,7 +235,7 @@ int blk_rq_map_user_iov(struct request_queue *q, struct request *rq, | |||
235 | blk_queue_bounce(q, &bio); | 235 | blk_queue_bounce(q, &bio); |
236 | bio_get(bio); | 236 | bio_get(bio); |
237 | blk_rq_bio_prep(q, rq, bio); | 237 | blk_rq_bio_prep(q, rq, bio); |
238 | rq->buffer = rq->data = NULL; | 238 | rq->buffer = NULL; |
239 | return 0; | 239 | return 0; |
240 | } | 240 | } |
241 | EXPORT_SYMBOL(blk_rq_map_user_iov); | 241 | EXPORT_SYMBOL(blk_rq_map_user_iov); |
@@ -313,7 +313,7 @@ int blk_rq_map_kern(struct request_queue *q, struct request *rq, void *kbuf, | |||
313 | 313 | ||
314 | blk_rq_bio_prep(q, rq, bio); | 314 | blk_rq_bio_prep(q, rq, bio); |
315 | blk_queue_bounce(q, &rq->bio); | 315 | blk_queue_bounce(q, &rq->bio); |
316 | rq->buffer = rq->data = NULL; | 316 | rq->buffer = NULL; |
317 | return 0; | 317 | return 0; |
318 | } | 318 | } |
319 | EXPORT_SYMBOL(blk_rq_map_kern); | 319 | EXPORT_SYMBOL(blk_rq_map_kern); |
diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c index 82a0ca2f6729..bb9aa43551b2 100644 --- a/block/scsi_ioctl.c +++ b/block/scsi_ioctl.c | |||
@@ -500,7 +500,6 @@ static int __blk_send_generic(struct request_queue *q, struct gendisk *bd_disk, | |||
500 | 500 | ||
501 | rq = blk_get_request(q, WRITE, __GFP_WAIT); | 501 | rq = blk_get_request(q, WRITE, __GFP_WAIT); |
502 | rq->cmd_type = REQ_TYPE_BLOCK_PC; | 502 | rq->cmd_type = REQ_TYPE_BLOCK_PC; |
503 | rq->data = NULL; | ||
504 | rq->data_len = 0; | 503 | rq->data_len = 0; |
505 | rq->extra_len = 0; | 504 | rq->extra_len = 0; |
506 | rq->timeout = BLK_DEFAULT_SG_TIMEOUT; | 505 | rq->timeout = BLK_DEFAULT_SG_TIMEOUT; |
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 756ac7c93de0..aa9fc572e45f 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c | |||
@@ -1088,7 +1088,6 @@ int scsi_setup_blk_pc_cmnd(struct scsi_device *sdev, struct request *req) | |||
1088 | return ret; | 1088 | return ret; |
1089 | } else { | 1089 | } else { |
1090 | BUG_ON(req->data_len); | 1090 | BUG_ON(req->data_len); |
1091 | BUG_ON(req->data); | ||
1092 | 1091 | ||
1093 | memset(&cmd->sdb, 0, sizeof(cmd->sdb)); | 1092 | memset(&cmd->sdb, 0, sizeof(cmd->sdb)); |
1094 | req->buffer = NULL; | 1093 | req->buffer = NULL; |
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index cfeb3c2feb27..12c545e2737c 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
@@ -211,8 +211,8 @@ struct request { | |||
211 | 211 | ||
212 | unsigned short ioprio; | 212 | unsigned short ioprio; |
213 | 213 | ||
214 | void *special; | 214 | void *special; /* opaque pointer available for LLD use */ |
215 | char *buffer; | 215 | char *buffer; /* kaddr of the current segment if available */ |
216 | 216 | ||
217 | int tag; | 217 | int tag; |
218 | int errors; | 218 | int errors; |
@@ -229,7 +229,6 @@ struct request { | |||
229 | unsigned int data_len; | 229 | unsigned int data_len; |
230 | unsigned int extra_len; /* length of alignment and padding */ | 230 | unsigned int extra_len; /* length of alignment and padding */ |
231 | unsigned int sense_len; | 231 | unsigned int sense_len; |
232 | void *data; | ||
233 | void *sense; | 232 | void *sense; |
234 | 233 | ||
235 | unsigned long deadline; | 234 | unsigned long deadline; |