Date: Mon, 22 Sep 2025 11:37:31 -0400 From: "Jonathan T. Looney" <jtl@freebsd.org> To: Guido Falsi <madpilot@freebsd.org> Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 0ec13430c583 - main - sys/netinet6: Fix ABI breakage introduced with RFC 7217 support Message-ID: <CADrOrmv22FzL9oP-B3NF=McMawJkQ5%2BL0zuvYSd0xRK%2BdnNYXQ@mail.gmail.com> In-Reply-To: <202509220759.58M7xkrM031432@gitrepo.freebsd.org> References: <202509220759.58M7xkrM031432@gitrepo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On Mon, Sep 22, 2025 at 3:59 AM Guido Falsi <madpilot@freebsd.org> wrote: > diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c > index 4f756a75fac7..8ef755e2dc0a 100644 > --- a/sys/netinet6/in6.c > +++ b/sys/netinet6/in6.c > @@ -2604,6 +2604,8 @@ in6_domifattach(struct ifnet *ifp) > COUNTER_ARRAY_ALLOC(ext->icmp6_ifstat, > sizeof(struct icmp6_ifstat) / sizeof(uint64_t), M_WAITOK); > > + ext->dad_failures = counter_u64_alloc(M_WAITOK); > + > ext->nd_ifinfo = nd6_ifattach(ifp); > ext->scope6_id = scope6_ifattach(ifp); > ext->lltable = in6_lltattach(ifp); > @@ -2639,6 +2641,7 @@ in6_domifdetach(struct ifnet *ifp, void *aux) > COUNTER_ARRAY_FREE(ext->icmp6_ifstat, > sizeof(struct icmp6_ifstat) / sizeof(uint64_t)); > free(ext->icmp6_ifstat, M_IFADDR); > + counter_u64_free(ext->dad_failures); > free(ext, M_IFADDR); > } > This seems like it is probably a low-frequency event. If so, why is a counter a better choice for this than an atomic? Jonathan [-- Attachment #2 --] <div dir="ltr"><div dir="ltr">On Mon, Sep 22, 2025 at 3:59 AM Guido Falsi <<a href="mailto:madpilot@freebsd.org">madpilot@freebsd.org</a>> wrote:</div><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c<br> index 4f756a75fac7..8ef755e2dc0a 100644<br> --- a/sys/netinet6/in6.c<br> +++ b/sys/netinet6/in6.c<br> @@ -2604,6 +2604,8 @@ in6_domifattach(struct ifnet *ifp)<br> COUNTER_ARRAY_ALLOC(ext->icmp6_ifstat,<br> sizeof(struct icmp6_ifstat) / sizeof(uint64_t), M_WAITOK);<br> <br> + ext->dad_failures = counter_u64_alloc(M_WAITOK);<br> +<br> ext->nd_ifinfo = nd6_ifattach(ifp);<br> ext->scope6_id = scope6_ifattach(ifp);<br> ext->lltable = in6_lltattach(ifp);<br> @@ -2639,6 +2641,7 @@ in6_domifdetach(struct ifnet *ifp, void *aux)<br> COUNTER_ARRAY_FREE(ext->icmp6_ifstat,<br> sizeof(struct icmp6_ifstat) / sizeof(uint64_t));<br> free(ext->icmp6_ifstat, M_IFADDR);<br> + counter_u64_free(ext->dad_failures);<br> free(ext, M_IFADDR);<br> }<br></blockquote><div><br></div><div>This seems like it is probably a low-frequency event. If so, why is a counter a better choice for this than an atomic?</div><div><br></div><div>Jonathan</div></div></div>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADrOrmv22FzL9oP-B3NF=McMawJkQ5%2BL0zuvYSd0xRK%2BdnNYXQ>
