From: Sasha Levin Date: Thu, 15 Dec 2022 17:25:54 +0000 (-0500) Subject: Fixes for 4.9 X-Git-Tag: v5.4.228~9 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9961fe4de438e97dfacc39bf359c1531928a610e;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 4.9 Signed-off-by: Sasha Levin --- diff --git a/queue-4.9/asoc-ops-check-bounds-for-second-channel-in-snd_soc_.patch b/queue-4.9/asoc-ops-check-bounds-for-second-channel-in-snd_soc_.patch new file mode 100644 index 00000000000..fda85e8a73e --- /dev/null +++ b/queue-4.9/asoc-ops-check-bounds-for-second-channel-in-snd_soc_.patch @@ -0,0 +1,41 @@ +From 87b8722c3cf4006378aa10cc9997768cf0921cd2 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 11 May 2022 14:41:37 +0100 +Subject: ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx() + +From: Mark Brown + +[ Upstream commit 97eea946b93961fffd29448dcda7398d0d51c4b2 ] + +The bounds checks in snd_soc_put_volsw_sx() are only being applied to the +first channel, meaning it is possible to write out of bounds values to the +second channel in stereo controls. Add appropriate checks. + +Signed-off-by: Mark Brown +Link: https://lore.kernel.org/r/20220511134137.169575-2-broonie@kernel.org +Signed-off-by: Mark Brown +Signed-off-by: Sasha Levin +--- + sound/soc/soc-ops.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/sound/soc/soc-ops.c b/sound/soc/soc-ops.c +index 5479927391d4..8294430aaf9a 100644 +--- a/sound/soc/soc-ops.c ++++ b/sound/soc/soc-ops.c +@@ -465,6 +465,12 @@ int snd_soc_put_volsw_sx(struct snd_kcontrol *kcontrol, + if (snd_soc_volsw_is_stereo(mc)) { + val_mask = mask << rshift; + val2 = (ucontrol->value.integer.value[1] + min) & mask; ++ ++ if (mc->platform_max && val2 > mc->platform_max) ++ return -EINVAL; ++ if (val2 > max) ++ return -EINVAL; ++ + val2 = val2 << rshift; + + err = snd_soc_component_update_bits(component, reg2, val_mask, +-- +2.35.1 + diff --git a/queue-4.9/can-sja1000-fix-size-of-ocr_mode_mask-define.patch b/queue-4.9/can-sja1000-fix-size-of-ocr_mode_mask-define.patch new file mode 100644 index 00000000000..f50df885764 --- /dev/null +++ b/queue-4.9/can-sja1000-fix-size-of-ocr_mode_mask-define.patch @@ -0,0 +1,36 @@ +From 97d3feb03f9166ca56d6a69110c0cd417ffc5709 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 23 Nov 2022 08:16:36 +0100 +Subject: can: sja1000: fix size of OCR_MODE_MASK define + +From: Heiko Schocher + +[ Upstream commit 26e8f6a75248247982458e8237b98c9fb2ffcf9d ] + +bitfield mode in ocr register has only 2 bits not 3, so correct +the OCR_MODE_MASK define. + +Signed-off-by: Heiko Schocher +Link: https://lore.kernel.org/all/20221123071636.2407823-1-hs@denx.de +Signed-off-by: Marc Kleine-Budde +Signed-off-by: Sasha Levin +--- + include/linux/can/platform/sja1000.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/linux/can/platform/sja1000.h b/include/linux/can/platform/sja1000.h +index 93570b61ec6c..919f3329d822 100644 +--- a/include/linux/can/platform/sja1000.h ++++ b/include/linux/can/platform/sja1000.h +@@ -13,7 +13,7 @@ + #define OCR_MODE_TEST 0x01 + #define OCR_MODE_NORMAL 0x02 + #define OCR_MODE_CLOCK 0x03 +-#define OCR_MODE_MASK 0x07 ++#define OCR_MODE_MASK 0x03 + #define OCR_TX0_INVERT 0x04 + #define OCR_TX0_PULLDOWN 0x08 + #define OCR_TX0_PULLUP 0x10 +-- +2.35.1 + diff --git a/queue-4.9/net-loopback-use-net_name_predictable-for-name_assig.patch b/queue-4.9/net-loopback-use-net_name_predictable-for-name_assig.patch new file mode 100644 index 00000000000..9d6639c0914 --- /dev/null +++ b/queue-4.9/net-loopback-use-net_name_predictable-for-name_assig.patch @@ -0,0 +1,50 @@ +From c5e2c0da142613b20323b8a4029bf63f8a04bcb4 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 23 Nov 2022 15:18:28 +0100 +Subject: net: loopback: use NET_NAME_PREDICTABLE for name_assign_type + +From: Rasmus Villemoes + +[ Upstream commit 31d929de5a112ee1b977a89c57de74710894bbbf ] + +When the name_assign_type attribute was introduced (commit +685343fc3ba6, "net: add name_assign_type netdev attribute"), the +loopback device was explicitly mentioned as one which would make use +of NET_NAME_PREDICTABLE: + + The name_assign_type attribute gives hints where the interface name of a + given net-device comes from. These values are currently defined: +... + NET_NAME_PREDICTABLE: + The ifname has been assigned by the kernel in a predictable way + that is guaranteed to avoid reuse and always be the same for a + given device. Examples include statically created devices like + the loopback device [...] + +Switch to that so that reading /sys/class/net/lo/name_assign_type +produces something sensible instead of returning -EINVAL. + +Signed-off-by: Rasmus Villemoes +Reviewed-by: Jacob Keller +Signed-off-by: David S. Miller +Signed-off-by: Sasha Levin +--- + drivers/net/loopback.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c +index 1b65f0f975cf..f04f9a87840e 100644 +--- a/drivers/net/loopback.c ++++ b/drivers/net/loopback.c +@@ -194,7 +194,7 @@ static __net_init int loopback_net_init(struct net *net) + int err; + + err = -ENOMEM; +- dev = alloc_netdev(0, "lo", NET_NAME_UNKNOWN, loopback_setup); ++ dev = alloc_netdev(0, "lo", NET_NAME_PREDICTABLE, loopback_setup); + if (!dev) + goto out; + +-- +2.35.1 + diff --git a/queue-4.9/series b/queue-4.9/series index 811aae376b3..b7f64ff9dde 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -1,3 +1,6 @@ mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi.patch mm-khugepaged-invoke-mmu-notifiers-in-shmem-file-collapse-paths.patch block-unhash-blkdev-part-inode-when-the-part-is-deleted.patch +asoc-ops-check-bounds-for-second-channel-in-snd_soc_.patch +can-sja1000-fix-size-of-ocr_mode_mask-define.patch +net-loopback-use-net_name_predictable-for-name_assig.patch