Re: [PATCH 01/17] sunvdc: convert to blk-mq

Jens Axboe
2018-10-15T14:19:02Z

On 10/15/18 4:38 AM, Ming Lei wrote:
>> @@ -320,7 +320,7 @@ static void vdc_end_one(struct vdc_port *port, struct vio_dring_state *dr,
>>
>> rqe->req = NULL;
>>
>> - __blk_end_request(req, (desc->status ? BLK_STS_IOERR : 0), desc->size);
>> + blk_mq_end_request(req, desc->status ? BLK_STS_IOERR : 0);
>
> blk_mq_end_request() may trigger BUG in case of partial completion,
> however looks it is fine for __blk_end_request().

True, I'll change this to the blk_update_request() +
__blk_mq_end_request() combo instead.

> Most of conversions have the above pattern, maybe it is easier to
> introduce the following block API:
>
> struct reuqest_queue *blk_mq_alloc_and_init_sq(set, ops, queue_depth)

Yeah I did consider that, I'll make that addition.

--
Jens Axboe