xfs-masters
[Top] [All Lists]

[xfs-masters] [PATCH 29/59] sysctl: C99 convert arch/ia64/kernel/perfmon

To: "<Andrew Morton" <akpm@xxxxxxxx>
Subject: [xfs-masters] [PATCH 29/59] sysctl: C99 convert arch/ia64/kernel/perfmon and remove ABI breakage
From: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
Date: Tue, 16 Jan 2007 09:39:34 -0700
Cc: <linux-kernel@xxxxxxxxxxxxxxx>, <containers@xxxxxxxxxxxxxx>, <netdev@xxxxxxxxxxxxxxx>, xfs-masters@xxxxxxxxxxx, xfs@xxxxxxxxxxx, linux-scsi@xxxxxxxxxxxxxxx, James.Bottomley@xxxxxxxxxxxx, minyard@xxxxxxx, openipmi-developer@xxxxxxxxxxxxxxxxxxxxx, <tony.luck@xxxxxxxxx>, linux-mips@xxxxxxxxxxxxxx, ralf@xxxxxxxxxxxxxx, schwidefsky@xxxxxxxxxx, heiko.carstens@xxxxxxxxxx, linux390@xxxxxxxxxx, linux-390@xxxxxxxxxxxxx, paulus@xxxxxxxxx, linuxppc-dev@xxxxxxxxxx, lethal@xxxxxxxxxxxx, linuxsh-shmedia-dev@xxxxxxxxxxxxxxxxxxxxx, <ak@xxxxxxx>, vojtech@xxxxxxx, clemens@xxxxxxxxxx, a.zummo@xxxxxxxxxxxx, rtc-linux@xxxxxxxxxxxxxxxx, linux-parport@xxxxxxxxxxxxxxxxxxx, andrea@xxxxxxx, tim@xxxxxxxxxxxx, philb@xxxxxxx, aharkes@xxxxxxxxxx, coda@xxxxxxxxxx, codalist@xxxxxxxxxxxxxxxxxxxxxxxx, aia21@xxxxxxxxxx, linux-ntfs-dev@xxxxxxxxxxxxxxxxxxxxx, mark.fasheh@xxxxxxxxxx, kurt.hackel@xxxxxxxxxx, "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
In-reply-to: <m1ac0jc4no.fsf@xxxxxxxxxxxxxxxxxxxxxxxxx>
References: <m1ac0jc4no.fsf@xxxxxxxxxxxxxxxxxxxxxxxxx>
Reply-to: xfs-masters@xxxxxxxxxxx
Sender: xfs-masters-bounce@xxxxxxxxxxx
From: Eric W. Biederman <ebiederm@xxxxxxxxxxxx> - unquoted

This convers the sysctl ctl_tables to use C99 initializers.
While I was looking at it I discovered it was using a portion of
the sysctl binary addresses space under CTL_KERN KERN_OSTYPE
which was completely inappropriate.  So I completely removed
all of the sysctl binary names, to remove and avoid the ABI conflict.

Signed-off-by: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
---
 arch/ia64/kernel/perfmon.c |   56 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 47 insertions(+), 9 deletions(-)

diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c
index aa94f60..8c679ab 100644
--- a/arch/ia64/kernel/perfmon.c
+++ b/arch/ia64/kernel/perfmon.c
@@ -521,19 +521,57 @@ pfm_sysctl_t pfm_sysctl;
 EXPORT_SYMBOL(pfm_sysctl);
 
 static ctl_table pfm_ctl_table[]={
-       {1, "debug", &pfm_sysctl.debug, sizeof(int), 0666, NULL, 
&proc_dointvec, NULL,},
-       {2, "debug_ovfl", &pfm_sysctl.debug_ovfl, sizeof(int), 0666, NULL, 
&proc_dointvec, NULL,},
-       {3, "fastctxsw", &pfm_sysctl.fastctxsw, sizeof(int), 0600, NULL, 
&proc_dointvec, NULL,},
-       {4, "expert_mode", &pfm_sysctl.expert_mode, sizeof(int), 0600, NULL, 
&proc_dointvec, NULL,},
-       { 0, },
+       {
+               .ctl_name       = CTL_UNNUMBERED,
+               .procname       = "debug",
+               .data           = &pfm_sysctl.debug,
+               .maxlen         = sizeof(int),
+               .mode           = 0666,
+               .proc_handler   = &proc_dointvec,
+       },
+       {
+               .ctl_name       = CTL_UNNUMBERED,
+               .procname       = "debug_ovfl",
+               .data           = &pfm_sysctl.debug_ovfl,
+               .maxlen         = sizeof(int),
+               .mode           = 0666,
+               .proc_handler   = &proc_dointvec,
+       },
+       {
+               .ctl_name       = CTL_UNNUMBERED,
+               .procname       = "fastctxsw",
+               .data           = &pfm_sysctl.fastctxsw,
+               .maxlen         = sizeof(int),
+               .mode           = 0600,
+               .proc_handler   =  &proc_dointvec,
+       },
+       {
+               .ctl_name       = CTL_UNNUMBERED,
+               .procname       = "expert_mode",
+               .data           = &pfm_sysctl.expert_mode,
+               .maxlen         = sizeof(int),
+               .mode           = 0600,
+               .proc_handler   = &proc_dointvec,
+       },
+       {}
 };
 static ctl_table pfm_sysctl_dir[] = {
-       {1, "perfmon", NULL, 0, 0755, pfm_ctl_table, },
-       {0,},
+       {
+               .ctl_name       = CTL_UNNUMBERED,
+               .procname       = "perfmon",
+               .mode           = 0755,
+               .child          = pfm_ctl_table,
+       },
+       {}
 };
 static ctl_table pfm_sysctl_root[] = {
-       {1, "kernel", NULL, 0, 0755, pfm_sysctl_dir, },
-       {0,},
+       {
+               .ctl_name       = CTL_KERN,
+               .procname       = "kernel",
+               .mode           = 0755,
+               .child          = pfm_sysctl_dir,
+       },
+       {}
 };
 static struct ctl_table_header *pfm_sysctl_header;
 
-- 
1.4.4.1.g278f


<Prev in Thread] Current Thread [Next in Thread>