From 69025a71004894be80ceba2146274564f0340a75 Mon Sep 17 00:00:00 2001
From: "Lukas F. Hartmann" <lukas@mntre.com>
Date: Mon, 7 Oct 2024 13:52:45 +0200
Subject: [PATCH] another fix for 6.11

---
 CORE/SERVICES/COMMON/osdep_adf.h |  2 +-
 CORE/UTILS/PKTLOG/linux_ac.c     | 26 ++++++++++++++------------
 2 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/CORE/SERVICES/COMMON/osdep_adf.h b/CORE/SERVICES/COMMON/osdep_adf.h
index 7a19bea68..0db9ec3ea 100644
--- a/CORE/SERVICES/COMMON/osdep_adf.h
+++ b/CORE/SERVICES/COMMON/osdep_adf.h
@@ -162,7 +162,7 @@ typedef unsigned long TQUEUE_ARG;
 #define mark_bh(a)
 
 #define ATH_SYSCTL_DECL(f, ctl, write, filp, buffer, lenp, ppos) \
-    f(struct ctl_table *ctl, int write, void *buffer,                   \
+    f(const struct ctl_table *ctl, int write, void *buffer,                   \
         size_t *lenp, loff_t *ppos)
 #define ATH_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer, lenp, ppos) \
     proc_dointvec(ctl, write, buffer, lenp, ppos)
diff --git a/CORE/UTILS/PKTLOG/linux_ac.c b/CORE/UTILS/PKTLOG/linux_ac.c
index e8f55dbf7..00bbf7783 100644
--- a/CORE/UTILS/PKTLOG/linux_ac.c
+++ b/CORE/UTILS/PKTLOG/linux_ac.c
@@ -235,6 +235,7 @@ ATH_SYSCTL_DECL(ath_sysctl_pktlog_enable, ctl, write, filp, buffer, lenp,
 	int ret, enable;
 	ol_ath_generic_softc_handle scn;
 	struct ol_pktlog_dev_t *pl_dev;
+  struct ctl_table* ctl_rw = (struct ctl_table*)ctl;
 
 	mutex_lock(&proc_mutex);
 	scn = (ol_ath_generic_softc_handle) ctl->extra1;
@@ -255,11 +256,11 @@ ATH_SYSCTL_DECL(ath_sysctl_pktlog_enable, ctl, write, filp, buffer, lenp,
 		return -ENODEV;
 	}
 
-	ctl->data = &enable;
-	ctl->maxlen = sizeof(enable);
+	ctl_rw->data = &enable;
+	ctl_rw->maxlen = sizeof(enable);
 
 	if (write) {
-		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer,
+		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl_rw, write, filp, buffer,
 					       lenp, ppos);
 		if (ret == 0)
 			ret = pl_dev->pl_funcs->pktlog_enable(
@@ -269,15 +270,15 @@ ATH_SYSCTL_DECL(ath_sysctl_pktlog_enable, ctl, write, filp, buffer, lenp,
 			printk(PKTLOG_TAG "%s:proc_dointvec failed\n",
 			       __func__);
 	} else {
-		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer,
+		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl_rw, write, filp, buffer,
 					       lenp, ppos);
 		if (ret)
 			printk(PKTLOG_TAG "%s:proc_dointvec failed\n",
 			       __func__);
 	}
 
-	ctl->data = NULL;
-	ctl->maxlen = 0;
+	ctl_rw->data = NULL;
+	ctl_rw->maxlen = 0;
 
 	mutex_unlock(&proc_mutex);
 	return ret;
@@ -296,6 +297,7 @@ ATH_SYSCTL_DECL(ath_sysctl_pktlog_size, ctl, write, filp, buffer, lenp,
 	int ret, size;
 	ol_ath_generic_softc_handle scn;
 	struct ol_pktlog_dev_t *pl_dev;
+  struct ctl_table* ctl_rw = (struct ctl_table*)ctl;
 
 	mutex_lock(&proc_mutex);
 	scn = (ol_ath_generic_softc_handle) ctl->extra1;
@@ -316,11 +318,11 @@ ATH_SYSCTL_DECL(ath_sysctl_pktlog_size, ctl, write, filp, buffer, lenp,
 		return -ENODEV;
 	}
 
-	ctl->data = &size;
-	ctl->maxlen = sizeof(size);
+	ctl_rw->data = &size;
+	ctl_rw->maxlen = sizeof(size);
 
 	if (write) {
-		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer,
+		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl_rw, write, filp, buffer,
 					       lenp, ppos);
 		if (ret == 0)
 			ret = pl_dev->pl_funcs->pktlog_setsize(
@@ -328,12 +330,12 @@ ATH_SYSCTL_DECL(ath_sysctl_pktlog_size, ctl, write, filp, buffer, lenp,
 						size);
 	} else {
 		size = get_pktlog_bufsize(pl_dev);
-		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl, write, filp, buffer,
+		ret = ATH_SYSCTL_PROC_DOINTVEC(ctl_rw, write, filp, buffer,
 					       lenp, ppos);
 	}
 
-	ctl->data = NULL;
-	ctl->maxlen = 0;
+	ctl_rw->data = NULL;
+	ctl_rw->maxlen = 0;
 
 	mutex_unlock(&proc_mutex);
 	return ret;
-- 
GitLab