lkml.org 
[lkml]   [2004]   [Dec]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [mm patch] oprofile: backtrace operation does not initialized
On Wed, Dec 08, 2004 at 04:00:55PM +0000, John Levon wrote:
> On Wed, Dec 08, 2004 at 06:30:51PM +0900, Akinobu Mita wrote:
>
> > When I forced the oprofile to use timer interrupt with specifying
> > "timer=1" module parameter. "oprofile_operations->backtrace" did
> > not initialized on i386.
> >
> > Please apply this patch, or make oprofile initialize the backtrace
> > operation in case of using timer interrupt in your preferable way.
>
> I don't like this patch. The arches should just set the backtrace
> always, then try to init the hardware. oprofile_init() should then force
> the timer ops as needed.
>
> Greg?

Agreed, that's a cleaner approach. The attached patch (untested)
implements that. Akinobu-san, can you please test the patch?

Greg.
--
Greg Banks, R&D Software Engineer, SGI Australian Software Group.
I don't speak for SGI.
Allow stack tracing to work when sampling on timer is forced
using the timer=1 boot option. Reported by Akinobu Mita.

Signed-off-by: Greg Banks <gnb@melbourne.sgi.com>
---
oprof.c | 6 ++----
1 files changed, 2 insertions(+), 4 deletions(-)


Index: linux/drivers/oprofile/oprof.c
===================================================================
--- linux.orig/drivers/oprofile/oprof.c 2004-12-04 19:43:37.%N +1100
+++ linux/drivers/oprofile/oprof.c 2004-12-09 09:25:02.%N +1100
@@ -155,13 +155,11 @@ static int __init oprofile_init(void)
{
int err = 0;

- /* this is our fallback case */
- oprofile_timer_init(&oprofile_ops);
+ oprofile_arch_init(&oprofile_ops);

if (timer) {
printk(KERN_INFO "oprofile: using timer interrupt.\n");
- } else {
- oprofile_arch_init(&oprofile_ops);
+ oprofile_timer_init(&oprofile_ops);
}

err = oprofilefs_register();
\
 
 \ /
  Last update: 2005-03-22 14:08    [W:0.061 / U:0.472 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site