Module Name:    src
Committed By:   thorpej
Date:           Sun Mar 15 23:14:41 UTC 2020

Modified Files:
        src/sys/kern: uipc_mbuf.c
        src/sys/net: if_ethersubr.c
        src/sys/sys: mbuf.h

Log Message:
Add and use a new function, mowner_init_owner(), that initializes an
MBUFTRACE mowner structure (so that providers of it don't have to
grovel the internals).


To generate a diff of this commit:
cvs rdiff -u -r1.236 -r1.237 src/sys/kern/uipc_mbuf.c
cvs rdiff -u -r1.282 -r1.283 src/sys/net/if_ethersubr.c
cvs rdiff -u -r1.225 -r1.226 src/sys/sys/mbuf.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/uipc_mbuf.c
diff -u src/sys/kern/uipc_mbuf.c:1.236 src/sys/kern/uipc_mbuf.c:1.237
--- src/sys/kern/uipc_mbuf.c:1.236	Fri Dec  6 07:27:07 2019
+++ src/sys/kern/uipc_mbuf.c	Sun Mar 15 23:14:41 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: uipc_mbuf.c,v 1.236 2019/12/06 07:27:07 maxv Exp $	*/
+/*	$NetBSD: uipc_mbuf.c,v 1.237 2020/03/15 23:14:41 thorpej Exp $	*/
 
 /*
  * Copyright (c) 1999, 2001, 2018 The NetBSD Foundation, Inc.
@@ -62,7 +62,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uipc_mbuf.c,v 1.236 2019/12/06 07:27:07 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uipc_mbuf.c,v 1.237 2020/03/15 23:14:41 thorpej Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_mbuftrace.h"
@@ -2054,6 +2054,14 @@ nextchain:
 
 #if defined(MBUFTRACE)
 void
+mowner_init_owner(struct mowner *mo, const char *name, const char *descr)
+{
+	memset(mo, 0, sizeof(*mo));
+	strlcpy(mo->mo_name, name, sizeof(mo->mo_name));
+	strlcpy(mo->mo_descr, descr, sizeof(mo->mo_descr));
+}
+
+void
 mowner_attach(struct mowner *mo)
 {
 

Index: src/sys/net/if_ethersubr.c
diff -u src/sys/net/if_ethersubr.c:1.282 src/sys/net/if_ethersubr.c:1.283
--- src/sys/net/if_ethersubr.c:1.282	Wed Jan 29 04:11:35 2020
+++ src/sys/net/if_ethersubr.c	Sun Mar 15 23:14:41 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ethersubr.c,v 1.282 2020/01/29 04:11:35 thorpej Exp $	*/
+/*	$NetBSD: if_ethersubr.c,v 1.283 2020/03/15 23:14:41 thorpej Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ethersubr.c,v 1.282 2020/01/29 04:11:35 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ethersubr.c,v 1.283 2020/03/15 23:14:41 thorpej Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -1007,14 +1007,8 @@ ether_ifattach(struct ifnet *ifp, const 
 	ifp->if_broadcastaddr = etherbroadcastaddr;
 	bpf_attach(ifp, DLT_EN10MB, sizeof(struct ether_header));
 #ifdef MBUFTRACE
-	strlcpy(ec->ec_tx_mowner.mo_name, ifp->if_xname,
-	    sizeof(ec->ec_tx_mowner.mo_name));
-	strlcpy(ec->ec_tx_mowner.mo_descr, "tx",
-	    sizeof(ec->ec_tx_mowner.mo_descr));
-	strlcpy(ec->ec_rx_mowner.mo_name, ifp->if_xname,
-	    sizeof(ec->ec_rx_mowner.mo_name));
-	strlcpy(ec->ec_rx_mowner.mo_descr, "rx",
-	    sizeof(ec->ec_rx_mowner.mo_descr));
+	mowner_init_owner(&ec->ec_tx_mowner, ifp->if_xname, "tx");
+	mowner_init_owner(&ec->ec_rx_mowner, ifp->if_xname, "rx");
 	MOWNER_ATTACH(&ec->ec_tx_mowner);
 	MOWNER_ATTACH(&ec->ec_rx_mowner);
 	ifp->if_mowner = &ec->ec_tx_mowner;

Index: src/sys/sys/mbuf.h
diff -u src/sys/sys/mbuf.h:1.225 src/sys/sys/mbuf.h:1.226
--- src/sys/sys/mbuf.h:1.225	Thu Mar  5 15:18:55 2020
+++ src/sys/sys/mbuf.h	Sun Mar 15 23:14:41 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: mbuf.h,v 1.225 2020/03/05 15:18:55 riastradh Exp $	*/
+/*	$NetBSD: mbuf.h,v 1.226 2020/03/15 23:14:41 thorpej Exp $	*/
 
 /*
  * Copyright (c) 1996, 1997, 1999, 2001, 2007 The NetBSD Foundation, Inc.
@@ -412,6 +412,7 @@ extern const char * const mbuftypes[];
 
 #ifdef MBUFTRACE
 /* Mbuf allocation tracing. */
+void mowner_init_owner(struct mowner *, const char *, const char *);
 void mowner_init(struct mbuf *, int);
 void mowner_ref(struct mbuf *, int);
 void m_claim(struct mbuf *, struct mowner *);
@@ -420,6 +421,7 @@ void mowner_attach(struct mowner *);
 void mowner_detach(struct mowner *);
 void m_claimm(struct mbuf *, struct mowner *);
 #else
+#define mowner_init_owner(mo, n, d)	__nothing
 #define mowner_init(m, type)		__nothing
 #define mowner_ref(m, flags)		__nothing
 #define mowner_revoke(m, all, flags)	__nothing

Reply via email to