Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys



Module Name:    src
Committed By:   ozaki-r
Date:           Tue Nov 15 01:50:06 UTC 2016

Modified Files:
        src/sys/net: if.c radix.c radix.h route.c route.h rtbl.c
        src/sys/netinet6: nd6_rtr.c
        src/sys/nfs: nfs_boot.c

Log Message:
Don't use rt_walktree to delete routes

Some functions use rt_walktree to scan the routing table and delete
matched routes. However, we shouldn't use rt_walktree to delete
routes because rt_walktree is recursive to the routing table (radix
tree) and isn't friendly to MP-ification. rt_walktree allows a caller
to pass a callback function to delete an matched entry. The callback
function is called from an API of the radix tree (rn_walktree) but
also calls an API of the radix tree to delete an entry.

This change adds a new API of the radix tree, rn_search_matched,
which returns a matched entry that is selected by a callback
function passed by a caller and the caller itself deletes the
entry. By using the API, we can avoid the recursive form.


To generate a diff of this commit:
cvs rdiff -u -r1.361 -r1.362 src/sys/net/if.c
cvs rdiff -u -r1.45 -r1.46 src/sys/net/radix.c
cvs rdiff -u -r1.22 -r1.23 src/sys/net/radix.h
cvs rdiff -u -r1.181 -r1.182 src/sys/net/route.c
cvs rdiff -u -r1.106 -r1.107 src/sys/net/route.h
cvs rdiff -u -r1.3 -r1.4 src/sys/net/rtbl.c
cvs rdiff -u -r1.119 -r1.120 src/sys/netinet6/nd6_rtr.c
cvs rdiff -u -r1.86 -r1.87 src/sys/nfs/nfs_boot.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index