From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933657AbeAXLwO (ORCPT ); Wed, 24 Jan 2018 06:52:14 -0500 Received: from mx1.redhat.com ([209.132.183.28]:44786 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933617AbeAXLwK (ORCPT ); Wed, 24 Jan 2018 06:52:10 -0500 From: Jiri Olsa To: Peter Zijlstra , Ingo Molnar Cc: lkml , Namhyung Kim , David Ahern , Andi Kleen , Alexander Shishkin , Andy Lutomirski , Arnaldo Carvalho de Melo Subject: [PATCH 10/21] perf tools: Sync perf_event.h uapi header Date: Wed, 24 Jan 2018 12:51:32 +0100 Message-Id: <20180124115143.14322-11-jolsa@kernel.org> In-Reply-To: <20180124115143.14322-1-jolsa@kernel.org> References: <20180124115143.14322-1-jolsa@kernel.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Syncing perf_event.h uapi header with user data changes. Link: http://lkml.kernel.org/n/tip-hoayrwj8xl8a8oy54m0fhdyo@git.kernel.org Signed-off-by: Jiri Olsa --- tools/include/uapi/linux/perf_event.h | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/tools/include/uapi/linux/perf_event.h b/tools/include/uapi/linux/perf_event.h index dea5e9c32e8a..d30583411f97 100644 --- a/tools/include/uapi/linux/perf_event.h +++ b/tools/include/uapi/linux/perf_event.h @@ -371,7 +371,8 @@ struct perf_event_attr { context_switch : 1, /* context switch data */ write_backward : 1, /* Write ring buffer from end to beginning */ namespaces : 1, /* include namespaces data */ - __reserved_1 : 35; + user_data : 1, /* generate user data */ + __reserved_1 : 34; union { __u32 wakeup_events; /* wakeup every n events */ @@ -619,10 +620,12 @@ struct perf_event_mmap_page { * PERF_RECORD_MISC_MMAP_DATA - PERF_RECORD_MMAP* events * PERF_RECORD_MISC_COMM_EXEC - PERF_RECORD_COMM event * PERF_RECORD_MISC_SWITCH_OUT - PERF_RECORD_SWITCH* events + * PERF_RECORD_MISC_USER_DATA - PERF_RECORD_SAMPLE event */ #define PERF_RECORD_MISC_MMAP_DATA (1 << 13) #define PERF_RECORD_MISC_COMM_EXEC (1 << 13) #define PERF_RECORD_MISC_SWITCH_OUT (1 << 13) +#define PERF_RECORD_MISC_USER_DATA (1 << 13) /* * Indicates that the content of PERF_SAMPLE_IP points to * the actual instruction that triggered the event. See also @@ -821,6 +824,7 @@ enum perf_event_type { * { u64 abi; # enum perf_sample_regs_abi * u64 regs[weight(mask)]; } && PERF_SAMPLE_REGS_INTR * { u64 phys_addr;} && PERF_SAMPLE_PHYS_ADDR + * { u64 user_data_id;} && PERF_SAMPLE_USER_DATA_ID * }; */ PERF_RECORD_SAMPLE = 9, @@ -923,6 +927,31 @@ enum perf_event_type { */ PERF_RECORD_NAMESPACES = 16, + /* + * Records the user space data for previous + * kernel samples. + * + * struct { + * struct perf_event_header header; + * u64 sample_type; + * + * # The sample_type value could contain following + * # PERF_SAMPLE_* bits: + * # + * # PERF_SAMPLE_USER_DATA_ID + * # PERF_SAMPLE_CALLCHAIN + * # + * # and governs the data portion: + * + * { u64 nr, + * u64 ips[nr];} && PERF_SAMPLE_CALLCHAIN + * { u64 user_data_id;} && PERF_SAMPLE_USER_DATA_ID + * + * struct sample_id sample_id; + * }; + */ + PERF_RECORD_USER_DATA = 17, + PERF_RECORD_MAX, /* non-ABI */ }; -- 2.13.6