Move to blk-mq block interface.

Currently Open-CAS uses single queue block interface,
which is removed in kernel in version 5.0.
From this moment on Open-CAS supports only blk-mq,
and single queue is not supported any longer.

Signed-off-by: Michal Rakowski <michal.rakowski@intel.com>
This commit is contained in:
Michal Rakowski
2019-08-12 15:02:22 +02:00
parent 8d80ef5aef
commit 95af3c6f9f
5 changed files with 124 additions and 169 deletions

View File

@@ -51,18 +51,21 @@ struct casdsk_exp_obj_ops {
struct bio *bio, void *private);
/**
* @brief request_fn of exported object (top) block device.
* @brief queue_rq_fn of exported object (top) block device.
* Called by cas_disk when cas_disk device is in attached mode.
*/
void (*request_fn)(struct casdsk_disk *dsk, struct request_queue *q,
int (*queue_rq_fn)(struct casdsk_disk *dsk, struct request *rq,
void *private);
/**
* @brief prep_rq_fn of exported object (top) block device.
* Called by cas_disk when cas_disk device is in attached mode.
* @brief Increment exported object pending request counter.
*/
int (*prep_rq_fn)(struct casdsk_disk *dsk, struct request_queue *q,
struct request *rq, void *private);
void (*pending_rq_inc)(struct casdsk_disk *dsk, void *private);
/**
* @brief Decrement exported object pending request counter.
*/
void (*pending_rq_dec)(struct casdsk_disk *dsk, void *private);
/**
* @brief ioctl handler of exported object (top) block device.