From f5914a2d0d68b15dfed3aeeb242f094ee85fe28a Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megous@megous.com>
Date: Sat, 8 May 2021 19:10:06 +0200
Subject: [PATCH 232/467] 8723cs: Disable use of NAPI

It's useless anyway, since the driver doesn't disable interrupts,
and doesn't poll the HW directly either, but keeps RX interrupt
enabled and polls the queue that's filled from a HW interrupt.

Driver's NAPI implementation is borked anyway, and prevents
the NOHZ tick-stop for no reason:

            sshd-179     [000] ...2    53.703997: net_dev_queue: dev=wlan0 skbaddr=00000000bc90a6f7 len=102
            sshd-179     [000] ...4    53.704055: net_dev_start_xmit: dev=wlan0 queue_mapping=3 skbaddr=00000000bc90a6f7 vlan_tagged=0 vlan_proto=0x0000 vlan_tci=0x0000 protocol=0x0800 ip_summed=0 len=102 data_len=36 network_offset=14 transport_offset_valid=1 transport_offset=34 tx_flags=0 gso_size=0 gso_segs=1 gso_type=0x1
            sshd-179     [000] ...4    53.704148: net_dev_xmit: dev=wlan0 skbaddr=00000000bc90a6f7 len=102 rc=0
          <idle>-0       [003] d..3    53.715751: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    53.729021: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] ..s2    53.742200: napi_gro_receive_entry: dev=wlan0 napi_id=0x5 queue_mapping=0 skbaddr=0000000019168844 vlan_tagged=0 vlan_proto=0x0000 vlan_tci=0x0000 protocol=0x0800 ip_summed=0 hash=0x00000000 l4_hash=0 len=52 data_len=0 truesize=768 mac_header_valid=1 mac_header=-14 nr_frags=0 gso_size=0 gso_type=0x0
          <idle>-0       [003] ..s2    53.742235: napi_gro_receive_exit: ret=3
          <idle>-0       [003] ..s3    53.742246: netif_receive_skb: dev=wlan0 skbaddr=0000000019168844 len=52
 RTW_RECV_THREAD-150     [003] d..2    53.776890: console: RTW: unknown vendor specific information element ignored (vendor OUI 00:0c:42 len=42)
 RTW_RECV_THREAD-150     [003] d..2    53.791187: console: RTW: Unknown Broadcom information element ignored (type=52 len=26)
          <idle>-0       [003] d..3    53.803880: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    53.817165: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    53.876772: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
 RTW_RECV_THREAD-150     [003] d..2    53.890125: console: RTW: unknown vendor specific information element ignored (vendor OUI 00:0c:42 len=42)
 RTW_RECV_THREAD-150     [003] d..2    53.904219: console: RTW: Unknown Broadcom information element ignored (type=52 len=26)
          <idle>-0       [003] d..3    53.916667: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    53.929825: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
 RTW_RECV_THREAD-150     [003] d..2    53.981709: console: RTW: unknown vendor specific information element ignored (vendor OUI 00:0c:42 len=42)
 RTW_RECV_THREAD-150     [003] d..2    53.995976: console: RTW: Unknown Broadcom information element ignored (type=52 len=26)
          <idle>-0       [003] d..3    54.008419: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    54.021585: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    54.042131: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] d..3    54.055198: console: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!!
          <idle>-0       [003] ..s2    54.068195: napi_gro_receive_entry: dev=wlan0 napi_id=0x5 queue_mapping=0 skbaddr=0000000019168844 vlan_tagged=0 vlan_proto=0x0000 vlan_tci=0x0000 protocol=0x0800 ip_summed=0 hash=0x00000000 l4_hash=0 len=88 data_len=0 truesize=1280 mac_header_valid=1 mac_header=-14 nr_frags=0 gso_size=0 gso_type=0x0
          <idle>-0       [003] ..s2    54.068235: napi_gro_receive_exit: ret=3
          <idle>-0       [003] ..s3    54.068248: netif_receive_skb: dev=wlan0 skbaddr=0000000019168844 len=88
            sshd-179     [000] ...2    54.070127: net_dev_queue: dev=wlan0 skbaddr=00000000debb8826 len=118
            sshd-179     [000] ...4    54.070194: net_dev_start_xmit: dev=wlan0 queue_mapping=3 skbaddr=00000000debb8826 vlan_tagged=0 vlan_proto=0x0000 vlan_tci=0x0000 protocol=0x0800 ip_summed=0 len=118 data_len=52 network_offset=14 transport_offset_valid=1 transport_offset=34 tx_flags=0 gso_size=0 gso_segs=1 gso_type=0x1
            sshd-179     [000] ...4    54.070328: net_dev_xmit: dev=wlan0 skbaddr=00000000debb8826 len=118 rc=0
 RTW_RECV_THREAD-150     [003] d..2    54.080901: console: RTW: unknown vendor specific information element ignored (vendor OUI 00:0c:42 len=42)
 RTW_RECV_THREAD-150     [003] d..2    54.095095: console: RTW: Unknown Broadcom information element ignored (type=52 len=26)

Signed-off-by: Ondrej Jirman <megous@megous.com>
---
 drivers/staging/rtl8723cs/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/rtl8723cs/Makefile b/drivers/staging/rtl8723cs/Makefile
index b428d679e..a70925635 100644
--- a/drivers/staging/rtl8723cs/Makefile
+++ b/drivers/staging/rtl8723cs/Makefile
@@ -81,8 +81,8 @@ CONFIG_TDLS = y
 CONFIG_WIFI_MONITOR = y
 CONFIG_MCC_MODE = n
 CONFIG_APPEND_VENDOR_IE_ENABLE = n
-CONFIG_RTW_NAPI = y
-CONFIG_RTW_GRO = y
+CONFIG_RTW_NAPI = n
+CONFIG_RTW_GRO = n
 CONFIG_RTW_NETIF_SG = y
 CONFIG_RTW_IPCAM_APPLICATION = n
 CONFIG_RTW_REPEATER_SON = n
-- 
2.34.0

