Date: Sat, 09 Apr 2016 13:22:19 -0700 From: John Baldwin <jhb@freebsd.org> To: "Bjoern A. Zeeb" <bz@freebsd.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r297742 - head/sys/netinet Message-ID: <3095089.J0o1iEDduN@ralph.baldwin.cx> In-Reply-To: <alpine.BSF.2.00.1604091824530.83904@ai.fobar.qr> References: <201604091205.u39C5Oks041429@repo.freebsd.org> <5630207.6cr5Ycyqbh@ralph.baldwin.cx> <alpine.BSF.2.00.1604091824530.83904@ai.fobar.qr>
next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday, April 09, 2016 06:31:24 PM Bjoern A. Zeeb wrote: > On Sat, 9 Apr 2016, John Baldwin wrote: > > trash user data. In the rest of the tree, we tend to prefer marking items > > as NOFREE instead of this approach putting a priority on stability and > > reliability over memory efficiency. > > > > For all of the zones that you removed NOFREE from, do you know why that was > > added in the first place (e.g. which stale pointers to pcbs could be > > referenced after free)? Did you verify that those conditions have been > > fixed? > > I did check. I did check a few years ago (and I think you had > reviewed that; maybe it was trouble). And the TCP bits here were > the last ones that were problematic back then. With the changes from > r281599 this should no longer be a problem. > > As for the others, a few years ago Andre already removed the NOFREE > and we unconditionally made him back the change out, which was a > mistake as otherwise some of these zones would have been "clean" for > years. Others have had KASSERTs ensuring that on VNET stack they were > actually empty. Ok. I believe one of the old ones fixed long ago were the pcb sysctls. I couldn't recall any other cases that required NOFREE. The network stack is often fairly loose with references especially those that add per-packet overhead (at least historically, the ifnet reference in m_pkthdr is one of the "big" remaining issues IIRC), so I sort of assume it still needs NOFREE as a general rule. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3095089.J0o1iEDduN>