AP doesn't work at 5 GHz after upgrading hostapd from 2.10 to 2.11

Tomáš Trnka tomastrnka at gmx.com
Mon Sep 29 03:00:01 PDT 2025


> So something is badly confused. No idea if that's something in hostapd
> writing the TIM after the debug info is printed above, or the driver
> (8812au) messing the beacon up afterwards.

Oh yes it's a driver bug. rtl8812au contains the following gem in 
update_BCNTIM() (https://github.com/zebulon2/rtl8812au-driver-5.2.9/blob/
601ccd117168c37ff93daecab75ed9581d412371/core/rtw_ap.c#L103):

/*calculate head_len*/
offset = _FIXED_IE_LENGTH_;

/* get ssid_ie len */
p = rtw_get_ie(pie + _BEACON_IE_OFFSET_, _SSID_IE_, &tmp_len, 
(pnetwork_mlmeext->IELength - _BEACON_IE_OFFSET_));
if (p != NULL)
    offset += tmp_len + 2;

/*get supported rates len*/
p = rtw_get_ie(pie + _BEACON_IE_OFFSET_, _SUPPORTEDRATES_IE_, &tmp_len, 
(pnetwork_mlmeext->IELength - _BEACON_IE_OFFSET_));
if (p !=  NULL)
    offset += tmp_len + 2;

/*DS Parameter Set IE, len=3*/
offset += 3;

So it basically expects DSSS params to always be there and will write the TIM 
3 bytes out of place otherwise.

Of course that logic is positively bonkers and the driver should be fixed, but 
that's often more easily said than done. Could hostapd perhaps get a config 
option to force adding DSSS to work around broken drivers?

2T





More information about the Hostap mailing list