#ifndef _LINUX_BLKDEV_H
#define _LINUX_BLKDEV_H
+#include <linux/config.h>
#include <linux/major.h>
#include <linux/genhd.h>
#include <linux/list.h>
void *elevator_private;
void *completion_data;
+ unsigned short ioprio;
+
int rq_status; /* should split this into a few status bits */
- int errors;
struct gendisk *rq_disk;
+ int errors;
unsigned long start_time;
/* Number of scatter-gather DMA addr+len pairs after
*/
unsigned short nr_hw_segments;
- unsigned short ioprio;
-
int tag;
+ char *buffer;
int ref_count;
request_queue_t *q;
struct completion *waiting;
void *special;
- char *buffer;
/*
* when request is used as a packet command carrier
unsigned char cmd[BLK_MAX_CDB];
unsigned int data_len;
- unsigned int sense_len;
void *data;
+
+ unsigned int sense_len;
void *sense;
unsigned int timeout;
int retries;
+ /*
+ * For Power Management requests
+ */
+ struct request_pm_state *pm;
+
/*
* completion callback. end_io_data should be folded in with waiting
*/
__REQ_PM_RESUME, /* resume request */
__REQ_PM_SHUTDOWN, /* shutdown request */
__REQ_ORDERED_COLOR, /* is before or after barrier */
- __REQ_RW_SYNC, /* request is sync (O_DIRECT) */
__REQ_NR_BITS, /* stops here */
};
#define REQ_PM_RESUME (1 << __REQ_PM_RESUME)
#define REQ_PM_SHUTDOWN (1 << __REQ_PM_SHUTDOWN)
#define REQ_ORDERED_COLOR (1 << __REQ_ORDERED_COLOR)
-#define REQ_RW_SYNC (1 << __REQ_RW_SYNC)
/*
* State information carried for REQ_PM_SUSPEND and REQ_PM_RESUME
#define RQ_INACTIVE (-1)
#define RQ_ACTIVE 1
+#define RQ_SCSI_BUSY 0xffff
+#define RQ_SCSI_DONE 0xfffe
+#define RQ_SCSI_DISCONNECTING 0xffe0
#define QUEUE_FLAG_CLUSTER 0 /* cluster several segments into 1 */
#define QUEUE_FLAG_QUEUED 1 /* uses generic tag queueing */