All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Matias Bjørling" <m@bjorling.me>
To: Jens Axboe <axboe@kernel.dk>,
	Christoph Hellwig <hch@infradead.org>,
	Keith Busch <keith.busch@intel.com>,
	Simon Lund <slund@cnexlabs.com>
Cc: linux-block@vger.kernel.org
Subject: gendisk and lightnvm
Date: Mon, 23 May 2016 09:24:19 +0200	[thread overview]
Message-ID: <5742B023.2040503@bjorling.me> (raw)

Hi Jens, Christoph, and Keith,

I have been pondering for a couple of weeks on how to integrate lightnvm 
into the sysfs stack. Lightnvm does not currently expose a "physical" 
device. During device registration, the block device name is simply 
stored, which the user may then use as an id later, and expose through a 
target implementation.

Until then, the device is left "dangling" in the kernel, without any 
good way to reference it other than asking the lightnvm manager. This 
also includes device driver specific configuration, such as power and mq 
sysfs entries.

It would be great to have a common way to expose the lightnvm subsystem 
through the block storage stack.

With block devices, the device driver centric information includes:

/sys/block/*/
   inflight
   removable
   serial
   /mq
   /power

Simon has currently built an RFC patch that wires lightnvm devices up in 
/sys/devices/virtual/misc/lightnvm/*, without any access to the above 
entries.

What would be the best way to approach this?

1. Simply set genhd device capacity to 0, and let entries and block 
device be exposed through the common stack.

2. Add a GENHD_FL_BLKLESS_DEV flag, and use it in genhd.c and block 
layer to filter out block device specific entries.

3. Write a shim layer that exposes a semi genhd, with only the device 
driver sysfs entries exposed.

4. Any other?

Thank you,
Matias

             reply	other threads:[~2016-05-23  7:24 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-23  7:24 Matias Bjørling [this message]
2016-05-26 17:40 ` gendisk and lightnvm Dan Williams
2016-05-26 18:10   ` Matias Bjørling
2016-05-26 19:05     ` Dan Williams
2016-05-26 21:50       ` Matias Bjørling
2016-05-26 22:06         ` Dan Williams
2016-05-27 17:25           ` Matias Bjørling

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5742B023.2040503@bjorling.me \
    --to=m@bjorling.me \
    --cc=axboe@kernel.dk \
    --cc=hch@infradead.org \
    --cc=keith.busch@intel.com \
    --cc=linux-block@vger.kernel.org \
    --cc=slund@cnexlabs.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.