Manuel Bouyer <bou...@antioche.eu.org> wrote: > @@ -3343,12 +3342,7 @@ syn_cache_put(struct syn_cache *sc) > if (sc->sc_ipopts) > (void) m_free(sc->sc_ipopts); > rtcache_free(&sc->sc_route); > - if (callout_invoking(&sc->sc_timer)) > - sc->sc_flags |= SCF_DEAD; > - else { > - callout_destroy(&sc->sc_timer); > - pool_put(&syn_cache_pool, sc); > - } > + sc->sc_flags |= SCF_DEAD; > }
To answer your previous question - yes, that is what I meant, plus other amendments you have already made. Note: it might also be useful to manually trigger callout in syn_cache_put() to speed-up the destruction. -- Mindaugas