Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f46833d authored by Dan Williams's avatar Dan Williams
Browse files

libnvdimm: Debug probe times



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: default avatarDan Williams <dan.j.williams@intel.com>
parent 254a4cd5
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -100,6 +100,9 @@ static int nvdimm_bus_probe(struct device *dev)
	if (!try_module_get(provider))
	if (!try_module_get(provider))
		return -ENXIO;
		return -ENXIO;


	dev_dbg(&nvdimm_bus->dev, "START: %s.probe(%s)\n",
			dev->driver->name, dev_name(dev));

	nvdimm_bus_probe_start(nvdimm_bus);
	nvdimm_bus_probe_start(nvdimm_bus);
	rc = nd_drv->probe(dev);
	rc = nd_drv->probe(dev);
	if (rc == 0)
	if (rc == 0)
@@ -108,7 +111,7 @@ static int nvdimm_bus_probe(struct device *dev)
		nd_region_disable(nvdimm_bus, dev);
		nd_region_disable(nvdimm_bus, dev);
	nvdimm_bus_probe_end(nvdimm_bus);
	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);
			dev_name(dev), rc);


	if (rc != 0)
	if (rc != 0)