ok mvs@
> On 27 Nov 2022, at 23:29, Klemens Nanni <k...@openbsd.org> wrote:
>
> On Sun, Nov 27, 2022 at 11:12:30PM +0300, Vitaliy Makkoveev wrote:
>> dad_init should go away too.
>
> Thanks for pointing out the obvious.
> ---
> The list of IPv6 addresses to perfom Duplicate Address Detection on is
> entirely static to nd6_nbr.c; ttatically initialise it so `dad_init'
> can go.
>
> nd6_dad_find() keeps returning NULL on an initialised but empty list,
> so nd6_dad_stop() keeps returning early.
>
> Feedback? Objection? OK?
>
> diff --git a/sys/netinet6/nd6_nbr.c b/sys/netinet6/nd6_nbr.c
> index 0597c8d0d9a..0248c12f1ad 100644
> --- a/sys/netinet6/nd6_nbr.c
> +++ b/sys/netinet6/nd6_nbr.c
> @@ -62,7 +62,8 @@
> #include <netinet/ip_carp.h>
> #endif
>
> -TAILQ_HEAD(dadq_head, dadq);
> +static TAILQ_HEAD(, dadq) dadq =
> + TAILQ_HEAD_INITIALIZER(dadq); /* list of addresses to run DAD on */
> struct dadq {
> TAILQ_ENTRY(dadq) dad_list;
> struct ifaddr *dad_ifa;
> @@ -1036,9 +1037,6 @@ nd6_ifptomac(struct ifnet *ifp)
> }
> }
>
> -static struct dadq_head dadq;
> -static int dad_init = 0;
> -
> struct dadq *
> nd6_dad_find(struct ifaddr *ifa)
> {
> @@ -1078,11 +1076,6 @@ nd6_dad_start(struct ifaddr *ifa)
>
> NET_ASSERT_LOCKED();
>
> - if (!dad_init) {
> - TAILQ_INIT(&dadq);
> - dad_init++;
> - }
> -
> /*
> * If we don't need DAD, don't do it.
> * There are several cases:
> @@ -1140,8 +1133,6 @@ nd6_dad_stop(struct ifaddr *ifa)
> {
> struct dadq *dp;
>
> - if (!dad_init)
> - return;
> dp = nd6_dad_find(ifa);
> if (!dp) {
> /* DAD wasn't started yet */
>