diff options
author | dg <dg@FreeBSD.org> | 1995-08-08 02:22:16 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1995-08-08 02:22:16 +0000 |
commit | ec426e40ee900c14ad77f07294fa80e86fbac38b (patch) | |
tree | a46b1817a09362cc7f59dd8c4d59ff08f4c461e8 | |
parent | ec82f9a579091959b04b68f4928f0a27e7afc1cc (diff) | |
download | FreeBSD-src-ec426e40ee900c14ad77f07294fa80e86fbac38b.zip FreeBSD-src-ec426e40ee900c14ad77f07294fa80e86fbac38b.tar.gz |
Move mbuf frees to after call to sorflush().
Submitted by: Matt Dillon
-rw-r--r-- | sys/kern/uipc_usrreq.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index a54a46a..c8fdcf4 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * From: @(#)uipc_usrreq.c 8.3 (Berkeley) 1/4/94 - * $Id: uipc_usrreq.c,v 1.8 1995/05/11 00:13:06 wollman Exp $ + * $Id: uipc_usrreq.c,v 1.9 1995/05/30 08:06:25 rgrimes Exp $ */ #include <sys/param.h> @@ -391,8 +391,6 @@ unp_detach(unp) unp_drop(unp->unp_refs, ECONNRESET); soisdisconnected(unp->unp_socket); unp->unp_socket->so_pcb = 0; - m_freem(unp->unp_addr); - (void) m_free(dtom(unp)); if (unp_rights) { /* * Normally the receive buffer is flushed later, @@ -404,6 +402,8 @@ unp_detach(unp) sorflush(unp->unp_socket); unp_gc(); } + m_freem(unp->unp_addr); + (void) m_free(dtom(unp)); } int |