mtip32xx: convert to use blk-mq
This rips out timeout handling, requeueing, etc in converting it to use blk-mq instead. Acked-by: Asai Thambi S P <asamymuthupa@micron.com> Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:
Родитель
bd6f0bba1d
Коммит
ffc771b3ca
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -331,12 +331,8 @@ struct mtip_cmd {
|
|||
*/
|
||||
void (*comp_func)(struct mtip_port *port,
|
||||
int tag,
|
||||
void *data,
|
||||
struct mtip_cmd *cmd,
|
||||
int status);
|
||||
/* Additional callback function that may be called by comp_func() */
|
||||
void (*async_callback)(void *data, int status);
|
||||
|
||||
void *async_data; /* Addl. data passed to async_callback() */
|
||||
|
||||
int scatter_ents; /* Number of scatter list entries used */
|
||||
|
||||
|
@ -347,10 +343,6 @@ struct mtip_cmd {
|
|||
int retries; /* The number of retries left for this command. */
|
||||
|
||||
int direction; /* Data transfer direction */
|
||||
|
||||
unsigned long comp_time; /* command completion time, in jiffies */
|
||||
|
||||
atomic_t active; /* declares if this command sent to the drive. */
|
||||
};
|
||||
|
||||
/* Structure used to describe a port. */
|
||||
|
@ -436,12 +428,6 @@ struct mtip_port {
|
|||
* or error handling is active
|
||||
*/
|
||||
unsigned long cmds_to_issue[SLOTBITS_IN_LONGS];
|
||||
/*
|
||||
* Array of command slots. Structure includes pointers to the
|
||||
* command header and command table, and completion function and data
|
||||
* pointers.
|
||||
*/
|
||||
struct mtip_cmd commands[MTIP_MAX_COMMAND_SLOTS];
|
||||
/* Used by mtip_service_thread to wait for an event */
|
||||
wait_queue_head_t svc_wait;
|
||||
/*
|
||||
|
@ -452,13 +438,7 @@ struct mtip_port {
|
|||
/*
|
||||
* Timer used to complete commands that have been active for too long.
|
||||
*/
|
||||
struct timer_list cmd_timer;
|
||||
unsigned long ic_pause_timer;
|
||||
/*
|
||||
* Semaphore used to block threads if there are no
|
||||
* command slots available.
|
||||
*/
|
||||
struct semaphore cmd_slot;
|
||||
|
||||
/* Semaphore to control queue depth of unaligned IOs */
|
||||
struct semaphore cmd_slot_unal;
|
||||
|
@ -485,6 +465,8 @@ struct driver_data {
|
|||
|
||||
struct request_queue *queue; /* Our request queue. */
|
||||
|
||||
struct blk_mq_tag_set tags; /* blk_mq tags */
|
||||
|
||||
struct mtip_port *port; /* Pointer to the port data structure. */
|
||||
|
||||
unsigned product_type; /* magic value declaring the product type */
|
||||
|
|
Загрузка…
Ссылка в новой задаче