diff options
author | Pekka Paalanen <pq@iki.fi> | 2008-05-12 15:20:58 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2008-05-24 05:25:16 -0400 |
commit | 138295373ccf7625fcb0218dfea114837983bc39 (patch) | |
tree | 3d4afbb0d976fa41435fd5806ff0338aa1f15567 /include | |
parent | bd8ac686c73c7e925fcfe0b02dc4e7b947127864 (diff) |
ftrace: mmiotrace update, #2
another weekend, another patch. This should apply on top of my previous patch
from March 23rd.
Summary of changes:
- Print PCI device list in output header
- work around recursive probe hits on SMP
- refactor dis/arm_kmmio_fault_page() and add check for page levels
- remove un/reference_kmmio(), the die notifier hook is registered
permanently into the list
- explicitly check for single stepping in die notifier callback
I have tested this version on my UP Athlon64 desktop with Nouveau, and
SMP Core 2 Duo laptop with the proprietary nvidia driver. Both systems
are 64-bit. One previously unknown bug crept into daylight: the ftrace
framework's output routines print the first entry last after buffer has
wrapped around.
The most important regressions compared to non-ftrace mmiotrace at this
time are:
- failure of trace_pipe file
- illegal lines in output file
- unaware of losing data due to buffer full
Personally I'd like to see these three solved before submitting to
mainline. Other issues may come up once we know when we lose events.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/mmiotrace.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/include/linux/mmiotrace.h b/include/linux/mmiotrace.h index c88a9c197d22..dd6b64b160fc 100644 --- a/include/linux/mmiotrace.h +++ b/include/linux/mmiotrace.h | |||
@@ -31,8 +31,6 @@ static inline int is_kmmio_active(void) | |||
31 | return kmmio_count; | 31 | return kmmio_count; |
32 | } | 32 | } |
33 | 33 | ||
34 | extern void reference_kmmio(void); | ||
35 | extern void unreference_kmmio(void); | ||
36 | extern int register_kmmio_probe(struct kmmio_probe *p); | 34 | extern int register_kmmio_probe(struct kmmio_probe *p); |
37 | extern void unregister_kmmio_probe(struct kmmio_probe *p); | 35 | extern void unregister_kmmio_probe(struct kmmio_probe *p); |
38 | 36 | ||