https://github.com/torvalds/linux
Revision bc4bf5f38cf0a623e6a29f52ec80bfcc56a373c6 authored by Pavel Emelyanov on 24 February 2008, 03:57:02 UTC, committed by David S. Miller on 24 February 2008, 03:57:02 UTC
The neigh_hash_grow() may update the tbl->hash_rnd value, which 
is used in all tbl->hash callbacks to calculate the hashval.

Two lookup routines may race with this, since they call the 
->hash callback without the tbl->lock held. Since the hash_rnd
is changed with this lock write-locked moving the calls to ->hash
under this lock read-locked closes this gap.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 1840bb1
History
Tip revision: bc4bf5f38cf0a623e6a29f52ec80bfcc56a373c6 authored by Pavel Emelyanov on 24 February 2008, 03:57:02 UTC
[NEIGH]: Fix race between neighbor lookup and table's hash_rnd update.
Tip revision: bc4bf5f
File Mode Size
Documentation
arch
block
crypto
drivers
fs
include
init
ipc
kernel
lib
mm
net
samples
scripts
security
sound
usr
virt
.gitignore -rw-r--r-- 636 bytes
.mailmap -rw-r--r-- 3.6 KB
COPYING -rw-r--r-- 18.3 KB
CREDITS -rw-r--r-- 90.4 KB
Kbuild -rw-r--r-- 1.6 KB
MAINTAINERS -rw-r--r-- 94.3 KB
Makefile -rw-r--r-- 52.8 KB
README -rw-r--r-- 16.5 KB
REPORTING-BUGS -rw-r--r-- 3.1 KB

README

back to top