From a07a21eaf31421a5ecfd94610739c5633c80ecf5 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Tue, 15 Nov 2016 17:42:41 +0100 Subject: [PATCH] 4.4-stable patches added patches: alsa-info-limit-the-proc-text-input-size.patch alsa-info-return-error-for-invalid-read-write.patch asoc-cs4270-fix-dapm-stream-name-mismatch.patch --- ...-info-limit-the-proc-text-input-size.patch | 37 +++++++++++++++ ...-return-error-for-invalid-read-write.patch | 47 +++++++++++++++++++ ...cs4270-fix-dapm-stream-name-mismatch.patch | 42 +++++++++++++++++ queue-4.4/series | 3 ++ queue-4.8/series | 3 ++ 5 files changed, 132 insertions(+) create mode 100644 queue-4.4/alsa-info-limit-the-proc-text-input-size.patch create mode 100644 queue-4.4/alsa-info-return-error-for-invalid-read-write.patch create mode 100644 queue-4.4/asoc-cs4270-fix-dapm-stream-name-mismatch.patch create mode 100644 queue-4.4/series create mode 100644 queue-4.8/series diff --git a/queue-4.4/alsa-info-limit-the-proc-text-input-size.patch b/queue-4.4/alsa-info-limit-the-proc-text-input-size.patch new file mode 100644 index 00000000000..369bf22a36a --- /dev/null +++ b/queue-4.4/alsa-info-limit-the-proc-text-input-size.patch @@ -0,0 +1,37 @@ +From 027a9fe6835620422b6713892175716f3613dd9d Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Sun, 30 Oct 2016 22:18:45 +0100 +Subject: ALSA: info: Limit the proc text input size + +From: Takashi Iwai + +commit 027a9fe6835620422b6713892175716f3613dd9d upstream. + +The ALSA proc handler allows currently the write in the unlimited size +until kmalloc() fails. But basically the write is supposed to be only +for small inputs, mostly for one line inputs, and we don't have to +handle too large sizes at all. Since the kmalloc error results in the +kernel warning, it's better to limit the size beforehand. + +This patch adds the limit of 16kB, which must be large enough for the +currently existing code. + +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/core/info.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/sound/core/info.c ++++ b/sound/core/info.c +@@ -331,6 +331,9 @@ static ssize_t snd_info_text_entry_write + if (!valid_pos(pos, count)) + return -EIO; + next = pos + count; ++ /* don't handle too large text inputs */ ++ if (next > 16 * 1024) ++ return -EIO; + mutex_lock(&entry->access); + buf = data->wbuffer; + if (!buf) { diff --git a/queue-4.4/alsa-info-return-error-for-invalid-read-write.patch b/queue-4.4/alsa-info-return-error-for-invalid-read-write.patch new file mode 100644 index 00000000000..4b6318db486 --- /dev/null +++ b/queue-4.4/alsa-info-return-error-for-invalid-read-write.patch @@ -0,0 +1,47 @@ +From 6809cd682b82dfff47943850d1a8c714f971b5ca Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Sun, 30 Oct 2016 22:13:19 +0100 +Subject: ALSA: info: Return error for invalid read/write + +From: Takashi Iwai + +commit 6809cd682b82dfff47943850d1a8c714f971b5ca upstream. + +Currently the ALSA proc handler allows read or write even if the proc +file were write-only or read-only. It's mostly harmless, does thing +but allocating memory and ignores the input/output. But it doesn't +tell user about the invalid use, and it's confusing and inconsistent +in comparison with other proc files. + +This patch adds some sanity checks and let the proc handler returning +an -EIO error when the invalid read/write is performed. + +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/core/info.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/sound/core/info.c ++++ b/sound/core/info.c +@@ -325,6 +325,8 @@ static ssize_t snd_info_text_entry_write + size_t next; + int err = 0; + ++ if (!entry->c.text.write) ++ return -EIO; + pos = *offset; + if (!valid_pos(pos, count)) + return -EIO; +@@ -366,7 +368,9 @@ static int snd_info_seq_show(struct seq_ + struct snd_info_private_data *data = seq->private; + struct snd_info_entry *entry = data->entry; + +- if (entry->c.text.read) { ++ if (!entry->c.text.read) { ++ return -EIO; ++ } else { + data->rbuffer->buffer = (char *)seq; /* XXX hack! */ + entry->c.text.read(entry, data->rbuffer); + } diff --git a/queue-4.4/asoc-cs4270-fix-dapm-stream-name-mismatch.patch b/queue-4.4/asoc-cs4270-fix-dapm-stream-name-mismatch.patch new file mode 100644 index 00000000000..f72ff528070 --- /dev/null +++ b/queue-4.4/asoc-cs4270-fix-dapm-stream-name-mismatch.patch @@ -0,0 +1,42 @@ +From aa5f920993bda2095952177eea79bc8e58ae6065 Mon Sep 17 00:00:00 2001 +From: murray foster +Date: Sun, 9 Oct 2016 13:28:45 -0700 +Subject: ASoC: cs4270: fix DAPM stream name mismatch + +From: murray foster + +commit aa5f920993bda2095952177eea79bc8e58ae6065 upstream. + +Mismatching stream names in DAPM route and widget definitions are +causing compilation errors. Fixing these names allows the cs4270 +driver to compile and function. + +[Errors must be at probe time not compile time -- broonie] + +Signed-off-by: Murray Foster +Acked-by: Paul Handrigan +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + sound/soc/codecs/cs4270.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- a/sound/soc/codecs/cs4270.c ++++ b/sound/soc/codecs/cs4270.c +@@ -148,11 +148,11 @@ SND_SOC_DAPM_OUTPUT("AOUTR"), + }; + + static const struct snd_soc_dapm_route cs4270_dapm_routes[] = { +- { "Capture", NULL, "AINA" }, +- { "Capture", NULL, "AINB" }, ++ { "Capture", NULL, "AINL" }, ++ { "Capture", NULL, "AINR" }, + +- { "AOUTA", NULL, "Playback" }, +- { "AOUTB", NULL, "Playback" }, ++ { "AOUTL", NULL, "Playback" }, ++ { "AOUTR", NULL, "Playback" }, + }; + + /** diff --git a/queue-4.4/series b/queue-4.4/series new file mode 100644 index 00000000000..d393108446c --- /dev/null +++ b/queue-4.4/series @@ -0,0 +1,3 @@ +alsa-info-return-error-for-invalid-read-write.patch +alsa-info-limit-the-proc-text-input-size.patch +asoc-cs4270-fix-dapm-stream-name-mismatch.patch diff --git a/queue-4.8/series b/queue-4.8/series new file mode 100644 index 00000000000..d393108446c --- /dev/null +++ b/queue-4.8/series @@ -0,0 +1,3 @@ +alsa-info-return-error-for-invalid-read-write.patch +alsa-info-limit-the-proc-text-input-size.patch +asoc-cs4270-fix-dapm-stream-name-mismatch.patch -- 2.47.3