On Thu, Jun 23, 2011 at 11:57:36PM +0900, Masao Uebayashi wrote: > I think the sodopendfree() call in sodisconnect() can be either > a) removed, or > b) moved to the very end of soclose() (after sounlock()) > > uipc_socket.c Rev. 1.63 introduced the loaning code & thorpej@ > sprinkled sodopendfree(). I see no strong reason why sodopendfree() > has to be called from sodisconnect().
Yes, this would probably work. But I find it better in the long term to have a separate thread for sodopendfree() and wake it up from the place where we enqueue mbufs in the pendfree queue (rather than hijacking existing threads which requires some code analisis to see if it's OK to take locks and sleep here ...) -- Manuel Bouyer <bou...@antioche.eu.org> NetBSD: 26 ans d'experience feront toujours la difference --