lkml.org 
[lkml]   [2007]   [Jan]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 29/59] sysctl: C99 convert arch/ia64/kernel/perfmon and remove ABI breakage
    Date
    From: Eric W. Biederman <ebiederm@xmission.com> - 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@xmission.com>
    ---
    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
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-01-16 19:07    [W:0.024 / U:29.676 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site