Skip to content

Commit

Permalink
net: fix regression introduced in 2.6.32.62 by sysctl fixes
Browse files Browse the repository at this point in the history
Commits b7c9e4e ("sysctl net: Keep tcp_syn_retries inside the boundary")
and eedcafd ("net: check net.core.somaxconn sysctl values") were missing
a .strategy entry which is still required in 2.6.32. Because of this, the
Ubuntu kernel team has faced kernel dumps during their testing.

Tyler Hicks and Luis Henriques proposed this patch to fix the issue,
which properly sets .strategy as needed in 2.6.32.

Reported-by: Luis Henriques <luis.henriques@canonical.com>
Cc: tyler.hicks@canonical.com
Cc: Michal Tesar <mtesar@redhat.com>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Willy Tarreau <w@1wt.eu>
  • Loading branch information
Willy Tarreau committed Jun 18, 2014
1 parent a986d9c commit b90422d
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 2 deletions.
3 changes: 2 additions & 1 deletion net/core/sysctl_net_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,8 @@ static struct ctl_table netns_core_table[] = {
.mode = 0644,
.extra1 = &zero,
.extra2 = &ushort_max,
.proc_handler = proc_dointvec_minmax
.proc_handler = proc_dointvec_minmax,
.strategy = &sysctl_intvec
},
{ .ctl_name = 0 }
};
Expand Down
3 changes: 2 additions & 1 deletion net/ipv4/sysctl_net_ipv4.c
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,8 @@ static struct ctl_table ipv4_table[] = {
.mode = 0644,
.proc_handler = proc_dointvec_minmax,
.extra1 = &tcp_syn_retries_min,
.extra2 = &tcp_syn_retries_max
.extra2 = &tcp_syn_retries_max,
.strategy = &sysctl_intvec
},
{
.ctl_name = NET_IPV4_NONLOCAL_BIND,
Expand Down

0 comments on commit b90422d

Please sign in to comment.