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>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] 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 [-- Attachment #2 --] <div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 28 Nov 2022 at 09:20, Bjoern A. Zeeb <<a href="mailto:bz@freebsd.org">bz@freebsd.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, 28 Nov 2022, Adrian Chadd wrote:<br> <br> > On Mon, 28 Nov 2022 at 08:15, Bjoern A. Zeeb <<a href="mailto:bz@freebsd.org" target="_blank">bz@freebsd.org</a>> wrote:<br> ><br> >> Hi,<br> >><br> >> adding IEEE80211_DEBUG_REFCNT to a kernel config breaks various wireless<br> >> driver builds as they do not include opt_wlan.h and thus get the other<br> >> incarnation of various functions (with different argument count) from<br> >> ieee80211_node.h .<br> >><br> ><br> > Ugh. :-) Yeah, that whole binary ABI change thing sucks.<br> ><br> > Yeah, drivers should be including opt_wlan.h. I had a chat with warner<br> > about this years ago and IIRC the thought was that we shouldn't have<br> > /binary ABI/ changes because of opt_XXX.h flags that aren't global.. but I<br> > don'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'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. 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>home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=VEQLT8Anc8YJZ%2Bx0=AUZFfxsA3r3iqKmvZBveEpmnGg>
