log: Add a way to log a return value with a message

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@chromium.org>
This commit is contained in:
Simon Glass 2018-06-11 13:07:14 -06:00
parent c60f671b65
commit b616cef97a

View file

@ -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
/**