libnvdimm: Debug probe times
authorDan Williams <dan.j.williams@intel.com>
Fri, 1 Jun 2018 21:10:58 +0000 (14:10 -0700)
committerDan Williams <dan.j.williams@intel.com>
Sun, 3 Jun 2018 00:05:43 +0000 (17:05 -0700)
Instrument nvdimm_bus_probe() to emit timestamps for the start and end
of libnvdimm device probing. This is useful for identifying sources of
libnvdimm sub-system initialization latency.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/nvdimm/bus.c

index b9e0d30e317acc86139c4cf2cadb11b8cc6572cd..27902a8799b1e022049078efc2ce14269dbea672 100644 (file)
@@ -100,6 +100,9 @@ static int nvdimm_bus_probe(struct device *dev)
        if (!try_module_get(provider))
                return -ENXIO;
 
+       dev_dbg(&nvdimm_bus->dev, "START: %s.probe(%s)\n",
+                       dev->driver->name, dev_name(dev));
+
        nvdimm_bus_probe_start(nvdimm_bus);
        rc = nd_drv->probe(dev);
        if (rc == 0)
@@ -108,7 +111,7 @@ static int nvdimm_bus_probe(struct device *dev)
                nd_region_disable(nvdimm_bus, dev);
        nvdimm_bus_probe_end(nvdimm_bus);
 
-       dev_dbg(&nvdimm_bus->dev, "%s.probe(%s) = %d\n", dev->driver->name,
+       dev_dbg(&nvdimm_bus->dev, "END: %s.probe(%s) = %d\n", dev->driver->name,
                        dev_name(dev), rc);
 
        if (rc != 0)