I found the mbuf leak. It was introduced in a commit I made in April
which allowed control and address data to be thrown away on insufficient
socket buffer space. The wrong error code was being returned and
preventing the mbuf from being freed.
The mbuf leak occurs most often when a large amount of information is
sent to syslog, such as by a mail or web server subsystem.
This bug is pretty serious and will require 1.10.1 to be rolled this
weekend. The 1.10 slip tag has already been updated so release
users can get the change now from the main site (or tomorrow from the
mirrors). HEAD's slip tag has not yet been updated because of some
issues in HEAD at the moment.
The commits to HEAD are:
http://www.dragonflybsd.org/cvsweb/src/sys/sys/socketvar.h.diff?r1=1.28&r2=1.29&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/uipc_usrreq.c.diff?r1=1.34&r2=1.35&f=u
The commits to RELEASE are:
http://www.dragonflybsd.org/cvsweb/src/sys/sys/socketvar.h.diff?r1=1.28&r2=1.28.2.1&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/uipc_usrreq.c.diff?r1=1.34&r2=1.34.2.1&f=u
-Matt
Matthew Dillon
<[EMAIL PROTECTED]>