]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Mar 2023 07:51:12 +0000 (08:51 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Mar 2023 07:51:12 +0000 (08:51 +0100)
added patches:
series
staging-rtl8192e-remove-call_usermodehelper-starting-radiopower.sh.patch
staging-rtl8192e-remove-function-..dm_check_ac_dc_power-calling-a-script.patch
wifi-cfg80211-partial-revert-wifi-cfg80211-fix-use-after-free-for-wext.patch

queue-5.10/series [new file with mode: 0644]
queue-5.10/staging-rtl8192e-remove-call_usermodehelper-starting-radiopower.sh.patch [new file with mode: 0644]
queue-5.10/staging-rtl8192e-remove-function-..dm_check_ac_dc_power-calling-a-script.patch [new file with mode: 0644]
queue-5.10/wifi-cfg80211-partial-revert-wifi-cfg80211-fix-use-after-free-for-wext.patch [new file with mode: 0644]

diff --git a/queue-5.10/series b/queue-5.10/series
new file mode 100644 (file)
index 0000000..3b6624d
--- /dev/null
@@ -0,0 +1,3 @@
+wifi-cfg80211-partial-revert-wifi-cfg80211-fix-use-after-free-for-wext.patch
+staging-rtl8192e-remove-function-..dm_check_ac_dc_power-calling-a-script.patch
+staging-rtl8192e-remove-call_usermodehelper-starting-radiopower.sh.patch
diff --git a/queue-5.10/staging-rtl8192e-remove-call_usermodehelper-starting-radiopower.sh.patch b/queue-5.10/staging-rtl8192e-remove-call_usermodehelper-starting-radiopower.sh.patch
new file mode 100644 (file)
index 0000000..7be9aa0
--- /dev/null
@@ -0,0 +1,50 @@
+From fe413a074a93d56f89e322c786aad8639afe76b4 Mon Sep 17 00:00:00 2001
+From: Philipp Hortmann <philipp.g.hortmann@gmail.com>
+Date: Wed, 1 Mar 2023 22:54:41 +0100
+Subject: staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh
+
+From: Philipp Hortmann <philipp.g.hortmann@gmail.com>
+
+commit fe413a074a93d56f89e322c786aad8639afe76b4 upstream.
+
+Remove call_usermodehelper starting /etc/acpi/events/RadioPower.sh that
+is not available. This script is not part of the kernel and it is not
+officially available on the www. The result is that this lines are just
+dead code.
+
+Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
+Cc: stable <stable@kernel.org>
+Link: https://lore.kernel.org/r/20230301215441.GA14049@matrix-ESPRIMO-P710
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/staging/rtl8192e/rtl8192e/rtl_dm.c |   12 ------------
+ 1 file changed, 12 deletions(-)
+
+--- a/drivers/staging/rtl8192e/rtl8192e/rtl_dm.c
++++ b/drivers/staging/rtl8192e/rtl8192e/rtl_dm.c
+@@ -1773,10 +1773,6 @@ static void _rtl92e_dm_check_rf_ctrl_gpi
+       u8 tmp1byte;
+       enum rt_rf_power_state eRfPowerStateToSet;
+       bool bActuallySet = false;
+-      char *argv[3];
+-      static char const RadioPowerPath[] = "/etc/acpi/events/RadioPower.sh";
+-      static char *envp[] = {"HOME=/", "TERM=linux", "PATH=/usr/bin:/bin",
+-                             NULL};
+       bActuallySet = false;
+@@ -1808,14 +1804,6 @@ static void _rtl92e_dm_check_rf_ctrl_gpi
+               mdelay(1000);
+               priv->bHwRfOffAction = 1;
+               rtl92e_set_rf_state(dev, eRfPowerStateToSet, RF_CHANGE_BY_HW);
+-              if (priv->bHwRadioOff)
+-                      argv[1] = "RFOFF";
+-              else
+-                      argv[1] = "RFON";
+-
+-              argv[0] = (char *)RadioPowerPath;
+-              argv[2] = NULL;
+-              call_usermodehelper(RadioPowerPath, argv, envp, UMH_WAIT_PROC);
+       }
+ }
diff --git a/queue-5.10/staging-rtl8192e-remove-function-..dm_check_ac_dc_power-calling-a-script.patch b/queue-5.10/staging-rtl8192e-remove-function-..dm_check_ac_dc_power-calling-a-script.patch
new file mode 100644 (file)
index 0000000..0d730fe
--- /dev/null
@@ -0,0 +1,72 @@
+From a98fc23cc2c1e4382a79ff137ca1a93d6a73b451 Mon Sep 17 00:00:00 2001
+From: Philipp Hortmann <philipp.g.hortmann@gmail.com>
+Date: Tue, 28 Feb 2023 21:28:57 +0100
+Subject: staging: rtl8192e: Remove function ..dm_check_ac_dc_power calling a script
+
+From: Philipp Hortmann <philipp.g.hortmann@gmail.com>
+
+commit a98fc23cc2c1e4382a79ff137ca1a93d6a73b451 upstream.
+
+Remove function _rtl92e_dm_check_ac_dc_power calling a script
+/etc/acpi/wireless-rtl-ac-dc-power.sh that is not available. This script
+is not part of the kernel and it is not available on the www. The result
+is that this function is just dead code.
+
+Signed-off-by: Philipp Hortmann <philipp.g.hortmann@gmail.com>
+Cc: stable <stable@kernel.org>
+Link: https://lore.kernel.org/r/20230228202857.GA16442@matrix-ESPRIMO-P710
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/staging/rtl8192e/rtl8192e/rtl_dm.c |   27 ---------------------------
+ 1 file changed, 27 deletions(-)
+
+--- a/drivers/staging/rtl8192e/rtl8192e/rtl_dm.c
++++ b/drivers/staging/rtl8192e/rtl8192e/rtl_dm.c
+@@ -185,7 +185,6 @@ static void _rtl92e_dm_init_fsync(struct
+ static void _rtl92e_dm_deinit_fsync(struct net_device *dev);
+ static        void _rtl92e_dm_check_txrateandretrycount(struct net_device *dev);
+-static  void _rtl92e_dm_check_ac_dc_power(struct net_device *dev);
+ static void _rtl92e_dm_check_fsync(struct net_device *dev);
+ static void _rtl92e_dm_check_rf_ctrl_gpio(void *data);
+ static void _rtl92e_dm_fsync_timer_callback(struct timer_list *t);
+@@ -238,8 +237,6 @@ void rtl92e_dm_watchdog(struct net_devic
+       if (priv->being_init_adapter)
+               return;
+-      _rtl92e_dm_check_ac_dc_power(dev);
+-
+       _rtl92e_dm_check_txrateandretrycount(dev);
+       _rtl92e_dm_check_edca_turbo(dev);
+@@ -257,30 +254,6 @@ void rtl92e_dm_watchdog(struct net_devic
+       _rtl92e_dm_cts_to_self(dev);
+ }
+-static void _rtl92e_dm_check_ac_dc_power(struct net_device *dev)
+-{
+-      struct r8192_priv *priv = rtllib_priv(dev);
+-      static char const ac_dc_script[] = "/etc/acpi/wireless-rtl-ac-dc-power.sh";
+-      char *argv[] = {(char *)ac_dc_script, DRV_NAME, NULL};
+-      static char *envp[] = {"HOME=/",
+-                      "TERM=linux",
+-                      "PATH=/usr/bin:/bin",
+-                       NULL};
+-
+-      if (priv->ResetProgress == RESET_TYPE_SILENT) {
+-              RT_TRACE((COMP_INIT | COMP_POWER | COMP_RF),
+-                       "GPIOChangeRFWorkItemCallBack(): Silent Reset!!!!!!!\n");
+-              return;
+-      }
+-
+-      if (priv->rtllib->state != RTLLIB_LINKED)
+-              return;
+-      call_usermodehelper(ac_dc_script, argv, envp, UMH_WAIT_PROC);
+-
+-      return;
+-};
+-
+-
+ void rtl92e_init_adaptive_rate(struct net_device *dev)
+ {
diff --git a/queue-5.10/wifi-cfg80211-partial-revert-wifi-cfg80211-fix-use-after-free-for-wext.patch b/queue-5.10/wifi-cfg80211-partial-revert-wifi-cfg80211-fix-use-after-free-for-wext.patch
new file mode 100644 (file)
index 0000000..94c778d
--- /dev/null
@@ -0,0 +1,39 @@
+From 79d1ed5ca7db67d48e870c979f0e0f6b0947944a Mon Sep 17 00:00:00 2001
+From: Hector Martin <marcan@marcan.st>
+Date: Sat, 11 Mar 2023 23:19:14 +0900
+Subject: wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext"
+
+From: Hector Martin <marcan@marcan.st>
+
+commit 79d1ed5ca7db67d48e870c979f0e0f6b0947944a upstream.
+
+This reverts part of commit 015b8cc5e7c4 ("wifi: cfg80211: Fix use after
+free for wext")
+
+This commit broke WPA offload by unconditionally clearing the crypto
+modes for non-WEP connections. Drop that part of the patch.
+
+Signed-off-by: Hector Martin <marcan@marcan.st>
+Reported-by: Ilya <me@0upti.me>
+Reported-and-tested-by: Janne Grunau <j@jannau.net>
+Reviewed-by: Eric Curtin <ecurtin@redhat.com>
+Fixes: 015b8cc5e7c4 ("wifi: cfg80211: Fix use after free for wext")
+Cc: stable@kernel.org
+Link: https://lore.kernel.org/linux-wireless/ZAx0TWRBlGfv7pNl@kroah.com/T/#m11e6e0915ab8fa19ce8bc9695ab288c0fe018edf
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ net/wireless/sme.c |    2 --
+ 1 file changed, 2 deletions(-)
+
+--- a/net/wireless/sme.c
++++ b/net/wireless/sme.c
+@@ -1264,8 +1264,6 @@ int cfg80211_connect(struct cfg80211_reg
+               connect->key = NULL;
+               connect->key_len = 0;
+               connect->key_idx = 0;
+-              connect->crypto.cipher_group = 0;
+-              connect->crypto.n_ciphers_pairwise = 0;
+       }
+       wdev->connect_keys = connkeys;