libnvdimm/of_pmem: Provide a unique name for bus provider
authorAneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Wed, 7 Aug 2019 04:00:29 +0000 (09:30 +0530)
committerDan Williams <dan.j.williams@intel.com>
Wed, 14 Aug 2019 03:31:57 +0000 (20:31 -0700)
ndctl binaries, v66 and older, mistakenly require the ndbus to have
unique names. If not while enumerating the bus in userspace it drops bus
with similar names.  This results in us not listing devices beneath the
bus.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Tested-by: Vaibhav Jain <vaibhav@linux.ibm.com>
Link: https://lore.kernel.org/r/20190807040029.11344-1-aneesh.kumar@linux.ibm.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/nvdimm/of_pmem.c

index a0c8dcf..97187d6 100644 (file)
@@ -42,7 +42,7 @@ static int of_pmem_region_probe(struct platform_device *pdev)
                return -ENOMEM;
 
        priv->bus_desc.attr_groups = bus_attr_groups;
-       priv->bus_desc.provider_name = "of_pmem";
+       priv->bus_desc.provider_name = kstrdup(pdev->name, GFP_KERNEL);
        priv->bus_desc.module = THIS_MODULE;
        priv->bus_desc.of_node = np;