public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] perf, x86: Haswell LBR call stack support
@ 2012-10-22  6:11 Yan, Zheng
  2012-10-22  6:11 ` [PATCH 1/6] perf, x86: Basic " Yan, Zheng
                   ` (5 more replies)
  0 siblings, 6 replies; 19+ messages in thread
From: Yan, Zheng @ 2012-10-22  6:11 UTC (permalink / raw)
  To: linux-kernel, a.p.zijlstra; +Cc: eranian, ak, Yan, Zheng

From: "Yan, Zheng" <zheng.z.yan@intel.com>

Haswell has a new feature that utilizes the existing Last Branch Record
facility to record call chains. When the feature is enabled, function
call will be collected as normal, but as return instructions are executed
the last captured branch record is popped from the on-chip LBR registers.
The LBR call stack facility can help perf to get call chains of progam 
without frame pointer.

The LBR call stack has following known limitations
 1. Zero length calls are not filtered out by hardware
 2. Exception handing such as setjmp/longjmp will have calls/returns not
    match
 3. Pushing different return address onto the stack will have calls/returns
    not match

The patch series depends on Andi's "perf PMU support for Haswel" patches

Regards
Yan, Zheng

^ permalink raw reply	[flat|nested] 19+ messages in thread
* [PATCH 0/6] perf, x86: Haswell LBR call stack support
@ 2012-10-22  5:57 Yan, Zheng
  2012-10-22  5:57 ` [PATCH 1/6] perf, x86: Basic " Yan, Zheng
  0 siblings, 1 reply; 19+ messages in thread
From: Yan, Zheng @ 2012-10-22  5:57 UTC (permalink / raw)
  To: linux-kernel, a.p.zijlstra; +Cc: eranian, ak, Yan, Zheng

From: "Yan, Zheng" <zheng.z.yan@intel.com>

Haswell has a new feature that utilizes the existing Last Branch Record
facility to record call chains. When the feature is enabled, function
call will be collected as normal, but as return instructions are executed
the last captured branch record is popped from the on-chip LBR registers.
The LBR call stack facility can help perf to get call chains of progam 
without frame pointer.

The LBR call stack has following known limitations
 1. Zero length calls are not filtered out by hardware
 2. Exception handing such as setjmp/longjmp will have calls/returns not
    match
 3. Pushing different return address onto the stack will have calls/returns
    not match

The patch series depends on Andi's "perf PMU support for Haswel" patches

Regards
Yan, Zheng

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2012-10-23 16:34 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-22  6:11 [PATCH 0/6] perf, x86: Haswell LBR call stack support Yan, Zheng
2012-10-22  6:11 ` [PATCH 1/6] perf, x86: Basic " Yan, Zheng
2012-10-22 10:33   ` Peter Zijlstra
2012-10-22 11:23     ` Stephane Eranian
2012-10-23  5:31       ` Yan, Zheng
2012-10-22 13:45     ` Andi Kleen
2012-10-23  5:28     ` Yan, Zheng
2012-10-22 10:35   ` Peter Zijlstra
2012-10-22 13:49     ` Andi Kleen
2012-10-23  5:41     ` Yan, Zheng
2012-10-23 10:11       ` Peter Zijlstra
2012-10-23 12:09       ` Stephane Eranian
2012-10-23 16:34       ` Andi Kleen
2012-10-22  6:11 ` [PATCH 2/6] perf, x86: Introduce x86 special perf event context Yan, Zheng
2012-10-22  6:11 ` [PATCH 3/6] perf, x86: Save/resotre LBR stack during context switch Yan, Zheng
2012-10-22  6:11 ` [PATCH 4/6] perf, core: Pass perf_sample_data to perf_callchain() Yan, Zheng
2012-10-22  6:11 ` [PATCH 5/6] perf, x86: Use LBR call stack to get user callchain Yan, Zheng
2012-10-22  6:11 ` [PATCH 6/6] perf, x86: Discard zero length call entries in LBR call stack Yan, Zheng
  -- strict thread matches above, loose matches on Subject: below --
2012-10-22  5:57 [PATCH 0/6] perf, x86: Haswell LBR call stack support Yan, Zheng
2012-10-22  5:57 ` [PATCH 1/6] perf, x86: Basic " Yan, Zheng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox