summaryrefslogtreecommitdiffstats
path: root/net/ipv4/ipvs/ip_vs_ftp.c
diff options
context:
space:
mode:
authorPavel Emelyanov2007-12-04 09:45:06 +0100
committerDavid S. Miller2007-12-05 14:37:27 +0100
commit4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9 (patch)
treee8ff9d5a9bbe01c68a95f71f1707cc24afa770d1 /net/ipv4/ipvs/ip_vs_ftp.c
parent[IPVS]: Don't leak sysctl tables if the scheduler registration fails. (diff)
downloadkernel-qcow2-linux-4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9.tar.gz
kernel-qcow2-linux-4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9.tar.xz
kernel-qcow2-linux-4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9.zip
[IPVS]: Fix sched registration race when checking for name collision.
The register_ip_vs_scheduler() checks for the scheduler with the same name under the read-locked __ip_vs_sched_lock, then drops, takes it for writing and puts the scheduler in list. This is racy, since we can have a race window between the lock being re-locked for writing. The fix is to search the scheduler with the given name right under the write-locked __ip_vs_sched_lock. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Acked-by: Simon Horman <horms@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/ipvs/ip_vs_ftp.c')
0 files changed, 0 insertions, 0 deletions