[U-Boot] [PATCH 06/11] log: Add a way to log a return value with a message

Simon Glass sjg at chromium.org
Mon Jun 11 19:07:14 UTC 2018


It is sometimes useful to show a message when logging an error return
value, perhaps to add a few details about the problem. Add a function to
support this.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 include/log.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/include/log.h b/include/log.h
index a3edd25546..a01b728ec0 100644
--- a/include/log.h
+++ b/include/log.h
@@ -166,8 +166,16 @@ void __assert_fail(const char *assertion, const char *file, unsigned int line,
 		log(LOG_CATEGORY, LOGL_ERR, "returning err=%d\n", __ret); \
 	__ret; \
 	})
+#define log_msg_ret(_msg, _ret) ({ \
+	int __ret = (_ret); \
+	if (__ret < 0) \
+		log(LOG_CATEGORY, LOGL_ERR, "%s: returning err=%d\n", _msg, \
+		    __ret); \
+	__ret; \
+	})
 #else
 #define log_ret(_ret) (_ret)
+#define log_msg_ret(_ret) (_ret)
 #endif
 
 /**
-- 
2.18.0.rc1.242.g61856ae69a-goog



More information about the U-Boot mailing list