Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Sep 2023 12:45:26 +0000
From:      bugzilla-noreply@freebsd.org
To:        wireless@FreeBSD.org
Subject:   [Bug 274156] ic->ic_vhtcaps check in ieee80211_setupcurchan
Message-ID:  <bug-274156-21060@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D274156

            Bug ID: 274156
           Summary: ic->ic_vhtcaps check in ieee80211_setupcurchan
           Product: Base System
           Version: 13.2-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: wireless
          Assignee: wireless@FreeBSD.org
          Reporter: misha@freebsd.org

https://github.com/freebsd/freebsd-src/blob/main/sys/net80211/ieee80211_nod=
e.c#L807

this code checks ic->ic_vhtcaps and proceeds only if it's non-zero, but I
wasn't able to find any mandatory non-zero vht caps, which must be always
present, IEEE80211_VHTCAP_MAX_MPDU_LENGTH_3895, which is the "default" is z=
ero
itself and doesn't influence the variable

this means that if a driver doesn't set the variable to at least something
non-zero (for example non-default ampdu) - it will never get connected with
11ac, although it can be capable of doing it

code snippet:

        /*
         * VHT promotion - this will at least promote to VHT20/40
         * based on what HT has done; it may further promote the
         * channel to VHT80 or above.
         */
        if (ic->ic_vhtcaps !=3D 0) {
                int flags =3D getvhtadjustflags(ic);
                if (flags > ieee80211_vhtchanflags(c))
                        c =3D ieee80211_vht_adjust_channel(ic, c, flags);
        }

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-274156-21060>