perfmon: generic x86 definitions (x86)
PATCH 6/24 perfmon: generic x86 definitions (x86)
This patch adds definitions for the perfmon interrupt vector and thread info flags. It is common to i386 and x86_64 code.
Signed-off-by Stephane Eranian <[email protected]>
--
arch/x86/include/asm/irq_vectors.h +5 -0
@@ -87,6 +87,11 @@#define LOCAL_TIMER_VECTOR 0xef/* +* Perfmon PMU interrupt vector +*/ +#define LOCAL_PERFMON_VECTOR 0xee + +/* * First APIC vector available to drivers: (vectors 0x30-0xee) we * start at 0x31(0x41) to spread out vectors evenly between priority * levels. (0x80 is the syscall vector)
arch/x86/include/asm/thread_info.h +6 -2
@@ -79,6 +79,7 @@#define TIF_SYSCALL_EMU 6/* syscall emulation active */ #define TIF_SYSCALL_AUDIT 7/* syscall auditing active */ #define TIF_SECCOMP 8/* secure computing */ +#define TIF_PERFMON_WORK 9/* work for pfm_handle_work() */ #define TIF_MCE_NOTIFY 10/* notify userspace of an MCE */ #define TIF_NOTSC 16/* TSC is not accessible in userland */ #define TIF_IA32 17/* 32bit process */
@@ -92,6 +93,7 @@#define TIF_DEBUGCTLMSR 25/* uses thread_struct.debugctlmsr */ #define TIF_DS_AREA_MSR 26/* uses thread_struct.ds_area_msr */ #define TIF_BTS_TRACE_TS 27/* record scheduling event timestamps */ +#define TIF_PERFMON_CTXSW 28/* perfmon needs ctxsw calls */ #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)#define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
@@ -114,6 +116,8 @@#define _TIF_DEBUGCTLMSR (1 << TIF_DEBUGCTLMSR)#define _TIF_DS_AREA_MSR (1 << TIF_DS_AREA_MSR)#define _TIF_BTS_TRACE_TS (1 << TIF_BTS_TRACE_TS) +#define _TIF_PERFMON_WORK (1<<TIF_PERFMON_WORK) +#define _TIF_PERFMON_CTXSW (1<<TIF_PERFMON_CTXSW)/* work to do in syscall_trace_enter() */ #define _TIF_WORK_SYSCALL_ENTRY \
@@ -135,12 +139,12 @@/* Only used for 64 bit */ #define _TIF_DO_NOTIFY_MASK \ - (_TIF_SIGPENDING|_TIF_MCE_NOTIFY|_TIF_NOTIFY_RESUME) + (_TIF_SIGPENDING|_TIF_MCE_NOTIFY|_TIF_PERFMON_WORK)/* flags to check in __switch_to() */ #define _TIF_WORK_CTXSW \ (_TIF_IO_BITMAP|_TIF_DEBUGCTLMSR|_TIF_DS_AREA_MSR|_TIF_BTS_TRACE_TS| \ - _TIF_NOTSC) + _TIF_NOTSC|_TIF_PERFMON_CTXSW)#define _TIF_WORK_CTXSW_PREV _TIF_WORK_CTXSW#define _TIF_WORK_CTXSW_NEXT (_TIF_WORK_CTXSW|_TIF_DEBUG)