]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
net: Implement net_dbg_ratelimited() for CONFIG_DYNAMIC_DEBUG case
authorTim Bingham <tbingham@akamai.com>
Fri, 29 Apr 2016 17:30:23 +0000 (13:30 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 12 Oct 2017 14:28:14 +0000 (15:28 +0100)
commit036684548f9cbb0058d42e550fec3e8310411d10
tree4c0c09260260de674269f56a55fbaf7927d330e9
parent8520f5c9a7bd32001690a73a0ed286f190a53b0e
net: Implement net_dbg_ratelimited() for CONFIG_DYNAMIC_DEBUG case

commit 2c94b53738549d81dc7464a32117d1f5112c64d3 upstream.

Prior to commit d92cff89a0c8 ("net_dbg_ratelimited: turn into no-op
when !DEBUG") the implementation of net_dbg_ratelimited() was buggy
for both the DEBUG and CONFIG_DYNAMIC_DEBUG cases.

The bug was that net_ratelimit() was being called and, despite
returning true, nothing was being printed to the console. This
resulted in messages like the following -

"net_ratelimit: %d callbacks suppressed"

with no other output nearby.

After commit d92cff89a0c8 ("net_dbg_ratelimited: turn into no-op when
!DEBUG") the bug is fixed for the DEBUG case. However, there's no
output at all for CONFIG_DYNAMIC_DEBUG case.

This patch restores debug output (if enabled) for the
CONFIG_DYNAMIC_DEBUG case.

Add a definition of net_dbg_ratelimited() for the CONFIG_DYNAMIC_DEBUG
case. The implementation takes care to check that dynamic debugging is
enabled before calling net_ratelimit().

Fixes: d92cff89a0c8 ("net_dbg_ratelimited: turn into no-op when !DEBUG")
Signed-off-by: Tim Bingham <tbingham@akamai.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
include/linux/net.h