cpu_to_le16 has been used for all keep-alive fields, but 'perdio_msec' is a 32-bit field and 'keep_alive_id' a 8-bit one. Fix that. Fixes: 7a6cfe28ae3e ("brcmfmac: Configure keep-alive packet on suspend") Reported-by: kernel test robot <lkp@xxxxxxxxx> Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxxx> --- drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c index 1679361..ba52318 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -3908,9 +3908,9 @@ static int brcmf_keepalive_start(struct brcmf_if *ifp, unsigned int interval) /* Configure Null function/data keepalive */ kalive.version = cpu_to_le16(1); - kalive.period_msec = cpu_to_le16(interval * MSEC_PER_SEC); + kalive.period_msec = cpu_to_le32(interval * MSEC_PER_SEC); kalive.len_bytes = cpu_to_le16(0); - kalive.keep_alive_id = cpu_to_le16(0); + kalive.keep_alive_id = 0; ret = brcmf_fil_iovar_data_set(ifp, "mkeep_alive", &kalive, sizeof(kalive)); if (ret) -- 2.7.4