aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/oprofile/buffer_sync.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/drivers/oprofile/buffer_sync.c b/drivers/oprofile/buffer_sync.c
index bf8fcc7163da..21fd249b6e0b 100644
--- a/drivers/oprofile/buffer_sync.c
+++ b/drivers/oprofile/buffer_sync.c
@@ -325,36 +325,36 @@ static void add_trace_begin(void)
325 */ 325 */
326static void add_ibs_begin(int cpu, int code, struct mm_struct *mm) 326static void add_ibs_begin(int cpu, int code, struct mm_struct *mm)
327{ 327{
328 unsigned long rip; 328 unsigned long pc;
329 int i, count; 329 int i, count;
330 unsigned long ibs_cookie = 0; 330 unsigned long cookie = 0;
331 off_t offset; 331 off_t offset;
332 struct op_sample *sample; 332 struct op_sample *sample;
333 333
334 sample = op_cpu_buffer_read_entry(cpu); 334 sample = op_cpu_buffer_read_entry(cpu);
335 if (!sample) 335 if (!sample)
336 return; 336 return;
337 rip = sample->eip; 337 pc = sample->eip;
338 338
339#ifdef __LP64__ 339#ifdef __LP64__
340 rip += sample->event << 32; 340 pc += sample->event << 32;
341#endif 341#endif
342 342
343 if (mm) { 343 if (mm) {
344 ibs_cookie = lookup_dcookie(mm, rip, &offset); 344 cookie = lookup_dcookie(mm, pc, &offset);
345 345
346 if (ibs_cookie == NO_COOKIE) 346 if (cookie == NO_COOKIE)
347 offset = rip; 347 offset = pc;
348 if (ibs_cookie == INVALID_COOKIE) { 348 if (cookie == INVALID_COOKIE) {
349 atomic_inc(&oprofile_stats.sample_lost_no_mapping); 349 atomic_inc(&oprofile_stats.sample_lost_no_mapping);
350 offset = rip; 350 offset = pc;
351 } 351 }
352 if (ibs_cookie != last_cookie) { 352 if (cookie != last_cookie) {
353 add_cookie_switch(ibs_cookie); 353 add_cookie_switch(cookie);
354 last_cookie = ibs_cookie; 354 last_cookie = cookie;
355 } 355 }
356 } else 356 } else
357 offset = rip; 357 offset = pc;
358 358
359 add_event_entry(ESCAPE_CODE); 359 add_event_entry(ESCAPE_CODE);
360 add_event_entry(code); 360 add_event_entry(code);