--- zzzz-none-000/linux-2.6.28.10/include/linux/kernel.h 2009-05-02 18:54:43.000000000 +0000 +++ puma5-6360-529/linux-2.6.28.10/include/linux/kernel.h 2010-04-15 11:41:42.000000000 +0000 @@ -141,6 +141,11 @@ (__x < 0) ? -__x : __x; \ }) +#define labs(x) ({ \ + long __x = (x); \ + (__x < 0) ? -__x : __x; \ + }) + extern struct atomic_notifier_head panic_notifier_list; extern long (*panic_blink)(long time); NORET_TYPE void panic(const char * fmt, ...) @@ -225,6 +230,22 @@ extern int printk_ratelimit(void); extern bool printk_timed_ratelimit(unsigned long *caller_jiffies, unsigned int interval_msec); + + +/* zeigt immer auf printk */ +extern asmlinkage int (*__printk)(const char * fmt, ...) __attribute__ ((format (printf, 1, 2))); +extern asmlinkage int (*__vprintk)(const char * fmt, va_list args); + +/* wird ggf. auf andere Funktion umgebogen */ +#define printk _printk +#define vprintk _vprintk +extern asmlinkage int (*_printk)(const char * fmt, ...) __attribute__ ((format (printf, 1, 2))); +extern asmlinkage int (*_vprintk)(const char * fmt, va_list args); + +void set_printk(int (*__print)(const char * fmt, ...) __attribute__ ((format (printf, 1, 2)))); +void set_vprintk(int (*__vprint)(const char * fmt, va_list args)); +void restore_printk(void); + #else static inline int vprintk(const char *s, va_list args) __attribute__ ((format (printf, 1, 0)));