lkml.org 
[lkml]   [2017]   [Dec]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.18 18/38] net: Do not allow negative values for busy_read and busy_poll sysctl interfaces
    Date
    3.18-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Alexander Duyck <alexander.h.duyck@intel.com>


    [ Upstream commit 95f255211396958c718aef8c45e3923b5211ea7b ]

    This change basically codifies what I think was already the limitations on
    the busy_poll and busy_read sysctl interfaces. We weren't checking the
    lower bounds and as such could input negative values. The behavior when
    that was used was dependent on the architecture. In order to prevent any
    issues with that I am just disabling support for values less than 0 since
    this way we don't have to worry about any odd behaviors.

    By limiting the sysctl values this way it also makes it consistent with how
    we handle the SO_BUSY_POLL socket option since the value appears to be
    reported as a signed integer value and negative values are rejected.

    Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
    Acked-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    net/core/sysctl_net_core.c | 6 ++++--
    1 file changed, 4 insertions(+), 2 deletions(-)

    --- a/net/core/sysctl_net_core.c
    +++ b/net/core/sysctl_net_core.c
    @@ -331,14 +331,16 @@ static struct ctl_table net_core_table[]
    .data = &sysctl_net_busy_poll,
    .maxlen = sizeof(unsigned int),
    .mode = 0644,
    - .proc_handler = proc_dointvec
    + .proc_handler = proc_dointvec_minmax,
    + .extra1 = &zero,
    },
    {
    .procname = "busy_read",
    .data = &sysctl_net_busy_read,
    .maxlen = sizeof(unsigned int),
    .mode = 0644,
    - .proc_handler = proc_dointvec
    + .proc_handler = proc_dointvec_minmax,
    + .extra1 = &zero,
    },
    #endif
    #ifdef CONFIG_NET_SCHED

    \
     
     \ /
      Last update: 2017-12-22 12:01    [W:3.013 / U:0.064 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site