libnvdimm: change disk name of virtio pmem disk
diff mbox series

Message ID 20190731111207.12836-1-pagupta@redhat.com
State New
Headers show
Series
  • libnvdimm: change disk name of virtio pmem disk
Related show

Commit Message

Pankaj Gupta July 31, 2019, 11:12 a.m. UTC
This patch adds prefix 'v' in disk name for virtio pmem.
This differentiates virtio-pmem disks from the pmem disks.

Signed-off-by: Pankaj Gupta <pagupta@redhat.com>
---
 drivers/nvdimm/namespace_devs.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Comments

Pankaj Gupta Aug. 13, 2019, 4:55 a.m. UTC | #1
Ping.

> 
> This patch adds prefix 'v' in disk name for virtio pmem.
> This differentiates virtio-pmem disks from the pmem disks.
> 
> Signed-off-by: Pankaj Gupta <pagupta@redhat.com>
> ---
>  drivers/nvdimm/namespace_devs.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/nvdimm/namespace_devs.c
> b/drivers/nvdimm/namespace_devs.c
> index a16e52251a30..8e5d29266fb0 100644
> --- a/drivers/nvdimm/namespace_devs.c
> +++ b/drivers/nvdimm/namespace_devs.c
> @@ -182,8 +182,12 @@ const char *nvdimm_namespace_disk_name(struct
> nd_namespace_common *ndns,
>  		char *name)
>  {
>  	struct nd_region *nd_region = to_nd_region(ndns->dev.parent);
> +	const char *prefix = "";
>  	const char *suffix = NULL;
>  
> +	if (!is_nvdimm_sync(nd_region))
> +		prefix = "v";
> +
>  	if (ndns->claim && is_nd_btt(ndns->claim))
>  		suffix = "s";
>  
> @@ -201,7 +205,7 @@ const char *nvdimm_namespace_disk_name(struct
> nd_namespace_common *ndns,
>  			sprintf(name, "pmem%d.%d%s", nd_region->id, nsidx,
>  					suffix ? suffix : "");
>  		else
> -			sprintf(name, "pmem%d%s", nd_region->id,
> +			sprintf(name, "%spmem%d%s", prefix, nd_region->id,
>  					suffix ? suffix : "");
>  	} else if (is_namespace_blk(&ndns->dev)) {
>  		struct nd_namespace_blk *nsblk;
> --
> 2.20.1
> 
>
Dan Williams Aug. 15, 2019, 5:28 p.m. UTC | #2
On Wed, Jul 31, 2019 at 4:12 AM Pankaj Gupta <pagupta@redhat.com> wrote:
>
> This patch adds prefix 'v' in disk name for virtio pmem.
> This differentiates virtio-pmem disks from the pmem disks.

I don't think the small matter that this device does not support
MAP_SYNC warrants a separate naming scheme.  That said I do think we
need to export this attribute in sysfs, likely at the region level,
and then display that information in ndctl. This is distinct from the
btt case where it is operating a different data consistency contract
than baseline pmem.
>
> Signed-off-by: Pankaj Gupta <pagupta@redhat.com>
> ---
>  drivers/nvdimm/namespace_devs.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/nvdimm/namespace_devs.c b/drivers/nvdimm/namespace_devs.c
> index a16e52251a30..8e5d29266fb0 100644
> --- a/drivers/nvdimm/namespace_devs.c
> +++ b/drivers/nvdimm/namespace_devs.c
> @@ -182,8 +182,12 @@ const char *nvdimm_namespace_disk_name(struct nd_namespace_common *ndns,
>                 char *name)
>  {
>         struct nd_region *nd_region = to_nd_region(ndns->dev.parent);
> +       const char *prefix = "";
>         const char *suffix = NULL;
>
> +       if (!is_nvdimm_sync(nd_region))
> +               prefix = "v";
> +
>         if (ndns->claim && is_nd_btt(ndns->claim))
>                 suffix = "s";
>
> @@ -201,7 +205,7 @@ const char *nvdimm_namespace_disk_name(struct nd_namespace_common *ndns,
>                         sprintf(name, "pmem%d.%d%s", nd_region->id, nsidx,
>                                         suffix ? suffix : "");
>                 else
> -                       sprintf(name, "pmem%d%s", nd_region->id,
> +                       sprintf(name, "%spmem%d%s", prefix, nd_region->id,
>                                         suffix ? suffix : "");
>         } else if (is_namespace_blk(&ndns->dev)) {
>                 struct nd_namespace_blk *nsblk;
> --
> 2.20.1
>
Pankaj Gupta Aug. 16, 2019, 7:36 a.m. UTC | #3
> >
> > This patch adds prefix 'v' in disk name for virtio pmem.
> > This differentiates virtio-pmem disks from the pmem disks.
> 
> I don't think the small matter that this device does not support
> MAP_SYNC warrants a separate naming scheme.  That said I do think we
> need to export this attribute in sysfs, likely at the region level,
> and then display that information in ndctl. This is distinct from the
> btt case where it is operating a different data consistency contract
> than baseline pmem.

o.k. I will look to add the information in sysfs and display using ndctl.

Thanks,
Pankaj

> >
> > Signed-off-by: Pankaj Gupta <pagupta@redhat.com>
> > ---
> >  drivers/nvdimm/namespace_devs.c | 6 +++++-
> >  1 file changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/nvdimm/namespace_devs.c
> > b/drivers/nvdimm/namespace_devs.c
> > index a16e52251a30..8e5d29266fb0 100644
> > --- a/drivers/nvdimm/namespace_devs.c
> > +++ b/drivers/nvdimm/namespace_devs.c
> > @@ -182,8 +182,12 @@ const char *nvdimm_namespace_disk_name(struct
> > nd_namespace_common *ndns,
> >                 char *name)
> >  {
> >         struct nd_region *nd_region = to_nd_region(ndns->dev.parent);
> > +       const char *prefix = "";
> >         const char *suffix = NULL;
> >
> > +       if (!is_nvdimm_sync(nd_region))
> > +               prefix = "v";
> > +
> >         if (ndns->claim && is_nd_btt(ndns->claim))
> >                 suffix = "s";
> >
> > @@ -201,7 +205,7 @@ const char *nvdimm_namespace_disk_name(struct
> > nd_namespace_common *ndns,
> >                         sprintf(name, "pmem%d.%d%s", nd_region->id, nsidx,
> >                                         suffix ? suffix : "");
> >                 else
> > -                       sprintf(name, "pmem%d%s", nd_region->id,
> > +                       sprintf(name, "%spmem%d%s", prefix, nd_region->id,
> >                                         suffix ? suffix : "");
> >         } else if (is_namespace_blk(&ndns->dev)) {
> >                 struct nd_namespace_blk *nsblk;
> > --
> > 2.20.1
> >
>

Patch
diff mbox series

diff --git a/drivers/nvdimm/namespace_devs.c b/drivers/nvdimm/namespace_devs.c
index a16e52251a30..8e5d29266fb0 100644
--- a/drivers/nvdimm/namespace_devs.c
+++ b/drivers/nvdimm/namespace_devs.c
@@ -182,8 +182,12 @@  const char *nvdimm_namespace_disk_name(struct nd_namespace_common *ndns,
 		char *name)
 {
 	struct nd_region *nd_region = to_nd_region(ndns->dev.parent);
+	const char *prefix = "";
 	const char *suffix = NULL;
 
+	if (!is_nvdimm_sync(nd_region))
+		prefix = "v";
+
 	if (ndns->claim && is_nd_btt(ndns->claim))
 		suffix = "s";
 
@@ -201,7 +205,7 @@  const char *nvdimm_namespace_disk_name(struct nd_namespace_common *ndns,
 			sprintf(name, "pmem%d.%d%s", nd_region->id, nsidx,
 					suffix ? suffix : "");
 		else
-			sprintf(name, "pmem%d%s", nd_region->id,
+			sprintf(name, "%spmem%d%s", prefix, nd_region->id,
 					suffix ? suffix : "");
 	} else if (is_namespace_blk(&ndns->dev)) {
 		struct nd_namespace_blk *nsblk;