diff mbox series

wifi: rtw88: suppress messages of failed to flush queue

Message ID 20240417014036.11234-1-pkshih@realtek.com (mailing list archive)
State Superseded
Delegated to: Ping-Ke Shih
Headers show
Series wifi: rtw88: suppress messages of failed to flush queue | expand

Commit Message

Ping-Ke Shih April 17, 2024, 1:40 a.m. UTC
Driver throws messages when scanning with a lot of traffic, because packets
in TX buffer can not be transmitted in time. Since this is a common
occurrence, change them to debug message with special debug mask that
developers can turn on this mask by default for further analysis.

Cc: Lewis Robbins <lewis.robbins2@gmail.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
---
 drivers/net/wireless/realtek/rtw88/debug.h | 1 +
 drivers/net/wireless/realtek/rtw88/mac.c   | 3 ++-
 drivers/net/wireless/realtek/rtw88/pci.c   | 3 ++-
 3 files changed, 5 insertions(+), 2 deletions(-)

Comments

Lewis Robbins April 17, 2024, 10:14 p.m. UTC | #1
Thanks, I tested it for 30 minutes and didn't receive any superfluous warning message. Only thing I could find was the comment above not reflecting the (new) debug print (but very nit-picky from me).

Acked-by: Lewis Robbins <lewis.robbins2@gmail.com>

diff --git a/drivers/net/wireless/realtek/rtw88/mac.c b/drivers/net/wireless/realtek/rtw88/mac.c
index 9038e2311596..3d1a886262d8 100644
--- a/drivers/net/wireless/realtek/rtw88/mac.c
+++ b/drivers/net/wireless/realtek/rtw88/mac.c
@@ -1026,7 +1026,7 @@ static void __rtw_mac_flush_prio_queue(struct rtw_dev *rtwdev,
 		msleep(20);
 	}
 
-	/* priority queue is still not empty, throw a warning,
+	/* priority queue is still not empty, throw a debug message
 	 *
 	 * Note that if we want to flush the tx queue when having a lot of
 	 * traffic (ex, 100Mbps up), some of the packets could be dropped.
Ping-Ke Shih April 18, 2024, 12:31 a.m. UTC | #2
Lewis Robbins <lewis.robbins2@gmail.com> wrote:

> Thanks, I tested it for 30 minutes and didn't receive any superfluous warning message. Only thing I could
> find was the comment above not reflecting the (new) debug print (but very nit-picky from me).
> 
> Acked-by: Lewis Robbins <lewis.robbins2@gmail.com>

Acked-by is used by maintainers, so I used your Tested-by by v2. [1]

> 
> diff --git a/drivers/net/wireless/realtek/rtw88/mac.c b/drivers/net/wireless/realtek/rtw88/mac.c
> index 9038e2311596..3d1a886262d8 100644
> --- a/drivers/net/wireless/realtek/rtw88/mac.c
> +++ b/drivers/net/wireless/realtek/rtw88/mac.c
> @@ -1026,7 +1026,7 @@ static void __rtw_mac_flush_prio_queue(struct rtw_dev *rtwdev,
>                 msleep(20);
>         }
> 
> -       /* priority queue is still not empty, throw a warning,
> +       /* priority queue is still not empty, throw a debug message

Thanks for pointing this. 

>          *
>          * Note that if we want to flush the tx queue when having a lot of
>          * traffic (ex, 100Mbps up), some of the packets could be dropped.

[1] https://lore.kernel.org/linux-wireless/20240418002916.5965-1-pkshih@realtek.com/T/#u
diff mbox series

Patch

diff --git a/drivers/net/wireless/realtek/rtw88/debug.h b/drivers/net/wireless/realtek/rtw88/debug.h
index f20c0471c82a..eb69006c463e 100644
--- a/drivers/net/wireless/realtek/rtw88/debug.h
+++ b/drivers/net/wireless/realtek/rtw88/debug.h
@@ -26,6 +26,7 @@  enum rtw_debug_mask {
 	RTW_DBG_STATE		= 0x00020000,
 	RTW_DBG_SDIO		= 0x00040000,
 
+	RTW_DBG_UNEXP		= 0x80000000,
 	RTW_DBG_ALL		= 0xffffffff
 };
 
diff --git a/drivers/net/wireless/realtek/rtw88/mac.c b/drivers/net/wireless/realtek/rtw88/mac.c
index 699ae3048c6b..1fa273012b9c 100644
--- a/drivers/net/wireless/realtek/rtw88/mac.c
+++ b/drivers/net/wireless/realtek/rtw88/mac.c
@@ -1046,7 +1046,8 @@  static void __rtw_mac_flush_prio_queue(struct rtw_dev *rtwdev,
 	 * And it requires like ~2secs to flush the full priority queue.
 	 */
 	if (!drop)
-		rtw_warn(rtwdev, "timed out to flush queue %d\n", prio_queue);
+		rtw_dbg(rtwdev, RTW_DBG_UNEXP,
+			"timed out to flush queue %d\n", prio_queue);
 }
 
 static void rtw_mac_flush_prio_queues(struct rtw_dev *rtwdev,
diff --git a/drivers/net/wireless/realtek/rtw88/pci.c b/drivers/net/wireless/realtek/rtw88/pci.c
index 9986a4cb37eb..7a093f3d5f74 100644
--- a/drivers/net/wireless/realtek/rtw88/pci.c
+++ b/drivers/net/wireless/realtek/rtw88/pci.c
@@ -729,7 +729,8 @@  static void __pci_flush_queue(struct rtw_dev *rtwdev, u8 pci_q, bool drop)
 	}
 
 	if (!drop)
-		rtw_warn(rtwdev, "timed out to flush pci tx ring[%d]\n", pci_q);
+		rtw_dbg(rtwdev, RTW_DBG_UNEXP,
+			"timed out to flush pci tx ring[%d]\n", pci_q);
 }
 
 static void __rtw_pci_flush_queues(struct rtw_dev *rtwdev, u32 pci_queues,