Date: Fri, 29 Mar 2013 13:57:55 +0000 (UTC) From: Gleb Smirnoff <glebius@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r248884 - head/sys/kern Message-ID: <201303291357.r2TDvtmh006798@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: glebius Date: Fri Mar 29 13:57:55 2013 New Revision: 248884 URL: http://svnweb.freebsd.org/changeset/base/248884 Log: When soreceive_generic() hands off an mbuf from buffer, clear its pointer to next record, since next record belongs to the buffer, and shouldn't be leaked. The ng_ksocket(4) used to clear this pointer itself, but the correct place is here. Sponsored by: Nginx, Inc Modified: head/sys/kern/uipc_socket.c Modified: head/sys/kern/uipc_socket.c ============================================================================== --- head/sys/kern/uipc_socket.c Fri Mar 29 13:53:14 2013 (r248883) +++ head/sys/kern/uipc_socket.c Fri Mar 29 13:57:55 2013 (r248884) @@ -1860,6 +1860,7 @@ dontblock: nextrecord = m->m_nextpkt; sbfree(&so->so_rcv, m); if (mp != NULL) { + m->m_nextpkt = NULL; *mp = m; mp = &m->m_next; so->so_rcv.sb_mb = m = m->m_next;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303291357.r2TDvtmh006798>