Question about locking in ndisc.c

From: Paul Marks <hidden>
Date: 2012-12-04 20:52:29

I've been reading through net/ipv6/ndisc.c recently (trying to
determine if it'd be feasible to implement RFC6724 Rule 5.5), and I'm
confused by the lack of visible locking in the
ndisc_router_discovery() function.

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=net/ipv6/ndisc.c;h=2edce30ef7338cdf1916eef98b353c7dbbc7bcda;hb=HEAD#l1048

There are values written all over the place, for example:
- in6_dev->if_flags
- neigh->flags
- rt->rt6i_flags
- in6_dev->nd_parms->...
- in6_dev->tstamp

But I've looked through ndisc.c and icmp.c, and I can't find anything
that would protect this data from concurrent access.  Is there
something I'm missing?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help