Commit d8ed043a authored by Maya Erez's avatar Maya Erez Committed by Kalle Valo

wil6210: print debug message when transmitting while disconnected

Network stack can try to transmit data while AP / STA is
disconnected.
Change this print-out to debug level as this should not be
handled as error.
This patch also adds wil_dbg_ratelimited, used to limit the
above print-out.
Signed-off-by: default avatarMaya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: default avatarKalle Valo <kvalo@qca.qualcomm.com>
parent b523d35b
...@@ -49,6 +49,22 @@ void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...) ...@@ -49,6 +49,22 @@ void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...)
} }
} }
void wil_dbg_ratelimited(const struct wil6210_priv *wil, const char *fmt, ...)
{
struct va_format vaf;
va_list args;
if (!net_ratelimit())
return;
va_start(args, fmt);
vaf.fmt = fmt;
vaf.va = &args;
netdev_dbg(wil_to_ndev(wil), "%pV", &vaf);
trace_wil6210_log_dbg(&vaf);
va_end(args);
}
void __wil_info(struct wil6210_priv *wil, const char *fmt, ...) void __wil_info(struct wil6210_priv *wil, const char *fmt, ...)
{ {
struct net_device *ndev = wil_to_ndev(wil); struct net_device *ndev = wil_to_ndev(wil);
......
...@@ -1759,7 +1759,7 @@ netdev_tx_t wil_start_xmit(struct sk_buff *skb, struct net_device *ndev) ...@@ -1759,7 +1759,7 @@ netdev_tx_t wil_start_xmit(struct sk_buff *skb, struct net_device *ndev)
goto drop; goto drop;
} }
if (unlikely(!test_bit(wil_status_fwconnected, wil->status))) { if (unlikely(!test_bit(wil_status_fwconnected, wil->status))) {
wil_err_ratelimited(wil, "FW not connected\n"); wil_dbg_ratelimited(wil, "FW not connected, packet dropped\n");
goto drop; goto drop;
} }
if (unlikely(wil->wdev->iftype == NL80211_IFTYPE_MONITOR)) { if (unlikely(wil->wdev->iftype == NL80211_IFTYPE_MONITOR)) {
......
...@@ -640,6 +640,8 @@ __printf(2, 3) ...@@ -640,6 +640,8 @@ __printf(2, 3)
void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...); void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...);
__printf(2, 3) __printf(2, 3)
void __wil_info(struct wil6210_priv *wil, const char *fmt, ...); void __wil_info(struct wil6210_priv *wil, const char *fmt, ...);
__printf(2, 3)
void wil_dbg_ratelimited(const struct wil6210_priv *wil, const char *fmt, ...);
#define wil_dbg(wil, fmt, arg...) do { \ #define wil_dbg(wil, fmt, arg...) do { \
netdev_dbg(wil_to_ndev(wil), fmt, ##arg); \ netdev_dbg(wil_to_ndev(wil), fmt, ##arg); \
wil_dbg_trace(wil, fmt, ##arg); \ wil_dbg_trace(wil, fmt, ##arg); \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment