Hello -
Regenerated diff against -current.
Index: netinet6/frag6.c
===================================================================
RCS file: /cvs/src/sys/netinet6/frag6.c,v
retrieving revision 1.67
diff -u -p -r1.67 frag6.c
--- netinet6/frag6.c 7 Mar 2016 18:44:00 -0000 1.67
+++ netinet6/frag6.c 19 Aug 2016 12:46:40 -0000
@@ -303,7 +303,7 @@ frag6_input(struct mbuf **mp, int *offp,
/* dequeue the fragment. */
LIST_REMOVE(af6, ip6af_list);
- free(af6, M_FTABLE, 0);
+ free(af6, M_FTABLE, sizeof(*af6));
/* adjust pointer. */
ip6err = mtod(merr, struct ip6_hdr *);
@@ -348,14 +348,14 @@ frag6_input(struct mbuf **mp, int *offp,
ecn0 = (ntohl(af6->ip6af_flow) >> 20) & IPTOS_ECN_MASK;
if (ecn == IPTOS_ECN_CE) {
if (ecn0 == IPTOS_ECN_NOTECT) {
- free(ip6af, M_FTABLE, 0);
+ free(ip6af, M_FTABLE, sizeof(*ip6af));
goto dropfrag;
}
if (ecn0 != IPTOS_ECN_CE)
af6->ip6af_flow |= htonl(IPTOS_ECN_CE << 20);
}
if (ecn == IPTOS_ECN_NOTECT && ecn0 != IPTOS_ECN_NOTECT) {
- free(ip6af, M_FTABLE, 0);
+ free(ip6af, M_FTABLE, sizeof(*ip6af));
goto dropfrag;
}
@@ -384,7 +384,7 @@ frag6_input(struct mbuf **mp, int *offp,
i,
inet_ntop(AF_INET6, &q6->ip6q_src, ip, sizeof(ip)));
#endif
- free(ip6af, M_FTABLE, 0);
+ free(ip6af, M_FTABLE, sizeof(*ip6af));
goto flushfrags;
}
}
@@ -398,7 +398,7 @@ frag6_input(struct mbuf **mp, int *offp,
i,
inet_ntop(AF_INET6, &q6->ip6q_src, ip, sizeof(ip)));
#endif
- free(ip6af, M_FTABLE, 0);
+ free(ip6af, M_FTABLE, sizeof(*ip6af));
goto flushfrags;
}
}
@@ -449,12 +449,12 @@ frag6_input(struct mbuf **mp, int *offp,
t = t->m_next;
t->m_next = IP6_REASS_MBUF(af6);
m_adj(t->m_next, af6->ip6af_offset);
- free(af6, M_FTABLE, 0);
+ free(af6, M_FTABLE, sizeof(*af6));
}
/* adjust offset to point where the original next header starts */
offset = ip6af->ip6af_offset - sizeof(struct ip6_frag);
- free(ip6af, M_FTABLE, 0);
+ free(ip6af, M_FTABLE, sizeof(*ip6af));
ip6 = mtod(m, struct ip6_hdr *);
ip6->ip6_plen = htons((u_short)next + offset - sizeof(struct ip6_hdr));
ip6->ip6_src = q6->ip6q_src;
@@ -465,7 +465,7 @@ frag6_input(struct mbuf **mp, int *offp,
if (frag6_deletefraghdr(m, offset) != 0) {
TAILQ_REMOVE(&frag6_queue, q6, ip6q_queue);
frag6_nfrags -= q6->ip6q_nfrag;
- free(q6, M_FTABLE, 0);
+ free(q6, M_FTABLE, sizeof(*q6));
frag6_nfragpackets--;
goto dropfrag;
}
@@ -480,7 +480,7 @@ frag6_input(struct mbuf **mp, int *offp,
TAILQ_REMOVE(&frag6_queue, q6, ip6q_queue);
frag6_nfrags -= q6->ip6q_nfrag;
- free(q6, M_FTABLE, 0);
+ free(q6, M_FTABLE, sizeof(*q6));
frag6_nfragpackets--;
if (m->m_flags & M_PKTHDR) { /* Isn't it always true? */
@@ -506,12 +506,12 @@ frag6_input(struct mbuf **mp, int *offp,
while ((af6 = LIST_FIRST(&q6->ip6q_asfrag)) != NULL) {
LIST_REMOVE(af6, ip6af_list);
m_freem(IP6_REASS_MBUF(af6));
- free(af6, M_FTABLE, 0);
+ free(af6, M_FTABLE, sizeof(*af6));
}
ip6stat.ip6s_fragdropped += q6->ip6q_nfrag;
TAILQ_REMOVE(&frag6_queue, q6, ip6q_queue);
frag6_nfrags -= q6->ip6q_nfrag;
- free(q6, M_FTABLE, 0);
+ free(q6, M_FTABLE, sizeof(*q6));
frag6_nfragpackets--;
dropfrag:
@@ -579,11 +579,11 @@ frag6_freef(struct ip6q *q6)
ICMP6_TIME_EXCEED_REASSEMBLY, 0);
} else
m_freem(m);
- free(af6, M_FTABLE, 0);
+ free(af6, M_FTABLE, sizeof(*af6));
}
TAILQ_REMOVE(&frag6_queue, q6, ip6q_queue);
frag6_nfrags -= q6->ip6q_nfrag;
- free(q6, M_FTABLE, 0);
+ free(q6, M_FTABLE, sizeof(*q6));
frag6_nfragpackets--;
}
Index: netinet6/in6.c
===================================================================
RCS file: /cvs/src/sys/netinet6/in6.c,v
retrieving revision 1.190
diff -u -p -r1.190 in6.c
--- netinet6/in6.c 8 Aug 2016 13:09:36 -0000 1.190
+++ netinet6/in6.c 19 Aug 2016 12:46:41 -0000
@@ -1917,5 +1917,5 @@ in6_domifdetach(struct ifnet *ifp, void
struct in6_ifextra *ext = (struct in6_ifextra *)aux;
nd6_ifdetach(ext->nd_ifinfo);
- free(ext, M_IFADDR, 0);
+ free(ext, M_IFADDR, sizeof(*ext));
}
Index: netinet6/ip6_output.c
===================================================================
RCS file: /cvs/src/sys/netinet6/ip6_output.c,v
retrieving revision 1.211
diff -u -p -r1.211 ip6_output.c
--- netinet6/ip6_output.c 1 Jul 2016 18:18:57 -0000 1.211
+++ netinet6/ip6_output.c 19 Aug 2016 12:46:41 -0000
@@ -1754,7 +1754,7 @@ ip6_pcbopts(struct ip6_pktopts **pktopt,
* Only turning off any previous options, regardless of
* whether the opt is just created or given.
*/
- free(opt, M_IP6OPT, 0);
+ free(opt, M_IP6OPT, sizeof(*opt));
return (0);
}
@@ -1764,7 +1764,7 @@ ip6_pcbopts(struct ip6_pktopts **pktopt,
if ((error = ip6_setpktopts(m, opt, NULL, priv,
so->so_proto->pr_protocol)) != 0) {
ip6_clearpktopts(opt, -1); /* XXX discard all options */
- free(opt, M_IP6OPT, 0);
+ free(opt, M_IP6OPT, sizeof(*opt));
return (error);
}
*pktopt = opt;
Index: netinet6/nd6.c
===================================================================
RCS file: /cvs/src/sys/netinet6/nd6.c,v
retrieving revision 1.188
diff -u -p -r1.188 nd6.c
--- netinet6/nd6.c 13 Jul 2016 08:40:46 -0000 1.188
+++ netinet6/nd6.c 19 Aug 2016 12:46:41 -0000
@@ -153,7 +153,7 @@ void
nd6_ifdetach(struct nd_ifinfo *nd)
{
- free(nd, M_IP6NDP, 0);
+ free(nd, M_IP6NDP, sizeof(*nd));
}
void
@@ -1634,7 +1634,7 @@ nd6_sysctl(int name, void *oldp, size_t
ol = oldlenp ? *oldlenp : 0;
if (oldp) {
- p = malloc(*oldlenp, M_TEMP, M_WAITOK | M_CANFAIL);
+ p = malloc(ol, M_TEMP, M_WAITOK | M_CANFAIL);
if (!p)
return ENOMEM;
} else
@@ -1656,8 +1656,7 @@ nd6_sysctl(int name, void *oldp, size_t
error = ENOPROTOOPT;
break;
}
- if (p)
- free(p, M_TEMP, 0);
+ free(p, M_TEMP, ol);
return (error);
}
Index: netinet6/nd6_nbr.c
===================================================================
RCS file: /cvs/src/sys/netinet6/nd6_nbr.c,v
retrieving revision 1.108
diff -u -p -r1.108 nd6_nbr.c
--- netinet6/nd6_nbr.c 4 Aug 2016 20:46:24 -0000 1.108
+++ netinet6/nd6_nbr.c 19 Aug 2016 12:46:41 -0000
@@ -1207,7 +1207,7 @@ nd6_dad_stop(struct ifaddr *ifa)
nd6_dad_stoptimer(dp);
TAILQ_REMOVE(&dadq, (struct dadq *)dp, dad_list);
- free(dp, M_IP6NDP, 0);
+ free(dp, M_IP6NDP, sizeof(*dp));
dp = NULL;
ifafree(ifa);
ip6_dad_pending--;
@@ -1256,7 +1256,7 @@ nd6_dad_timer(struct ifaddr *ifa)
ifa->ifa_ifp->if_xname));
TAILQ_REMOVE(&dadq, (struct dadq *)dp, dad_list);
- free(dp, M_IP6NDP, 0);
+ free(dp, M_IP6NDP, sizeof(*dp));
dp = NULL;
ifafree(ifa);
ip6_dad_pending--;
@@ -1306,7 +1306,7 @@ nd6_dad_timer(struct ifaddr *ifa)
addr, sizeof(addr))));
TAILQ_REMOVE(&dadq, (struct dadq *)dp, dad_list);
- free(dp, M_IP6NDP, 0);
+ free(dp, M_IP6NDP, sizeof(*dp));
dp = NULL;
ifafree(ifa);
ip6_dad_pending--;
@@ -1343,7 +1343,7 @@ nd6_dad_duplicated(struct dadq *dp)
TAILQ_REMOVE(&dadq, dp, dad_list);
ifafree(dp->dad_ifa);
- free(dp, M_IP6NDP, 0);
+ free(dp, M_IP6NDP, sizeof(*dp));
ip6_dad_pending--;
}
Index: netinet6/nd6_rtr.c
===================================================================
RCS file: /cvs/src/sys/netinet6/nd6_rtr.c,v
retrieving revision 1.140
diff -u -p -r1.140 nd6_rtr.c
--- netinet6/nd6_rtr.c 5 Jul 2016 10:17:14 -0000 1.140
+++ netinet6/nd6_rtr.c 19 Aug 2016 12:46:41 -0000
@@ -667,7 +667,7 @@ defrtrlist_del(struct nd_defrouter *dr)
dr->ifp->if_xname);
}
- free(dr, M_IP6NDP, 0);
+ free(dr, M_IP6NDP, sizeof(*dr));
}
/*
@@ -995,7 +995,7 @@ void
pfxrtr_del(struct nd_pfxrouter *pfr)
{
LIST_REMOVE(pfr, pfr_entry);
- free(pfr, M_IP6NDP, 0);
+ free(pfr, M_IP6NDP, sizeof(*pfr));
}
struct nd_prefix *
@@ -1145,7 +1145,7 @@ prelist_remove(struct nd_prefix *pr)
/* free list of routers that adversed the prefix */
LIST_FOREACH_SAFE(pfr, &pr->ndpr_advrtrs, pfr_entry, next)
- free(pfr, M_IP6NDP, 0);
+ free(pfr, M_IP6NDP, sizeof(*pfr));
ext->nprefixes--;
if (ext->nprefixes < 0) {
@@ -1153,7 +1153,7 @@ prelist_remove(struct nd_prefix *pr)
pr->ndpr_ifp->if_xname);
}
- free(pr, M_IP6NDP, 0);
+ free(pr, M_IP6NDP, sizeof(*pr));
pfxlist_onlink_check();
splx(s);
Index: netinet6/raw_ip6.c
===================================================================
RCS file: /cvs/src/sys/netinet6/raw_ip6.c,v
retrieving revision 1.94
diff -u -p -r1.94 raw_ip6.c
--- netinet6/raw_ip6.c 4 Aug 2016 20:46:24 -0000 1.94
+++ netinet6/raw_ip6.c 19 Aug 2016 12:46:41 -0000
@@ -631,10 +631,9 @@ rip6_usrreq(struct socket *so, int req,
if (so == ip6_mrouter)
ip6_mrouter_done();
#endif
- if (in6p->inp_icmp6filt) {
- free(in6p->inp_icmp6filt, M_PCB, 0);
- in6p->inp_icmp6filt = NULL;
- }
+ free(in6p->inp_icmp6filt, M_PCB, sizeof(struct icmp6_filter));
+ in6p->inp_icmp6filt = NULL;
+
in_pcbdetach(in6p);
break;