> diff --git a/drivers/net/wireless/realtek/rtw89/wow.c b/drivers/net/wireless/realtek/rtw89/wow.c > index 071c7577df52..5bb7c1a42f1d 100644 > --- a/drivers/net/wireless/realtek/rtw89/wow.c > +++ b/drivers/net/wireless/realtek/rtw89/wow.c > @@ -619,9 +619,12 @@ static struct ieee80211_key_conf *rtw89_wow_gtk_rekey(struct rtw89_dev *rtwdev, > flex_array_size(rekey_conf, key, cipher_info->len)); > > if (ieee80211_vif_is_mld(wow_vif)) > - key = ieee80211_gtk_rekey_add(wow_vif, rekey_conf, rtwvif_link->link_id); > + key = ieee80211_gtk_rekey_add(wow_vif, keyidx, gtk, > + cipher_info->len, > + rtwvif_link->link_id); > else > - key = ieee80211_gtk_rekey_add(wow_vif, rekey_conf, -1); > + key = ieee80211_gtk_rekey_add(wow_vif, keyidx, gtk, > + cipher_info->len, -1); > > kfree(rekey_conf); For the rtw89 part, the local allocate/free instance of rekey_conf isn't used anymore. Please remove it by the way. > if (IS_ERR(key)) {