aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/syscalls.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-12-10 06:33:23 -0500
committerIngo Molnar <mingo@elte.hu>2008-12-11 09:45:48 -0500
commit9f66a3810fe0d4100972db84290f3ae4a4d77025 (patch)
tree2101d0d14aecf9d3e406544711e7336e3ea6b3af /include/linux/syscalls.h
parentdfa7c899b401d7dc5d85aca416aee64ac82812f2 (diff)
perf counters: restructure the API
Impact: clean up new API Thorough cleanup of the new perf counters API, we now get clean separation of the various concepts: - introduce perf_counter_hw_event to separate out the event source details - move special type flags into separate attributes: PERF_COUNT_NMI, PERF_COUNT_RAW - extend the type to u64 and reserve it fully to the architecture in the raw type case. And make use of all these changes in the core and x86 perfcounters code. Also change the syscall signature to: asmlinkage int sys_perf_counter_open( struct perf_counter_hw_event *hw_event_uptr __user, pid_t pid, int cpu, int group_fd); ( Note that group_fd is unused for now - it's reserved for the counter groups abstraction. ) Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/syscalls.h')
-rw-r--r--include/linux/syscalls.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 3ecd73d03daa..a549678b7c3c 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -54,7 +54,7 @@ struct compat_stat;
54struct compat_timeval; 54struct compat_timeval;
55struct robust_list_head; 55struct robust_list_head;
56struct getcpu_cache; 56struct getcpu_cache;
57struct perf_counter_event; 57struct perf_counter_hw_event;
58 58
59#include <linux/types.h> 59#include <linux/types.h>
60#include <linux/aio_abi.h> 60#include <linux/aio_abi.h>
@@ -625,7 +625,11 @@ asmlinkage long sys_fallocate(int fd, int mode, loff_t offset, loff_t len);
625 625
626int kernel_execve(const char *filename, char *const argv[], char *const envp[]); 626int kernel_execve(const char *filename, char *const argv[], char *const envp[]);
627 627
628asmlinkage int 628
629sys_perf_counter_open(struct perf_counter_event __user *uevent, u32 record_type, 629asmlinkage int sys_perf_counter_open(
630 pid_t pid, int cpu, int masterfd); 630
631 struct perf_counter_hw_event *hw_event_uptr __user,
632 pid_t pid,
633 int cpu,
634 int group_fd);
631#endif 635#endif