History

driver core: add device probe log helper

During probe every time driver gets resource it should usually check for error printk some message if it is not -EPROBE_DEFER and return the error. This pattern is simple but requires adding few lines after any resource acquisition code, as a result it is often omitted or implemented only partially. dev_err_probe helps to replace such code sequences with simple call, so code: if (err != -EPROBE_DEFER) dev_err(dev, ...); return err; becomes: return dev_err_probe(dev, err, ...);

Andrzej Hajda committed 6 years ago

Commit a787e541 parent 65488832 files · +45 −0Browse files

Showing the changes to include/linux (1 of 2 files). Show all

Unified · Split

include/linux/device.h+3−0
@@ -962,6 +962,9 @@ void device_link_remove(void *consumer, struct device *supplier); · 961 unmodified lines
962962 void device_links_supplier_sync_state_pause(void);
963963 void device_links_supplier_sync_state_resume(void);
964964
965+extern __printf(3, 4)
966+int dev_err_probe(const struct device *dev, int err, const char *fmt, ...);
967+
965968 /* Create alias, so I can be autoloaded. */
966969 #define MODULE_ALIAS_CHARDEV(major,minor) \
967970 MODULE_ALIAS("char-major-" __stringify(major) "-" __stringify(minor))