Re: [PATCH 1/3] pmem: Initial version of persistent memory driver

From: Boaz Harrosh
Date: Thu May 07 2015 - 04:35:43 EST


On 05/07/2015 10:26 AM, Christoph Hellwig wrote:
> On Mon, May 04, 2015 at 10:43:01AM -0600, Ross Zwisler wrote:
>>> Yes, if CONFIG_DEBUG_BLOCK_EXT_DEVT isn't set that code doesn't work at all.
>>
>> I can't figure out a use case that breaks when using dynamically allocated
>> minors without CONFIG_DEBUG_BLOCK_EXT_DEVT. The patch that I've been testing
>> against is at the bottom of this mail.
>>
>> Here are the minors that I get when creating a bunch of partitions using the
>> current code with PMEM_MINORS=16, with CONFIG_DEBUG_BLOCK_EXT_DEVT turned off:
>
> FYI, your patch below works fine for me, but the original one certainly
> didn't. One big difference was that it also removed the register_blkdev
> call and thus assigning a major number.
>

assigning a major number for what?

That "assigned major number" is then never used *anywhere* in the code at all
until it is unregistered. All the devices come up with the dynamic (259) major

the register_blkdev is just dead code. I have experimented with this a lot,
I have audited the all code stack, that major is never used, when doing the:

alloc_disk(0)
disk->flags |= GENHD_FL_EXT_DEVT

The:
disk->major = X

Is completely ignored and is immediately over written. The only relic of that
major registration is the pmem_major global member collecting dust.

Sigh, bad habits die hard, I don't really care you can keep it. Sorry for
the noise.

Cheers
Boaz

--
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/