mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 07:22:33 +00:00
223 lines
6.7 KiB
Diff
223 lines
6.7 KiB
Diff
|
From 3b07c3a6e4adebd0466f5e539f318224db8cfc37 Mon Sep 17 00:00:00 2001
|
||
|
From: Christian Marangi <ansuelsmth@gmail.com>
|
||
|
Date: Sat, 6 May 2023 15:29:52 +0200
|
||
|
Subject: [PATCH] ath10k-ct: fix compilation warning for debug level
|
||
|
|
||
|
Rework read_debug_level function as it does exceed the stack limit for
|
||
|
some arch.
|
||
|
Fix compilation error:
|
||
|
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-malta_be/ath10k-ct-regular/ath10k-ct-2022-05-13-f808496f/ath10k-5.15/debug.c: In function 'ath10k_read_debug_level':
|
||
|
/__w/openwrt/openwrt/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-malta_be/ath10k-ct-regular/ath10k-ct-2022-05-13-f808496f/ath10k-5.15/debug.c:1388:1: error: the frame size of 1440 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
|
||
|
1388 | }
|
||
|
| ^
|
||
|
|
||
|
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||
|
---
|
||
|
ath10k-5.15/debug.c | 85 +++++++++++++++++++++++++--------------------
|
||
|
ath10k-5.17/debug.c | 85 +++++++++++++++++++++++++--------------------
|
||
|
2 files changed, 96 insertions(+), 74 deletions(-)
|
||
|
|
||
|
diff --git a/ath10k-5.15/debug.c b/ath10k-5.15/debug.c
|
||
|
index af84012..d0fa911 100644
|
||
|
--- a/ath10k-5.15/debug.c
|
||
|
+++ b/ath10k-5.15/debug.c
|
||
|
@@ -1344,47 +1344,58 @@ static const struct file_operations fops_simulate_fw_crash = {
|
||
|
.llseek = default_llseek,
|
||
|
};
|
||
|
|
||
|
+static const char debug_level_buf[] =
|
||
|
+ "To change debug level, set value adding up desired flags:\n"
|
||
|
+ "PCI: 0x1\n"
|
||
|
+ "WMI: 0x2\n"
|
||
|
+ "HTC: 0x4\n"
|
||
|
+ "HTT: 0x8\n"
|
||
|
+ "MAC: 0x10\n"
|
||
|
+ "BOOT: 0x20\n"
|
||
|
+ "PCI-DUMP: 0x40\n"
|
||
|
+ "HTT-DUMP: 0x80\n"
|
||
|
+ "MGMT: 0x100\n"
|
||
|
+ "DATA: 0x200\n"
|
||
|
+ "BMI: 0x400\n"
|
||
|
+ "REGULATORY: 0x800\n"
|
||
|
+ "TESTMODE: 0x1000\n"
|
||
|
+ "WMI-PRINT: 0x2000\n"
|
||
|
+ "PCI-PS: 0x4000\n"
|
||
|
+ "AHB: 0x8000\n"
|
||
|
+ "SDIO: 0x10000\n"
|
||
|
+ "SDIO_DUMP: 0x20000\n"
|
||
|
+ "USB: 0x40000\n"
|
||
|
+ "USB_BULK: 0x80000\n"
|
||
|
+ "SNOC: 0x100000\n"
|
||
|
+ "QMI: 0x200000\n"
|
||
|
+ "BEACONS: 0x8000000\n"
|
||
|
+ "NO-FW-DBGLOG:0x10000000\n"
|
||
|
+ "MAC2: 0x20000000\n"
|
||
|
+ "INFO-AS-DBG: 0x40000000\n"
|
||
|
+ "FW: 0x80000000\n"
|
||
|
+ "ALL: 0xEFFFFFFF\n";
|
||
|
+
|
||
|
+#define READ_DEBUG_LEVEL_SIZE sizeof(debug_level_buf) + 60
|
||
|
+
|
||
|
static ssize_t ath10k_read_debug_level(struct file *file,
|
||
|
char __user *user_buf,
|
||
|
size_t count, loff_t *ppos)
|
||
|
{
|
||
|
- int sz;
|
||
|
- const char buf[] =
|
||
|
- "To change debug level, set value adding up desired flags:\n"
|
||
|
- "PCI: 0x1\n"
|
||
|
- "WMI: 0x2\n"
|
||
|
- "HTC: 0x4\n"
|
||
|
- "HTT: 0x8\n"
|
||
|
- "MAC: 0x10\n"
|
||
|
- "BOOT: 0x20\n"
|
||
|
- "PCI-DUMP: 0x40\n"
|
||
|
- "HTT-DUMP: 0x80\n"
|
||
|
- "MGMT: 0x100\n"
|
||
|
- "DATA: 0x200\n"
|
||
|
- "BMI: 0x400\n"
|
||
|
- "REGULATORY: 0x800\n"
|
||
|
- "TESTMODE: 0x1000\n"
|
||
|
- "WMI-PRINT: 0x2000\n"
|
||
|
- "PCI-PS: 0x4000\n"
|
||
|
- "AHB: 0x8000\n"
|
||
|
- "SDIO: 0x10000\n"
|
||
|
- "SDIO_DUMP: 0x20000\n"
|
||
|
- "USB: 0x40000\n"
|
||
|
- "USB_BULK: 0x80000\n"
|
||
|
- "SNOC: 0x100000\n"
|
||
|
- "QMI: 0x200000\n"
|
||
|
- "BEACONS: 0x8000000\n"
|
||
|
- "NO-FW-DBGLOG:0x10000000\n"
|
||
|
- "MAC2: 0x20000000\n"
|
||
|
- "INFO-AS-DBG: 0x40000000\n"
|
||
|
- "FW: 0x80000000\n"
|
||
|
- "ALL: 0xEFFFFFFF\n";
|
||
|
- char wbuf[sizeof(buf) + 60];
|
||
|
- sz = snprintf(wbuf, sizeof(wbuf), "Current debug level: 0x%x\n\n%s",
|
||
|
- ath10k_debug_mask, buf);
|
||
|
- wbuf[sizeof(wbuf) - 1] = 0;
|
||
|
-
|
||
|
- return simple_read_from_buffer(user_buf, count, ppos, wbuf, sz);
|
||
|
+ int sz, ret;
|
||
|
+ char *wbuf;
|
||
|
+
|
||
|
+ wbuf = kcalloc(READ_DEBUG_LEVEL_SIZE, sizeof(char), GFP_KERNEL);
|
||
|
+ if (!wbuf)
|
||
|
+ return -ENOMEM;
|
||
|
+
|
||
|
+ sz = snprintf(wbuf, READ_DEBUG_LEVEL_SIZE,
|
||
|
+ "Current debug level: 0x%x\n\n%s",
|
||
|
+ ath10k_debug_mask, debug_level_buf);
|
||
|
+
|
||
|
+ ret = simple_read_from_buffer(user_buf, count, ppos, wbuf, sz);
|
||
|
+ kfree(wbuf);
|
||
|
+
|
||
|
+ return ret;
|
||
|
}
|
||
|
|
||
|
/* Set logging level.
|
||
|
diff --git a/ath10k-5.17/debug.c b/ath10k-5.17/debug.c
|
||
|
index af84012..d0fa911 100644
|
||
|
--- a/ath10k-5.17/debug.c
|
||
|
+++ b/ath10k-5.17/debug.c
|
||
|
@@ -1344,47 +1344,58 @@ static const struct file_operations fops_simulate_fw_crash = {
|
||
|
.llseek = default_llseek,
|
||
|
};
|
||
|
|
||
|
+static const char debug_level_buf[] =
|
||
|
+ "To change debug level, set value adding up desired flags:\n"
|
||
|
+ "PCI: 0x1\n"
|
||
|
+ "WMI: 0x2\n"
|
||
|
+ "HTC: 0x4\n"
|
||
|
+ "HTT: 0x8\n"
|
||
|
+ "MAC: 0x10\n"
|
||
|
+ "BOOT: 0x20\n"
|
||
|
+ "PCI-DUMP: 0x40\n"
|
||
|
+ "HTT-DUMP: 0x80\n"
|
||
|
+ "MGMT: 0x100\n"
|
||
|
+ "DATA: 0x200\n"
|
||
|
+ "BMI: 0x400\n"
|
||
|
+ "REGULATORY: 0x800\n"
|
||
|
+ "TESTMODE: 0x1000\n"
|
||
|
+ "WMI-PRINT: 0x2000\n"
|
||
|
+ "PCI-PS: 0x4000\n"
|
||
|
+ "AHB: 0x8000\n"
|
||
|
+ "SDIO: 0x10000\n"
|
||
|
+ "SDIO_DUMP: 0x20000\n"
|
||
|
+ "USB: 0x40000\n"
|
||
|
+ "USB_BULK: 0x80000\n"
|
||
|
+ "SNOC: 0x100000\n"
|
||
|
+ "QMI: 0x200000\n"
|
||
|
+ "BEACONS: 0x8000000\n"
|
||
|
+ "NO-FW-DBGLOG:0x10000000\n"
|
||
|
+ "MAC2: 0x20000000\n"
|
||
|
+ "INFO-AS-DBG: 0x40000000\n"
|
||
|
+ "FW: 0x80000000\n"
|
||
|
+ "ALL: 0xEFFFFFFF\n";
|
||
|
+
|
||
|
+#define READ_DEBUG_LEVEL_SIZE sizeof(debug_level_buf) + 60
|
||
|
+
|
||
|
static ssize_t ath10k_read_debug_level(struct file *file,
|
||
|
char __user *user_buf,
|
||
|
size_t count, loff_t *ppos)
|
||
|
{
|
||
|
- int sz;
|
||
|
- const char buf[] =
|
||
|
- "To change debug level, set value adding up desired flags:\n"
|
||
|
- "PCI: 0x1\n"
|
||
|
- "WMI: 0x2\n"
|
||
|
- "HTC: 0x4\n"
|
||
|
- "HTT: 0x8\n"
|
||
|
- "MAC: 0x10\n"
|
||
|
- "BOOT: 0x20\n"
|
||
|
- "PCI-DUMP: 0x40\n"
|
||
|
- "HTT-DUMP: 0x80\n"
|
||
|
- "MGMT: 0x100\n"
|
||
|
- "DATA: 0x200\n"
|
||
|
- "BMI: 0x400\n"
|
||
|
- "REGULATORY: 0x800\n"
|
||
|
- "TESTMODE: 0x1000\n"
|
||
|
- "WMI-PRINT: 0x2000\n"
|
||
|
- "PCI-PS: 0x4000\n"
|
||
|
- "AHB: 0x8000\n"
|
||
|
- "SDIO: 0x10000\n"
|
||
|
- "SDIO_DUMP: 0x20000\n"
|
||
|
- "USB: 0x40000\n"
|
||
|
- "USB_BULK: 0x80000\n"
|
||
|
- "SNOC: 0x100000\n"
|
||
|
- "QMI: 0x200000\n"
|
||
|
- "BEACONS: 0x8000000\n"
|
||
|
- "NO-FW-DBGLOG:0x10000000\n"
|
||
|
- "MAC2: 0x20000000\n"
|
||
|
- "INFO-AS-DBG: 0x40000000\n"
|
||
|
- "FW: 0x80000000\n"
|
||
|
- "ALL: 0xEFFFFFFF\n";
|
||
|
- char wbuf[sizeof(buf) + 60];
|
||
|
- sz = snprintf(wbuf, sizeof(wbuf), "Current debug level: 0x%x\n\n%s",
|
||
|
- ath10k_debug_mask, buf);
|
||
|
- wbuf[sizeof(wbuf) - 1] = 0;
|
||
|
-
|
||
|
- return simple_read_from_buffer(user_buf, count, ppos, wbuf, sz);
|
||
|
+ int sz, ret;
|
||
|
+ char *wbuf;
|
||
|
+
|
||
|
+ wbuf = kcalloc(READ_DEBUG_LEVEL_SIZE, sizeof(char), GFP_KERNEL);
|
||
|
+ if (!wbuf)
|
||
|
+ return -ENOMEM;
|
||
|
+
|
||
|
+ sz = snprintf(wbuf, READ_DEBUG_LEVEL_SIZE,
|
||
|
+ "Current debug level: 0x%x\n\n%s",
|
||
|
+ ath10k_debug_mask, debug_level_buf);
|
||
|
+
|
||
|
+ ret = simple_read_from_buffer(user_buf, count, ppos, wbuf, sz);
|
||
|
+ kfree(wbuf);
|
||
|
+
|
||
|
+ return ret;
|
||
|
}
|
||
|
|
||
|
/* Set logging level.
|
||
|
--
|
||
|
2.39.2
|
||
|
|