• Arnd Bergmann's avatar
    wifi: rtw89: avoid stringop-overflow warning · 595b1280
    Arnd Bergmann authored
    After -Wstringop-overflow got enabled, the rtw89 driver produced
    two odd warnings with gcc-13:
    
    drivers/net/wireless/realtek/rtw89/coex.c: In function 'rtw89_btc_ntfy_scan_start':
    drivers/net/wireless/realtek/rtw89/coex.c:5362:50: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
     5362 |                 wl->dbcc_info.scan_band[phy_idx] = band;
          |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
    In file included from drivers/net/wireless/realtek/rtw89/coex.h:8,
                     from drivers/net/wireless/realtek/rtw89/coex.c:5:
    drivers/net/wireless/realtek/rtw89/core.h:1441:12: note: at offset [64, 255] into destination object 'scan_band' of size 2
     1441 |         u8 scan_band[RTW89_PHY_MAX]; /* scan band in  each phy */
          |            ^~~~~~~~~
    drivers/net/wireless/realtek/rtw89/coex.c: In function 'rtw89_btc_ntfy_switch_band':
    drivers/net/wireless/realtek/rtw89/coex.c:5406:50: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
     5406 |                 wl->dbcc_info.scan_band[phy_idx] = band;
          |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
    drivers/net/wireless/realtek/rtw89/core.h:1441:12: note: at offset [64, 255] into destination object 'scan_band' of size 2
     1441 |         u8 scan_band[RTW89_PHY_MAX]; /* scan band in  each phy */
          |            ^~~~~~~~~
    
    I don't know what happened here, but adding an explicit range check
    shuts up the output.
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarKalle Valo <kvalo@kernel.org>
    Link: https://lore.kernel.org/r/20231204073020.1105416-1-arnd@kernel.org
    595b1280
coex.c 244 KB