On Thu, Sep 23, 2021 at 09:50:16PM +0800, Leo Yan wrote:
[...]
@@ -336,6 +480,7 @@ struct auxtrace_record *arm_spe_recording_init(int *err, sper->itr.pmu = arm_spe_pmu; sper->itr.snapshot_start = arm_spe_snapshot_start; sper->itr.snapshot_finish = arm_spe_snapshot_finish;
- sper->itr.find_snapshot = arm_spe_find_snapshot;
If I understand correctly, this patch copies the code from cs-etm for snapshot handling. About 2 months ago, we removed the Arm cs-etm's specific snapshot callback function and directly use perf's function __auxtrace_mmap__read() to handle 'head' and 'tail' pointers. Please see the commit for details: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?i...
Before I review more details for snapshot enabling in patches 03 and 04, could you confirm if Arm SPE can use the same way with cs-etm for snapshot handling? From my understanding, this is a better way to handle AUX buffer's 'head' and 'tail'.
In other words, if we can only apply patch 03 and can pass the testing in patch 05, then it would be a very neat implementation.
I will try to verify these patches and will get back result.
Thanks, Leo