summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJens Axboe <axboe@suse.de>2006-07-28 09:32:07 +0200
committerJens Axboe <axboe@nelson.home.kernel.dk>2006-09-30 20:29:23 +0200
commitcdd6026217c0e4cda2efce1bdc318661bef1f66f (patch)
treee26bb9c40b603b9cc321aa4217fecf34e1bc5f24 /include
parent49171e5c6f414d49a061b5c1c84967c2eb569822 (diff)
[PATCH] Remove ->rq_status from struct request
After Christophs SCSI change, the only usage left is RQ_ACTIVE and RQ_INACTIVE. The block layer sets RQ_INACTIVE right before freeing the request, so any check for RQ_INACTIVE in a driver is a bug and indicates use-after-free. So kill/clean the remaining users, straight forward. Signed-off-by: Jens Axboe <axboe@suse.de>
Diffstat (limited to 'include')
-rw-r--r--include/linux/blkdev.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index d4c1dd046e2..8a3e309e084 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -243,8 +243,6 @@ struct request {
void *completion_data;
- int rq_status; /* should split this into a few status bits */
- int errors;
struct gendisk *rq_disk;
unsigned long start_time;
@@ -262,14 +260,16 @@ struct request {
unsigned short ioprio;
- int tag;
-
- int ref_count;
request_queue_t *q;
void *special;
char *buffer;
+ int tag;
+ int errors;
+
+ int ref_count;
+
/*
* when request is used as a packet command carrier
*/
@@ -456,9 +456,6 @@ struct request_queue
struct mutex sysfs_lock;
};
-#define RQ_INACTIVE (-1)
-#define RQ_ACTIVE 1
-
#define QUEUE_FLAG_CLUSTER 0 /* cluster several segments into 1 */
#define QUEUE_FLAG_QUEUED 1 /* uses generic tag queueing */
#define QUEUE_FLAG_STOPPED 2 /* queue is stopped */