diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-05 19:32:01 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-05 19:32:01 -0400 |
commit | 44aefd2706bb6f5b65ba2c38cd89e7609e2b43d3 (patch) | |
tree | 93824f573767da634fbc82c388b6d33cc454212b /kernel/profile.c | |
parent | c1a26e7d40fb814716950122353a1a556844286b (diff) | |
parent | 7d12e780e003f93433d49ce78cfedf4b4c52adc5 (diff) |
Merge git://git.infradead.org/~dhowells/irq-2.6
* git://git.infradead.org/~dhowells/irq-2.6:
IRQ: Maintain regs pointer globally rather than passing to IRQ handlers
IRQ: Typedef the IRQ handler function type
IRQ: Typedef the IRQ flow handler function type
Diffstat (limited to 'kernel/profile.c')
-rw-r--r-- | kernel/profile.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/profile.c b/kernel/profile.c index fb660c7d35ba..857300a2afec 100644 --- a/kernel/profile.c +++ b/kernel/profile.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include <linux/mutex.h> | 25 | #include <linux/mutex.h> |
26 | #include <asm/sections.h> | 26 | #include <asm/sections.h> |
27 | #include <asm/semaphore.h> | 27 | #include <asm/semaphore.h> |
28 | #include <asm/irq_regs.h> | ||
28 | 29 | ||
29 | struct profile_hit { | 30 | struct profile_hit { |
30 | u32 pc, hits; | 31 | u32 pc, hits; |
@@ -366,8 +367,10 @@ void profile_hit(int type, void *__pc) | |||
366 | } | 367 | } |
367 | #endif /* !CONFIG_SMP */ | 368 | #endif /* !CONFIG_SMP */ |
368 | 369 | ||
369 | void profile_tick(int type, struct pt_regs *regs) | 370 | void profile_tick(int type) |
370 | { | 371 | { |
372 | struct pt_regs *regs = get_irq_regs(); | ||
373 | |||
371 | if (type == CPU_PROFILING && timer_hook) | 374 | if (type == CPU_PROFILING && timer_hook) |
372 | timer_hook(regs); | 375 | timer_hook(regs); |
373 | if (!user_mode(regs) && cpu_isset(smp_processor_id(), prof_cpu_mask)) | 376 | if (!user_mode(regs) && cpu_isset(smp_processor_id(), prof_cpu_mask)) |