Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Nov 2022 10:20:21 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        "Bjoern A. Zeeb" <bz@freebsd.org>
Cc:        freebsd-wireless@freebsd.org
Subject:   Re: IEEE80211_DEBUG_REFCNT breaks drivers
Message-ID:  <CAJ-Vmo=VEQLT8Anc8YJZ%2Bx0=AUZFfxsA3r3iqKmvZBveEpmnGg@mail.gmail.com>
In-Reply-To: <5oosrpn9-rpp-337-8439-sq562ns60s4@serrofq.bet>
References:  <rqo55p4p-964s-pqps-r482-oqo1on5q5spr@mnoonqbm.arg> <CAJ-VmokecVa2xNgqSbvfPfy2ezMvS1JC4Hm65Ej2n5OpwXkO4Q@mail.gmail.com> <5oosrpn9-rpp-337-8439-sq562ns60s4@serrofq.bet>

next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000075a1a205ee8bed37
Content-Type: text/plain; charset="UTF-8"

On Mon, 28 Nov 2022 at 09:20, Bjoern A. Zeeb <bz@freebsd.org> wrote:

> On Mon, 28 Nov 2022, Adrian Chadd wrote:
>
> > On Mon, 28 Nov 2022 at 08:15, Bjoern A. Zeeb <bz@freebsd.org> wrote:
> >
> >> Hi,
> >>
> >> adding IEEE80211_DEBUG_REFCNT to a kernel config breaks various wireless
> >> driver builds as they do not include opt_wlan.h and thus get the other
> >> incarnation of various functions (with different argument count) from
> >> ieee80211_node.h .
> >>
> >
> > Ugh. :-) Yeah, that whole binary ABI change thing sucks.
> >
> > Yeah, drivers should be including opt_wlan.h. I had a chat with warner
> > about this years ago and IIRC the thought was that we shouldn't have
> > /binary ABI/ changes because of opt_XXX.h flags that aren't global.. but
> I
> > don't know how many people care about things at that level now?
>
> The alternative would be to:
>
> (a) not rename the functions (I'd actually like that)
> and
> (b) to always pass __func__ and __LINE__ in as arguments but mark them
> __unused in the non-IEEE80211_DEBUG_REFCNT case.
>
> That could also solve this particular problem.  Any take on that road?
>

Yeah I like that.



-adrian

--00000000000075a1a205ee8bed37
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">On Mon, 28 Nov 2022 at 09:20, Bjoern =
A. Zeeb &lt;<a href=3D"mailto:bz@freebsd.org">bz@freebsd.org</a>&gt; wrote:=
<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8=
ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, 28 Nov =
2022, Adrian Chadd wrote:<br>
<br>
&gt; On Mon, 28 Nov 2022 at 08:15, Bjoern A. Zeeb &lt;<a href=3D"mailto:bz@=
freebsd.org" target=3D"_blank">bz@freebsd.org</a>&gt; wrote:<br>
&gt;<br>
&gt;&gt; Hi,<br>
&gt;&gt;<br>
&gt;&gt; adding IEEE80211_DEBUG_REFCNT to a kernel config breaks various wi=
reless<br>
&gt;&gt; driver builds as they do not include opt_wlan.h and thus get the o=
ther<br>
&gt;&gt; incarnation of various functions (with different argument count) f=
rom<br>
&gt;&gt; ieee80211_node.h .<br>
&gt;&gt;<br>
&gt;<br>
&gt; Ugh. :-) Yeah, that whole binary ABI change thing sucks.<br>
&gt;<br>
&gt; Yeah, drivers should be including opt_wlan.h. I had a chat with warner=
<br>
&gt; about this years ago and IIRC the thought was that we shouldn&#39;t ha=
ve<br>
&gt; /binary ABI/ changes because of opt_XXX.h flags that aren&#39;t global=
.. but I<br>
&gt; don&#39;t know how many people care about things at that level now?<br=
>
<br>
The alternative would be to:<br>
<br>
(a) not rename the functions (I&#39;d actually like that)<br>
and<br>
(b) to always pass __func__ and __LINE__ in as arguments but mark them<br>
__unused in the non-IEEE80211_DEBUG_REFCNT case.<br>
<br>
That could also solve this particular problem.=C2=A0 Any take on that road?=
<br></blockquote><div><br></div><div>Yeah I like that.</div><div><br></div>=
<div><br></div><div><br></div><div>-adrian</div><div><br></div></div></div>

--00000000000075a1a205ee8bed37--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=VEQLT8Anc8YJZ%2Bx0=AUZFfxsA3r3iqKmvZBveEpmnGg>