Re: [PATCH] null_blk: Register as a LightNVM device

From: Matias Bjørling
Date: Thu Nov 12 2015 - 13:29:19 EST


On 11/12/2015 05:00 PM, Jens Axboe wrote:
On 11/12/2015 08:58 AM, Christoph Hellwig wrote:
On Thu, Nov 12, 2015 at 08:54:48AM -0700, Jens Axboe wrote:
300 lines of boilerplate for just setting up a few request_queues seem
wrong, can you show the actual patch you measured?

I just took it from Matias' last posting:

http://marc.info/?l=linux-kernel&m=144605858228534&w=2

Well, that one has all these crazy completion methods which
are of no use for a blk-mq driver, so it should really be
compared without those.

So we can cut it down a bit, it's still going to be the same boilerplate
code that null_blk has, even with just mq completions. If it ended up
rewriting null_blk to be something else entirely or full of ifdef
sprinkles, I'd agree. But for adding a hundred lines of code to be able
to test lightnvm perf, I think it's a no-brainer to just add it to
null_blk and not have a separate module.


As it is now, I prefer it part of null_blk, as long as it basically copy the core queueing structure. If null_nvm, we will have to maintain in two places. It'll be nice to keep it in one place.

The reason I would keep null_nvm, would be to add appropriate waiting times to simulate flash. However, I've now seen three implementations that utilized lightnvm for simulations, and it still doesn't scale to +1M IOPS that we need to actually compare it to a real device.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/