Patch "ipv4: use the right lock for ping_group_range" has been added to the 4.8-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
ipv4: use the right lock for ping_group_range
to the 4.8-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
ipv4-use-the-right-lock-for-ping_group_range.patch
and it can be found in the queue-4.8 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Thu Nov 10 16:43:03 CET 2016
From: WANG Cong <[email protected]>
Date: Thu, 20 Oct 2016 14:19:46 -0700
Subject: ipv4: use the right lock for ping_group_range
From: WANG Cong <[email protected]>
[ Upstream commit 396a30cce15d084b2b1a395aa6d515c3d559c674 ]
This reverts commit a681574c99be23e4d20b769bf0e543239c364af5 ("ipv4: disable BH in set_ping_group_range()") because we never read ping_group_range in BH context (unlike local_port_range).
Then, since we already have a lock for ping_group_range, those using ip_local_ports.lock for ping_group_range are clearly typos.
We might consider to share a same lock for both ping_group_range and local_port_range w.r.t. space saving, but that should be for net-next.
--- net/ipv4/sysctl_net_ipv4.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
net/ipv4/sysctl_net_ipv4.c +4 -4
@@ -96,11 +96,11 @@ static void inet_get_ping_group_range_ta container_of(table->data, struct net, ipv4.ping_group_range.range);unsigned int seq;do { - seq =read_seqbegin (&net->ipv4.ip_local_ports.lock); + seq =read_seqbegin (&net->ipv4.ping_group_range.lock); *low = data[0 ]; *high = data[1 ]; - }while (read_seqretry (&net->ipv4.ip_local_ports.lock, seq)); + }while (read_seqretry (&net->ipv4.ping_group_range.lock, seq)); }/* Update system visible IP port range */
@@ -109,10 +109,10 @@ static void set_ping_group_range(structkgid_t *data = table->data;struct net *net = container_of(table->data, struct net, ipv4.ping_group_range.range); -write_seqlock_bh (&net->ipv4.ip_local_ports.lock); +write_seqlock (&net->ipv4.ping_group_range.lock); data[0 ] = low; data[1 ] = high; -write_sequnlock_bh (&net->ipv4.ip_local_ports.lock); +write_sequnlock (&net->ipv4.ping_group_range.lock); }/* Validate changes from /proc interface. */
Patches currently in stable-queue which might be from [email protected] are
queue-4.8/net_sched-reorder-pernet-ops-and-act-ops-registrations.patch queue-4.8/net-sched-filters-fix-notification-of-filter-delete-with-proper-handle.patch queue-4.8/ipv4-use-the-right-lock-for-ping_group_range.patch