diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2007-12-04 00:45:06 -0800 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-12-05 05:37:27 -0800 |
commit | 4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9 (patch) | |
tree | e8ff9d5a9bbe01c68a95f71f1707cc24afa770d1 /net/ipv4/datagram.c | |
parent | a014bc8f0f0a3a0cac4fef656f101cdfb77b71eb (diff) | |
download | linux-4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9.tar.gz linux-4ac63ad6c52e9cdefbcb54ec4575ab12b78b49d9.tar.bz2 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/datagram.c')
0 files changed, 0 insertions, 0 deletions