/* * Need to take variadic arguments even though we don't use them, as dev_fmt() * may only just have been expanded and may result in multiple arguments.
*/ #define dev_printk_index_emit(level, fmt, ...) \
printk_index_subsys_emit("%s %s: ", level, fmt)
/* * Some callsites directly call dev_printk rather than going through the * dev_<level> infrastructure, so we need to emit here as well as inside those * level-specific macros. Only one index entry will be produced, either way, * since dev_printk's `fmt` isn't known at compile time if going through the * dev_<level> macros. * * dev_fmt() isn't called for dev_printk when used directly, as it's used by * the dev_<level> macros internally which already have dev_fmt() processed. * * We also can't use dev_printk_index_wrap directly, because we have a separate * level to process.
*/ #define dev_printk(level, dev, fmt, ...) \
({ \
dev_printk_index_emit(level, fmt); \
_dev_printk(level, dev, fmt, ##__VA_ARGS__); \
})
/* * Dummy dev_printk for disabled debugging statements to use whilst maintaining * gcc's format checking.
*/ #define dev_no_printk(level, dev, fmt, ...) \
({ \ if (0) \
_dev_printk(level, dev, fmt, ##__VA_ARGS__); \
})
/* * #defines for all the dev_<level> macros to prefix with whatever * possible use of #define dev_fmt(fmt) ...
*/
/* * dev_WARN*() acts like dev_printk(), but with the key difference of * using WARN/WARN_ONCE to include file/line information and a backtrace.
*/ #define dev_WARN(dev, format, arg...) \
WARN(1, "%s %s: " format, dev_driver_string(dev), dev_name(dev), ## arg)
#define dev_WARN_ONCE(dev, condition, format, arg...) \
WARN_ONCE(condition, "%s %s: " format, \
dev_driver_string(dev), dev_name(dev), ## arg)
__printf(3, 4) int dev_err_probe(conststruct device *dev, int err, constchar *fmt, ...);
__printf(3, 4) int dev_warn_probe(conststruct device *dev, int err, constchar *fmt, ...);
/* Simple helper for dev_err_probe() when ERR_PTR() is to be returned. */ #define dev_err_ptr_probe(dev, ___err, fmt, ...) \
ERR_PTR(dev_err_probe(dev, ___err, fmt, ##__VA_ARGS__))
/* Simple helper for dev_err_probe() when ERR_CAST() is to be returned. */ #define dev_err_cast_probe(dev, ___err_ptr, fmt, ...) \
ERR_PTR(dev_err_probe(dev, PTR_ERR(___err_ptr), fmt, ##__VA_ARGS__))
#endif/* _DEVICE_PRINTK_H_ */
Messung V0.5
¤ Dauer der Verarbeitung: 0.29 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.