From 9d95a218de6f0e42521db7a70b9a95999e156b69 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Sun, 28 Jul 2019 16:21:04 +0200 Subject: [PATCH] mac80211: brcm: improve brcmfmac debugging of firmware crashes MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This provides a complete console messages dump. Signed-off-by: Rafał Miłecki (cherry picked from commit f51e2d031e8125632487d2a0f56b9fa31b71e54f) --- ...et_ratelimit-CONSOLE-messages-on-fir.patch | 38 +++++++++++++++++++ ...-info-right-before-downloading-PCIe-.patch | 2 +- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 package/kernel/mac80211/patches/470-v5.4-brcmfmac-don-t-net_ratelimit-CONSOLE-messages-on-fir.patch diff --git a/package/kernel/mac80211/patches/470-v5.4-brcmfmac-don-t-net_ratelimit-CONSOLE-messages-on-fir.patch b/package/kernel/mac80211/patches/470-v5.4-brcmfmac-don-t-net_ratelimit-CONSOLE-messages-on-fir.patch new file mode 100644 index 0000000000..e7e2885fa7 --- /dev/null +++ b/package/kernel/mac80211/patches/470-v5.4-brcmfmac-don-t-net_ratelimit-CONSOLE-messages-on-fir.patch @@ -0,0 +1,38 @@ +From e3b1d879ccda9ffd5332777bb1beeb2cc913faa8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= +Date: Sun, 21 Jul 2019 21:52:17 +0200 +Subject: [PATCH] brcmfmac: don't net_ratelimit() CONSOLE messages on firmware + crash +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Firmware crash is a pretty rare event and can't happen too frequently as +it has to be followed by a hardware reinitialization and config reload. +It should be safe to don't use net_ratelimit() when it happens. + +For reporting & debugging purposes it's important to provide a complete +log as the last lines are actually the most important. This change +modifies brcmfmac to print all messages in an unlimited way in that +specific case. With this change there should be finally a backtrace of +firmware finally visible after a crash. + +Signed-off-by: Rafał Miłecki +Acked-by: Arend van Spriel +Signed-off-by: Kalle Valo +--- + drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c ++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +@@ -800,7 +800,8 @@ static void brcmf_pcie_bus_console_read( + if (ch == '\n') { + console->log_str[console->log_idx] = 0; + if (error) +- brcmf_err(bus, "CONSOLE: %s", console->log_str); ++ __brcmf_err(bus, __func__, "CONSOLE: %s", ++ console->log_str); + else + pr_debug("CONSOLE: %s", console->log_str); + console->log_idx = 0; diff --git a/package/kernel/mac80211/patches/865-brcmfmac-get-RAM-info-right-before-downloading-PCIe-.patch b/package/kernel/mac80211/patches/865-brcmfmac-get-RAM-info-right-before-downloading-PCIe-.patch index 17a9168bed..d16ad66f48 100644 --- a/package/kernel/mac80211/patches/865-brcmfmac-get-RAM-info-right-before-downloading-PCIe-.patch +++ b/package/kernel/mac80211/patches/865-brcmfmac-get-RAM-info-right-before-downloading-PCIe-.patch @@ -55,7 +55,7 @@ Signed-off-by: Rafał Miłecki void brcmf_chip_detach(struct brcmf_chip *chip); --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c -@@ -1761,6 +1761,12 @@ static void brcmf_pcie_setup(struct devi +@@ -1762,6 +1762,12 @@ static void brcmf_pcie_setup(struct devi brcmf_pcie_attach(devinfo); -- 2.25.1