DF-0310 / fix.diff
diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c --- a/sys/netinet6/ip6_output.c +++ b/sys/netinet6/ip6_output.c @@ -750,7 +750,7 @@ } else { struct mbuf **mnext, *m_frgpart; struct ip6_frag *ip6f; - u_int32_t id = htonl(ip6_id++); + u_int32_t id = htonl(atomic_fetchadd_int(&ip6_id, 1)); u_char nextproto; /* |