Re: [GIT PULL 24/25] lightnvm: pblk: add iostat support

From: Christoph Hellwig
Date: Mon Jan 08 2018 - 06:55:03 EST


On Fri, Jan 05, 2018 at 07:33:36PM +0100, Matias Bjørling wrote:
> On 01/05/2018 04:42 PM, Jens Axboe wrote:
> > On Fri, Jan 05 2018, Matias Bjørling wrote:
> > > From: Javier González <javier@xxxxxxxxxxxx>
> > >
> > > Since pblk registers its own block device, the iostat accounting is
> > > not automatically done for us. Therefore, add the necessary
> > > accounting logic to satisfy the iostat interface.
> >
> > Ignorant question - why is it a raw block device, not using blk-mq?
>
> The current flow is using the raw block device, together with the blk-mq
> nvme device driver. A bio is sent down to the nvme_nvm_submit_io() path in
> the /drivers/nvme/host/lightnvm.c file. From there it attaches the to NVMe
> blk-mq implementation.
>
> Is there a better way to do it?

I suspect the right way to do things is to split NVMe for different
I/O command sets, and make this an I/O command set.

But before touching much of NVMe, I'd really, really like to see an
actual spec first.