update compat
[lttv.git] / ltt / branches / poly / doc / developer / marker-types.txt
index 4c3b6c11419af02e6a17ad9d78e39b1ca14aabef..f68204c5c17d05b5b6d0f8f17d249db80b9df88f 100644 (file)
@@ -33,21 +33,31 @@ if (enable) {
 #define _MARK_RESCHED (1 << MARK_RESCHED)
   preempt_schedule() will be called by the marker.
 
-#define _MARK_DEFAULT (~_MARK_PREEMPT | _MARK_TRAP | _MARK_RESCHED)
+#define MARK_PRINTK 4
+#define _MARK_PRINTK (1 << MARK_PRINTK)
+  vprintk can be called in the probe/printk can be called as probe.
 
-#define MARK (format, ...) MARK_OPTIONS(MARK_DEFAULT, format, __VA_ARGS__)
+#define MARK_LOCK_SAFE
+#define _MARK_LOCK_SAFE (1 << MARK_LOCK_SAFE)
+  It is completely safe to take a lock, disable irqs, softirqs, ... from this marker.
+  If unset, checking the context must be done to insure no deadlock or recursive
+  call will occur.
+
+#define _MARK_DEFAULT (_MARK_TRAP | _MARK_RESCHED | _MARK_PRINTK)
+
+#define MARK (format, args...) _MARK(MARK_DEFAULT, format, ## args)
 
 ex. i386
-#define MARK_OPTIONS(opt, format, ...) \
-{ \
-       if (opt & _MARK_NO_TRAP) \
-               GEN_MARK(opt, format, __VA_ARGS__); \
+#define _MARK(opt, format, args...) \
+do { \
+       if (opt & _MARK_TRAP) \
+               MARK(opt, format, ## args); \
        else \
-               MARK(opt, format, __VA_ARGS__); \
-}
+               GEN_MARK(opt, format, ## args); \
+} while (0)
 
 ex. powerpc
-#define MARK_OPTIONS(opt, format, ...) MARK(opt, format, __VA_ARGS__);
+#define _MARK(opt, format, args...) MARK(opt, format, ## args);
 
 
 MARK(opt, format, ...) \
This page took 0.02365 seconds and 4 git commands to generate.