C/lh
From Attie's Wiki
User-Space
#ifndef LH_H #define LH_H #include <stdio.h> #define LH() \ fprintf(stderr, "%s:%d %s()\n", __FILE__, __LINE__, __FUNCTION__) #define MH(fmt, ...) \ fprintf(stderr, "%s:%d %s(): " fmt "\n", __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__) #define LOG(fmt, ...) \ fprintf(stderr, "%c[91m->%c[93m %s:%d %s() %c[91m->%c[93m " fmt "%c[0m\n", 27, 27, __FILE__, __LINE__, __FUNCTION__, 27, 27, ##__VA_ARGS__, 27) #endif /* LH_H */
Kernel
#define LH() \ printk(KERN_EMERG "%s:%d %s()\n", __FILE__, __LINE__, __FUNCTION__) #define MH(fmt, ...) \ printk(KERN_EMERG "%s:%d %s(): " fmt "\n", __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__)