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 a0c8dcfa0bf923cc1e8a1b2ffacb74f2f801d681..97187d6c0bdb00ee2de3e085edea9f8337546863 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;