Previously, the unicast variable was only initialized once during the function execution. Therefore, if unicast was set to true in the (n-1)th iteration, it would affect the nth iteration. This patch resolves the issue by reinitializing unicast to false at the start of each iteration. Signed-off-by: LBLaiSiNanHai ---  drivers/net/wireless/realtek/rtlwifi/pci.c | 2 ++  1 file changed, 2 insertions(+) diff --git a/drivers/net/wireless/realtek/rtlwifi/pci.c b/drivers/net/wireless/realtek/rtlwifi/pci.c index d08046926..fe7140328 100644 --- a/drivers/net/wireless/realtek/rtlwifi/pci.c +++ b/drivers/net/wireless/realtek/rtlwifi/pci.c @@ -752,6 +752,8 @@ static void _rtl_pci_rx_interrupt(struct ieee80211_hw *hw)                         memcpy(IEEE80211_SKB_RXCB(skb), &rx_status,                                sizeof(rx_status)); +      unicast = false; +                         if (is_broadcast_ether_addr(hdr->addr1)) {                                 ;/*TODO*/                         } else if (is_multicast_ether_addr(hdr->addr1)) { -- 2.44.0