]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop ethtool patch from all queues
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Oct 2023 17:49:52 +0000 (19:49 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Oct 2023 17:49:52 +0000 (19:49 +0200)
queue-5.10/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch [deleted file]
queue-5.10/series
queue-5.15/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch [deleted file]
queue-5.15/series
queue-6.1/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch [deleted file]
queue-6.1/series
queue-6.5/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch [deleted file]
queue-6.5/series

diff --git a/queue-5.10/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch b/queue-5.10/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
deleted file mode 100644 (file)
index 8672ade..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-From f76a812f0f10d0b21d77f2cb1118b131bc34f28f Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 9 Oct 2023 15:36:45 +0200
-Subject: ethtool: Fix mod state of verbose no_mask bitset
-
-From: Kory Maincent <kory.maincent@bootlin.com>
-
-[ Upstream commit 108a36d07c01edbc5942d27c92494d1c6e4d45a0 ]
-
-A bitset without mask in a _SET request means we want exactly the bits in
-the bitset to be set. This works correctly for compact format but when
-verbose format is parsed, ethnl_update_bitset32_verbose() only sets the
-bits present in the request bitset but does not clear the rest. The commit
-6699170376ab fixes this issue by clearing the whole target bitmap before we
-start iterating. The solution proposed brought an issue with the behavior
-of the mod variable. As the bitset is always cleared the old val will
-always differ to the new val.
-
-Fix it by adding a new temporary variable which save the state of the old
-bitmap.
-
-Fixes: 6699170376ab ("ethtool: fix application of verbose no_mask bitset")
-Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
-Reviewed-by: Simon Horman <horms@kernel.org>
-Link: https://lore.kernel.org/r/20231009133645.44503-1-kory.maincent@bootlin.com
-Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- net/ethtool/bitset.c | 32 ++++++++++++++++++++++++++------
- 1 file changed, 26 insertions(+), 6 deletions(-)
-
-diff --git a/net/ethtool/bitset.c b/net/ethtool/bitset.c
-index 0515d6604b3b9..883ed9be81f9f 100644
---- a/net/ethtool/bitset.c
-+++ b/net/ethtool/bitset.c
-@@ -431,8 +431,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-                             ethnl_string_array_t names,
-                             struct netlink_ext_ack *extack, bool *mod)
- {
-+      u32 *orig_bitmap, *saved_bitmap = NULL;
-       struct nlattr *bit_attr;
-       bool no_mask;
-+      bool dummy;
-       int rem;
-       int ret;
-@@ -448,8 +450,22 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-       }
-       no_mask = tb[ETHTOOL_A_BITSET_NOMASK];
--      if (no_mask)
--              ethnl_bitmap32_clear(bitmap, 0, nbits, mod);
-+      if (no_mask) {
-+              unsigned int nwords = DIV_ROUND_UP(nbits, 32);
-+              unsigned int nbytes = nwords * sizeof(u32);
-+
-+              /* The bitmap size is only the size of the map part without
-+               * its mask part.
-+               */
-+              saved_bitmap = kcalloc(nwords, sizeof(u32), GFP_KERNEL);
-+              if (!saved_bitmap)
-+                      return -ENOMEM;
-+              memcpy(saved_bitmap, bitmap, nbytes);
-+              ethnl_bitmap32_clear(bitmap, 0, nbits, &dummy);
-+              orig_bitmap = saved_bitmap;
-+      } else {
-+              orig_bitmap = bitmap;
-+      }
-       nla_for_each_nested(bit_attr, tb[ETHTOOL_A_BITSET_BITS], rem) {
-               bool old_val, new_val;
-@@ -458,13 +474,14 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               if (nla_type(bit_attr) != ETHTOOL_A_BITSET_BITS_BIT) {
-                       NL_SET_ERR_MSG_ATTR(extack, bit_attr,
-                                           "only ETHTOOL_A_BITSET_BITS_BIT allowed in ETHTOOL_A_BITSET_BITS");
--                      return -EINVAL;
-+                      ret = -EINVAL;
-+                      goto out;
-               }
-               ret = ethnl_parse_bit(&idx, &new_val, nbits, bit_attr, no_mask,
-                                     names, extack);
-               if (ret < 0)
--                      return ret;
--              old_val = bitmap[idx / 32] & ((u32)1 << (idx % 32));
-+                      goto out;
-+              old_val = orig_bitmap[idx / 32] & ((u32)1 << (idx % 32));
-               if (new_val != old_val) {
-                       if (new_val)
-                               bitmap[idx / 32] |= ((u32)1 << (idx % 32));
-@@ -474,7 +491,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               }
-       }
--      return 0;
-+      ret = 0;
-+out:
-+      kfree(saved_bitmap);
-+      return ret;
- }
- static int ethnl_compact_sanity_checks(unsigned int nbits,
--- 
-2.40.1
-
index bcc6eb9c56ab731970a7062ff33a80dbf56fa372..86673e00afeab6ebef8d5ebb5dd9538dcc495408 100644 (file)
@@ -22,7 +22,6 @@ net-macsec-indicate-next-pn-update-when-offloading.patch
 net-phy-mscc-macsec-reject-pn-update-requests.patch
 ixgbe-fix-crash-with-empty-vf-macvlan-list.patch
 net-nfc-fix-races-in-nfc_llcp_sock_get-and-nfc_llcp_.patch
-ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
 pinctrl-renesas-rzn1-enable-missing-pinmux.patch
 nfc-nci-assert-requested-protocol-is-valid.patch
 workqueue-override-implicit-ordered-attribute-in-wor.patch
diff --git a/queue-5.15/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch b/queue-5.15/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
deleted file mode 100644 (file)
index 24bcc3e..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-From aa33590a57ca33b47f9f686d021f74ad53c26cd8 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 9 Oct 2023 15:36:45 +0200
-Subject: ethtool: Fix mod state of verbose no_mask bitset
-
-From: Kory Maincent <kory.maincent@bootlin.com>
-
-[ Upstream commit 108a36d07c01edbc5942d27c92494d1c6e4d45a0 ]
-
-A bitset without mask in a _SET request means we want exactly the bits in
-the bitset to be set. This works correctly for compact format but when
-verbose format is parsed, ethnl_update_bitset32_verbose() only sets the
-bits present in the request bitset but does not clear the rest. The commit
-6699170376ab fixes this issue by clearing the whole target bitmap before we
-start iterating. The solution proposed brought an issue with the behavior
-of the mod variable. As the bitset is always cleared the old val will
-always differ to the new val.
-
-Fix it by adding a new temporary variable which save the state of the old
-bitmap.
-
-Fixes: 6699170376ab ("ethtool: fix application of verbose no_mask bitset")
-Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
-Reviewed-by: Simon Horman <horms@kernel.org>
-Link: https://lore.kernel.org/r/20231009133645.44503-1-kory.maincent@bootlin.com
-Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- net/ethtool/bitset.c | 32 ++++++++++++++++++++++++++------
- 1 file changed, 26 insertions(+), 6 deletions(-)
-
-diff --git a/net/ethtool/bitset.c b/net/ethtool/bitset.c
-index 0515d6604b3b9..883ed9be81f9f 100644
---- a/net/ethtool/bitset.c
-+++ b/net/ethtool/bitset.c
-@@ -431,8 +431,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-                             ethnl_string_array_t names,
-                             struct netlink_ext_ack *extack, bool *mod)
- {
-+      u32 *orig_bitmap, *saved_bitmap = NULL;
-       struct nlattr *bit_attr;
-       bool no_mask;
-+      bool dummy;
-       int rem;
-       int ret;
-@@ -448,8 +450,22 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-       }
-       no_mask = tb[ETHTOOL_A_BITSET_NOMASK];
--      if (no_mask)
--              ethnl_bitmap32_clear(bitmap, 0, nbits, mod);
-+      if (no_mask) {
-+              unsigned int nwords = DIV_ROUND_UP(nbits, 32);
-+              unsigned int nbytes = nwords * sizeof(u32);
-+
-+              /* The bitmap size is only the size of the map part without
-+               * its mask part.
-+               */
-+              saved_bitmap = kcalloc(nwords, sizeof(u32), GFP_KERNEL);
-+              if (!saved_bitmap)
-+                      return -ENOMEM;
-+              memcpy(saved_bitmap, bitmap, nbytes);
-+              ethnl_bitmap32_clear(bitmap, 0, nbits, &dummy);
-+              orig_bitmap = saved_bitmap;
-+      } else {
-+              orig_bitmap = bitmap;
-+      }
-       nla_for_each_nested(bit_attr, tb[ETHTOOL_A_BITSET_BITS], rem) {
-               bool old_val, new_val;
-@@ -458,13 +474,14 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               if (nla_type(bit_attr) != ETHTOOL_A_BITSET_BITS_BIT) {
-                       NL_SET_ERR_MSG_ATTR(extack, bit_attr,
-                                           "only ETHTOOL_A_BITSET_BITS_BIT allowed in ETHTOOL_A_BITSET_BITS");
--                      return -EINVAL;
-+                      ret = -EINVAL;
-+                      goto out;
-               }
-               ret = ethnl_parse_bit(&idx, &new_val, nbits, bit_attr, no_mask,
-                                     names, extack);
-               if (ret < 0)
--                      return ret;
--              old_val = bitmap[idx / 32] & ((u32)1 << (idx % 32));
-+                      goto out;
-+              old_val = orig_bitmap[idx / 32] & ((u32)1 << (idx % 32));
-               if (new_val != old_val) {
-                       if (new_val)
-                               bitmap[idx / 32] |= ((u32)1 << (idx % 32));
-@@ -474,7 +491,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               }
-       }
--      return 0;
-+      ret = 0;
-+out:
-+      kfree(saved_bitmap);
-+      return ret;
- }
- static int ethnl_compact_sanity_checks(unsigned int nbits,
--- 
-2.40.1
-
index 41792fae0d50a04dfe0689074a9bd70b6899285e..e63408e5681146d09887e62c191d9f485e50af24 100644 (file)
@@ -34,7 +34,6 @@ net-phy-mscc-macsec-reject-pn-update-requests.patch
 ixgbe-fix-crash-with-empty-vf-macvlan-list.patch
 net-mlx5e-again-mutually-exclude-rx-fcs-and-rx-port-.patch
 net-nfc-fix-races-in-nfc_llcp_sock_get-and-nfc_llcp_.patch
-ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
 net-smc-fix-pos-miscalculation-in-statistics.patch
 pinctrl-renesas-rzn1-enable-missing-pinmux.patch
 nfc-nci-assert-requested-protocol-is-valid.patch
diff --git a/queue-6.1/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch b/queue-6.1/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
deleted file mode 100644 (file)
index bd27196..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-From a48c130ea0bb4ed842e7d7e5532aade89a800f5a Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 9 Oct 2023 15:36:45 +0200
-Subject: ethtool: Fix mod state of verbose no_mask bitset
-
-From: Kory Maincent <kory.maincent@bootlin.com>
-
-[ Upstream commit 108a36d07c01edbc5942d27c92494d1c6e4d45a0 ]
-
-A bitset without mask in a _SET request means we want exactly the bits in
-the bitset to be set. This works correctly for compact format but when
-verbose format is parsed, ethnl_update_bitset32_verbose() only sets the
-bits present in the request bitset but does not clear the rest. The commit
-6699170376ab fixes this issue by clearing the whole target bitmap before we
-start iterating. The solution proposed brought an issue with the behavior
-of the mod variable. As the bitset is always cleared the old val will
-always differ to the new val.
-
-Fix it by adding a new temporary variable which save the state of the old
-bitmap.
-
-Fixes: 6699170376ab ("ethtool: fix application of verbose no_mask bitset")
-Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
-Reviewed-by: Simon Horman <horms@kernel.org>
-Link: https://lore.kernel.org/r/20231009133645.44503-1-kory.maincent@bootlin.com
-Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- net/ethtool/bitset.c | 32 ++++++++++++++++++++++++++------
- 1 file changed, 26 insertions(+), 6 deletions(-)
-
-diff --git a/net/ethtool/bitset.c b/net/ethtool/bitset.c
-index 0515d6604b3b9..883ed9be81f9f 100644
---- a/net/ethtool/bitset.c
-+++ b/net/ethtool/bitset.c
-@@ -431,8 +431,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-                             ethnl_string_array_t names,
-                             struct netlink_ext_ack *extack, bool *mod)
- {
-+      u32 *orig_bitmap, *saved_bitmap = NULL;
-       struct nlattr *bit_attr;
-       bool no_mask;
-+      bool dummy;
-       int rem;
-       int ret;
-@@ -448,8 +450,22 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-       }
-       no_mask = tb[ETHTOOL_A_BITSET_NOMASK];
--      if (no_mask)
--              ethnl_bitmap32_clear(bitmap, 0, nbits, mod);
-+      if (no_mask) {
-+              unsigned int nwords = DIV_ROUND_UP(nbits, 32);
-+              unsigned int nbytes = nwords * sizeof(u32);
-+
-+              /* The bitmap size is only the size of the map part without
-+               * its mask part.
-+               */
-+              saved_bitmap = kcalloc(nwords, sizeof(u32), GFP_KERNEL);
-+              if (!saved_bitmap)
-+                      return -ENOMEM;
-+              memcpy(saved_bitmap, bitmap, nbytes);
-+              ethnl_bitmap32_clear(bitmap, 0, nbits, &dummy);
-+              orig_bitmap = saved_bitmap;
-+      } else {
-+              orig_bitmap = bitmap;
-+      }
-       nla_for_each_nested(bit_attr, tb[ETHTOOL_A_BITSET_BITS], rem) {
-               bool old_val, new_val;
-@@ -458,13 +474,14 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               if (nla_type(bit_attr) != ETHTOOL_A_BITSET_BITS_BIT) {
-                       NL_SET_ERR_MSG_ATTR(extack, bit_attr,
-                                           "only ETHTOOL_A_BITSET_BITS_BIT allowed in ETHTOOL_A_BITSET_BITS");
--                      return -EINVAL;
-+                      ret = -EINVAL;
-+                      goto out;
-               }
-               ret = ethnl_parse_bit(&idx, &new_val, nbits, bit_attr, no_mask,
-                                     names, extack);
-               if (ret < 0)
--                      return ret;
--              old_val = bitmap[idx / 32] & ((u32)1 << (idx % 32));
-+                      goto out;
-+              old_val = orig_bitmap[idx / 32] & ((u32)1 << (idx % 32));
-               if (new_val != old_val) {
-                       if (new_val)
-                               bitmap[idx / 32] |= ((u32)1 << (idx % 32));
-@@ -474,7 +491,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               }
-       }
--      return 0;
-+      ret = 0;
-+out:
-+      kfree(saved_bitmap);
-+      return ret;
- }
- static int ethnl_compact_sanity_checks(unsigned int nbits,
--- 
-2.40.1
-
index 49e1f1efb4f419b0ca6cb56de06324cdcaaa4eea..db511f256b7957f1963e0e27cc631b9f8f5c450d 100644 (file)
@@ -59,7 +59,6 @@ net-mlx5e-macsec-use-update_pn-flag-instead-of-pn-co.patch
 ixgbe-fix-crash-with-empty-vf-macvlan-list.patch
 net-mlx5e-again-mutually-exclude-rx-fcs-and-rx-port-.patch
 net-nfc-fix-races-in-nfc_llcp_sock_get-and-nfc_llcp_.patch
-ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
 net-smc-fix-pos-miscalculation-in-statistics.patch
 pinctrl-renesas-rzn1-enable-missing-pinmux.patch
 nfc-nci-assert-requested-protocol-is-valid.patch
diff --git a/queue-6.5/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch b/queue-6.5/ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
deleted file mode 100644 (file)
index b4450f3..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-From e86daf36d0bae53b9d3a6e6ecb4a85e921a348cd Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 9 Oct 2023 15:36:45 +0200
-Subject: ethtool: Fix mod state of verbose no_mask bitset
-
-From: Kory Maincent <kory.maincent@bootlin.com>
-
-[ Upstream commit 108a36d07c01edbc5942d27c92494d1c6e4d45a0 ]
-
-A bitset without mask in a _SET request means we want exactly the bits in
-the bitset to be set. This works correctly for compact format but when
-verbose format is parsed, ethnl_update_bitset32_verbose() only sets the
-bits present in the request bitset but does not clear the rest. The commit
-6699170376ab fixes this issue by clearing the whole target bitmap before we
-start iterating. The solution proposed brought an issue with the behavior
-of the mod variable. As the bitset is always cleared the old val will
-always differ to the new val.
-
-Fix it by adding a new temporary variable which save the state of the old
-bitmap.
-
-Fixes: 6699170376ab ("ethtool: fix application of verbose no_mask bitset")
-Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
-Reviewed-by: Simon Horman <horms@kernel.org>
-Link: https://lore.kernel.org/r/20231009133645.44503-1-kory.maincent@bootlin.com
-Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- net/ethtool/bitset.c | 32 ++++++++++++++++++++++++++------
- 1 file changed, 26 insertions(+), 6 deletions(-)
-
-diff --git a/net/ethtool/bitset.c b/net/ethtool/bitset.c
-index 0515d6604b3b9..883ed9be81f9f 100644
---- a/net/ethtool/bitset.c
-+++ b/net/ethtool/bitset.c
-@@ -431,8 +431,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-                             ethnl_string_array_t names,
-                             struct netlink_ext_ack *extack, bool *mod)
- {
-+      u32 *orig_bitmap, *saved_bitmap = NULL;
-       struct nlattr *bit_attr;
-       bool no_mask;
-+      bool dummy;
-       int rem;
-       int ret;
-@@ -448,8 +450,22 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-       }
-       no_mask = tb[ETHTOOL_A_BITSET_NOMASK];
--      if (no_mask)
--              ethnl_bitmap32_clear(bitmap, 0, nbits, mod);
-+      if (no_mask) {
-+              unsigned int nwords = DIV_ROUND_UP(nbits, 32);
-+              unsigned int nbytes = nwords * sizeof(u32);
-+
-+              /* The bitmap size is only the size of the map part without
-+               * its mask part.
-+               */
-+              saved_bitmap = kcalloc(nwords, sizeof(u32), GFP_KERNEL);
-+              if (!saved_bitmap)
-+                      return -ENOMEM;
-+              memcpy(saved_bitmap, bitmap, nbytes);
-+              ethnl_bitmap32_clear(bitmap, 0, nbits, &dummy);
-+              orig_bitmap = saved_bitmap;
-+      } else {
-+              orig_bitmap = bitmap;
-+      }
-       nla_for_each_nested(bit_attr, tb[ETHTOOL_A_BITSET_BITS], rem) {
-               bool old_val, new_val;
-@@ -458,13 +474,14 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               if (nla_type(bit_attr) != ETHTOOL_A_BITSET_BITS_BIT) {
-                       NL_SET_ERR_MSG_ATTR(extack, bit_attr,
-                                           "only ETHTOOL_A_BITSET_BITS_BIT allowed in ETHTOOL_A_BITSET_BITS");
--                      return -EINVAL;
-+                      ret = -EINVAL;
-+                      goto out;
-               }
-               ret = ethnl_parse_bit(&idx, &new_val, nbits, bit_attr, no_mask,
-                                     names, extack);
-               if (ret < 0)
--                      return ret;
--              old_val = bitmap[idx / 32] & ((u32)1 << (idx % 32));
-+                      goto out;
-+              old_val = orig_bitmap[idx / 32] & ((u32)1 << (idx % 32));
-               if (new_val != old_val) {
-                       if (new_val)
-                               bitmap[idx / 32] |= ((u32)1 << (idx % 32));
-@@ -474,7 +491,10 @@ ethnl_update_bitset32_verbose(u32 *bitmap, unsigned int nbits,
-               }
-       }
--      return 0;
-+      ret = 0;
-+out:
-+      kfree(saved_bitmap);
-+      return ret;
- }
- static int ethnl_compact_sanity_checks(unsigned int nbits,
--- 
-2.40.1
-
index 469e39fc471d17dbc47d08e1b56133bffb7931bf..83f43ccc6ee2bbbe5a25a7a4d86ab336fb310d75 100644 (file)
@@ -78,7 +78,6 @@ net-mlx5e-again-mutually-exclude-rx-fcs-and-rx-port-.patch
 s390-bpf-fix-clobbering-the-caller-s-backchain-in-th.patch
 s390-bpf-fix-unwinding-past-the-trampoline.patch
 net-nfc-fix-races-in-nfc_llcp_sock_get-and-nfc_llcp_.patch
-ethtool-fix-mod-state-of-verbose-no_mask-bitset.patch
 net-smc-fix-pos-miscalculation-in-statistics.patch
 net-tcp-fix-crashes-trying-to-free-half-baked-mtu-pr.patch
 pinctrl-renesas-rzn1-enable-missing-pinmux.patch