lkml.org 
[lkml]   [2009]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 14/18] oprofile: remove backtrace code for ibs
Date
This code is broken since a TRACE_BEGIN_CODE is never sent to the
daemon. The data becomes corrupt since the backtrace is interpreted as
ibs sample.

Signed-off-by: Robert Richter <robert.richter@amd.com>
---
drivers/oprofile/buffer_sync.c | 2 --
drivers/oprofile/cpu_buffer.c | 10 ++--------
2 files changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/oprofile/buffer_sync.c b/drivers/oprofile/buffer_sync.c
index 7415d2e..e61e25f 100644
--- a/drivers/oprofile/buffer_sync.c
+++ b/drivers/oprofile/buffer_sync.c
@@ -557,11 +557,9 @@ void sync_buffer(int cpu)
break;
#ifdef CONFIG_OPROFILE_IBS
case IBS_FETCH_BEGIN:
- state = sb_bt_start;
add_ibs_begin(cpu, IBS_FETCH_CODE, mm);
break;
case IBS_OP_BEGIN:
- state = sb_bt_start;
add_ibs_begin(cpu, IBS_OP_CODE, mm);
break;
#endif
diff --git a/drivers/oprofile/cpu_buffer.c b/drivers/oprofile/cpu_buffer.c
index 8ae37c9..92bf8c0 100644
--- a/drivers/oprofile/cpu_buffer.c
+++ b/drivers/oprofile/cpu_buffer.c
@@ -347,17 +347,11 @@ void oprofile_add_ibs_sample(struct pt_regs * const regs,
fail = fail || add_sample(cpu_buf, ibs_sample[10], ibs_sample[11]);
}

- if (fail)
- goto fail;
-
- if (oprofile_backtrace_depth)
- oprofile_ops.backtrace(regs, oprofile_backtrace_depth);
-
- return;
+ if (!fail)
+ return;

fail:
cpu_buf->sample_lost_overflow++;
- return;
}

#endif
--
1.6.0.1



\
 
 \ /
  Last update: 2009-01-07 23:31    [W:0.161 / U:0.524 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site