CVSROOT: /cvs Module name: src Changes by: d...@cvs.openbsd.org 2025/07/15 03:55:49
Modified files: sys/sys : sysctl.h sys/net : rtable.c rtable.h rtsock.c Log message: add rtable_read(), a "reader" variant of rtable_walk. rtable_read doesn't give up the rtable lock when calling the rtentry handler, and consequently doesnt need to mess around with rtentry refs. rtable_walk is often used to update or delete routes. when i moved art from srp to smr i also made rtable_walk properly account for the rtentry references when it gives up the rtable lock. this in turn meant that the routing table dump sysctl reported extra rtentry refs than it used to. dumping the routing table doesn't change the shape of the routing table, so we don't have to give up the rtable lock for it's callback. the rt ref damage was pointed out by bluhm (which i didnt absorb somehow) and later anton. discussed with, tested by, and ok anton@ claudio@ bluhm@