2008-06-09 22:41:21

by Stephane Eranian

[permalink] [raw]
Subject: [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.

Signed-off-by: Stephane Eranian <[email protected]>
--

Index: o/arch/x86/kernel/syscall_table_32.S
===================================================================
--- o.orig/arch/x86/kernel/syscall_table_32.S 2008-06-04 11:11:06.000000000 +0200
+++ o/arch/x86/kernel/syscall_table_32.S 2008-06-04 11:33:27.000000000 +0200
@@ -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
+
Index: o/include/asm-x86/unistd_32.h
===================================================================
--- o.orig/include/asm-x86/unistd_32.h 2008-06-04 11:11:06.000000000 +0200
+++ o/include/asm-x86/unistd_32.h 2008-06-04 11:33:27.000000000 +0200
@@ -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__


--


2008-06-09 23:33:17

by Diego Calleja

[permalink] [raw]
Subject: Re: [patch 18/21] perfmon2 minimal: X86 32-bit system calls support

El Mon, 09 Jun 2008 15:34:52 -0700 (PDT), [email protected] escribió:

> + .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)?

2008-06-09 23:35:23

by David Miller

[permalink] [raw]
Subject: Re: [patch 18/21] perfmon2 minimal: X86 32-bit system calls support

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

> 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.