Skip to contentSkip to conversation

perfmon2 minimal: X86 32-bit system calls support

PATCH In review [email protected] 3 participants 3 messages Jun 9, 2008 x86

lore
Share & tools
lore
#0 lore raw

PATCH 18/21 perfmon2 minimal: X86 32-bit system calls support

This patchs adds the entry points for the X86 32-bit perfmon2 system calls.

--

arch/x86/kernel/syscall_table_32.S +13 -0
Index: o/arch/x86/kernel/syscall_table_32.S
===================================================================
@@ -326,3 +326,16 @@
 	.long sys_fallocate
 	.long sys_timerfd_settime	/* 325 */
 	.long sys_timerfd_gettime
+	.long sys_pfm_create_context
+	.long sys_pfm_write_pmcs
+	.long sys_pfm_write_pmds
+	.long sys_pfm_read_pmds		/* 330 */
+	.long sys_pfm_load_context
+	.long sys_pfm_start
+	.long sys_pfm_stop
+	.long sys_ni_syscall		/* reserved for pfm_restart */
+	.long sys_ni_syscall		/* 335 reserverd for pfm_create_evtsets */
+	.long sys_ni_syscall		/* reserved for pfm_getinfo_evtsets */
+	.long sys_ni_syscall		/* reserved for pfm_delete_evtsets */
+	.long sys_pfm_unload_context
+
include/asm-x86/unistd_32.h +10 -0
Index: o/include/asm-x86/unistd_32.h
===================================================================
@@ -332,6 +332,16 @@
 #define __NR_fallocate		324
 #define __NR_timerfd_settime	325
 #define __NR_timerfd_gettime	326
+#define __NR_pfm_create_context	327
+#define __NR_pfm_write_pmcs	(__NR_pfm_create_context+1)
+#define __NR_pfm_write_pmds	(__NR_pfm_create_context+2)
+#define __NR_pfm_read_pmds	(__NR_pfm_create_context+3)
+#define __NR_pfm_load_context	(__NR_pfm_create_context+4)
+#define __NR_pfm_start		(__NR_pfm_create_context+5)
+#define __NR_pfm_stop		(__NR_pfm_create_context+6)
+/* 7 to 10 reserved for future perfmon syscalls */
+#define __NR_pfm_unload_context	(__NR_pfm_create_context+11)
+
 
 #ifdef __KERNEL__
 
#1 lore raw

arch/x86/kernel/syscall_table_32.S line 340

Quoted 12 lines · El Mon, 09 Jun 2008 15:34:52 -0700 (PDT), [email protected] escribió:
arch/x86/kernel/syscall_table_32.S +12 -0
+	.long sys_pfm_create_context
+	.long sys_pfm_write_pmcs
+	.long sys_pfm_write_pmds
+	.long sys_pfm_read_pmds		/* 330 */
+	.long sys_pfm_load_context
+	.long sys_pfm_start
+	.long sys_pfm_stop
+	.long sys_ni_syscall		/* reserved for pfm_restart */
+	.long sys_ni_syscall		/* 335 reserverd for pfm_create_evtsets */
+	.long sys_ni_syscall		/* reserved for pfm_getinfo_evtsets */
+	.long sys_ni_syscall		/* reserved for pfm_delete_evtsets */
+	.long sys_pfm_unload_context

12 syscalls? O_o

I'm nobody to say if it's right or wrong...(and it probably has been already discussed) but I'm curious, why this interface and not something like ioctls (which many people doesn't like, but seems a better choice for clueless people like me)?

#2 lore raw

From: dcg <[email protected]>
Date: Tue, 10 Jun 2008 01:33:21 +0200

Quoted 4 lines

12 syscalls? O_o

I'm nobody to say if it's right or wrong...(and it probably has been already discussed) but I'm curious,

It has been discussed to death, please read the archives.