lkml.org 
[lkml]   [2018]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/5] sysctl: Enable easy addition of range showing sysctl parameters
    Date
    This patch series is to be applied on top of the patch
    series "ipc: Clamp *mni to the real IPCMNI limit"
    (https://lkml.org/lkml/2018/3/1/716).

    The purpose of this patch series is to enable easy addition of new
    auxillary sysctl parameters that can be read to display ranges of
    other sysctl parameters they are associated with.

    With this patch series applied, a developer can add a range-showing
    auxillary sysctl entries by just setting the CTL_FLAGS_SHOW_RANGE
    flag in the ctl_table entry that has a range to show and add one more
    to the number of reserved range entries in the CTL_RESERVE_RANGES()
    macro before the terminating null entry. The new auxillary sysctl
    parameters will have the "_range" suffix added.

    The number of ctl_table entries that have the CTL_FLAGS_SHOW_RANGE flag
    should match the number of reserved entries in the CTL_RESERVE_RANGES()
    macro. Otherwise, warning or error like below will be logged in the
    kernel ring buffer.

    Warning: Too many reserved ctl_table range entries ("shmmax")!

    Error: Insufficient reserved ctl_table range entries ("shmmax")!

    The IPC sysctl parameters msgmni and shmmni are extended to have
    those auxillary sysctl entries. As a result, one can now find out
    the range of allowable value by looking at the corresponding
    auxillary _range sysctl parameters. For example,

    % cat msgmni_range
    [0, 32768]

    That means the msgmni sysctl parameter has to be within the 0 - 32768
    range inclusively.

    Patch 1 clarifies how the ctl_table.flags field should be used.

    Patch 2 adds a new proc_show_minmax() handler to display a min/max
    range.

    Patch 3 defines the new CTL_FLAGS_SHOW_RANGE flag and the
    CTL_RESERVE_RANGES() macro.

    Patch 4 modifies the proc_sysctl.c file to handle the
    CTL_FLAGS_SHOW_RANGE in ctl_table registration and un-registration.

    Patch 5 extends msgmni and shmmni to have their corresponding range
    showing sysctl parameters.

    Waiman Long (5):
    sysctl: Clarify how the ctl_table.flags should be set
    sysctl: Add a new handler proc_show_minmax()
    sysctl: Add a new ctl_table flag to show min/max range
    proc/sysctl: Handle CTL_FLAGS_SHOW_RANGE ctl_table flag
    ipc: Show ranges of msgmni and shmmni with CTL_FLAGS_SHOW_RANGE

    fs/proc/proc_sysctl.c | 99 +++++++++++++++++++++++++++++++++++++++++++++++---
    include/linux/sysctl.h | 52 +++++++++++++++++++++++++-
    ipc/ipc_sysctl.c | 5 ++-
    kernel/sysctl.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++
    4 files changed, 238 insertions(+), 9 deletions(-)

    --
    1.8.3.1

    \
     
     \ /
      Last update: 2018-03-07 21:37    [W:2.845 / U:0.120 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site