Javier > On 18 Oct 2017, at 18.52, Christoph Hellwig <hch@xxxxxx> wrote: > > Introduce a new struct nvme_ns_head that holds information about an actual > namespace, unlike struct nvme_ns, which only holds the per-controller > namespace information. For private namespaces there is a 1:1 relation of > the two, but for shared namespaces this lets us discover all the paths to > it. For now only the identifiers are moved to the new structure, but most > of the information in struct nvme_ns should eventually move over. > > To allow lockless path lookup the list of nvme_ns structures per > nvme_ns_head is protected by SRCU, which requires freeing the nvme_ns > structure through call_srcu. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > Reviewed-by: Keith Busch <keith.busch@xxxxxxxxx> > --- > drivers/nvme/host/core.c | 192 +++++++++++++++++++++++++++++++++++++------ > drivers/nvme/host/lightnvm.c | 14 ++-- > drivers/nvme/host/nvme.h | 21 ++++- > 3 files changed, 192 insertions(+), 35 deletions(-) > > LGTM Reviewed-by: Javier González <javier@xxxxxxxxxxxx>
Attachment:
signature.asc
Description: Message signed with OpenPGP