diff --git a/sys/kern/kern_mbuf.c b/sys/kern/kern_mbuf.c index f3eff06c49b1..1ea8e9dd3a07 100644 --- a/sys/kern/kern_mbuf.c +++ b/sys/kern/kern_mbuf.c @@ -747,7 +747,7 @@ m_cljget(struct mbuf *m, int how, int size) { uma_zone_t zone; void *retval; - + if (m != NULL) { KASSERT((m->m_flags & M_EXT) == 0, ("%s: mbuf %p has M_EXT", __func__, m)); @@ -939,8 +939,8 @@ m_extadd(struct mbuf *mb, caddr_t buf, u_int size, void m_freem(struct mbuf *mb) { - MBUF_PROBE1(m__freem, mb); + MBUF_PROBE1(m__freem, mb); while (mb != NULL) mb = m_free(mb); } diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h index 1df3e1087ae0..4a48d4721863 100644 --- a/sys/sys/mbuf.h +++ b/sys/sys/mbuf.h @@ -51,11 +51,11 @@ SDT_PROBE1(sdt, , , probe, arg0) #define MBUF_PROBE2(probe, arg0, arg1) \ SDT_PROBE2(sdt, , , probe, arg0, arg1) -#define MBUF_PROBE3(probe, arg0, arg1, arg2) \ +#define MBUF_PROBE3(probe, arg0, arg1, arg2) \ SDT_PROBE3(sdt, , , probe, arg0, arg1, arg2) -#define MBUF_PROBE4(probe, arg0, arg1, arg2, arg3) \ +#define MBUF_PROBE4(probe, arg0, arg1, arg2, arg3) \ SDT_PROBE4(sdt, , , probe, arg0, arg1, arg2, arg3) -#define MBUF_PROBE5(probe, arg0, arg1, arg2, arg3, arg4) \ +#define MBUF_PROBE5(probe, arg0, arg1, arg2, arg3, arg4) \ SDT_PROBE5(sdt, , , probe, arg0, arg1, arg2, arg3, arg4) SDT_PROBE_DECLARE(sdt, , , m__init); @@ -690,7 +690,7 @@ m_getzone(int size) static __inline int m_init(struct mbuf *m, int how, short type, int flags) { - int error = 0; + int error; m->m_next = NULL; m->m_nextpkt = NULL; @@ -700,6 +700,8 @@ m_init(struct mbuf *m, int how, short type, int flags) m->m_type = type; if (flags & M_PKTHDR) error = m_pkthdr_init(m, how); + else + error = 0; MBUF_PROBE5(m__init, m, how, type, flags, error); return (error);