]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.15-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Jun 2022 07:10:40 +0000 (09:10 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Jun 2022 07:10:40 +0000 (09:10 +0200)
added patches:
alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch
alsa-hda-realtek-add-quirk-for-hp-dev-one.patch
alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch
alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch
alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch
cifs-fix-reconnect-on-smb3-mount-types.patch
cifs-return-errors-during-session-setup-during-reconnects.patch

queue-5.15/alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch [new file with mode: 0644]
queue-5.15/alsa-hda-realtek-add-quirk-for-hp-dev-one.patch [new file with mode: 0644]
queue-5.15/alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch [new file with mode: 0644]
queue-5.15/alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch [new file with mode: 0644]
queue-5.15/alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch [new file with mode: 0644]
queue-5.15/cifs-fix-reconnect-on-smb3-mount-types.patch [new file with mode: 0644]
queue-5.15/cifs-return-errors-during-session-setup-during-reconnects.patch [new file with mode: 0644]
queue-5.15/series

diff --git a/queue-5.15/alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch b/queue-5.15/alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch
new file mode 100644 (file)
index 0000000..12dd4bf
--- /dev/null
@@ -0,0 +1,37 @@
+From d5ea7544c32ba27c2c5826248e4ff58bd50a2518 Mon Sep 17 00:00:00 2001
+From: huangwenhui <huangwenhuia@uniontech.com>
+Date: Tue, 7 Jun 2022 14:56:31 +0800
+Subject: ALSA: hda/conexant - Fix loopback issue with CX20632
+
+From: huangwenhui <huangwenhuia@uniontech.com>
+
+commit d5ea7544c32ba27c2c5826248e4ff58bd50a2518 upstream.
+
+On a machine with CX20632, Alsamixer doesn't have 'Loopback
+Mixing' and 'Line'.
+
+Signed-off-by: huangwenhui <huangwenhuia@uniontech.com>
+Cc: <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20220607065631.10708-1-huangwenhuia@uniontech.com
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/pci/hda/patch_conexant.c |    7 +++++++
+ 1 file changed, 7 insertions(+)
+
+--- a/sound/pci/hda/patch_conexant.c
++++ b/sound/pci/hda/patch_conexant.c
+@@ -1052,6 +1052,13 @@ static int patch_conexant_auto(struct hd
+               snd_hda_pick_fixup(codec, cxt5051_fixup_models,
+                                  cxt5051_fixups, cxt_fixups);
+               break;
++      case 0x14f15098:
++              codec->pin_amp_workaround = 1;
++              spec->gen.mixer_nid = 0x22;
++              spec->gen.add_stereo_mix_input = HDA_HINT_STEREO_MIX_AUTO;
++              snd_hda_pick_fixup(codec, cxt5066_fixup_models,
++                                 cxt5066_fixups, cxt_fixups);
++              break;
+       case 0x14f150f2:
+               codec->power_save_node = 1;
+               fallthrough;
diff --git a/queue-5.15/alsa-hda-realtek-add-quirk-for-hp-dev-one.patch b/queue-5.15/alsa-hda-realtek-add-quirk-for-hp-dev-one.patch
new file mode 100644 (file)
index 0000000..78e844f
--- /dev/null
@@ -0,0 +1,32 @@
+From 5f3d696eea916693b2d4ed7e62794653fcdd6ec0 Mon Sep 17 00:00:00 2001
+From: Jeremy Soller <jeremy@system76.com>
+Date: Wed, 8 Jun 2022 08:01:11 -0600
+Subject: ALSA: hda/realtek: Add quirk for HP Dev One
+
+From: Jeremy Soller <jeremy@system76.com>
+
+commit 5f3d696eea916693b2d4ed7e62794653fcdd6ec0 upstream.
+
+Enables the audio mute LEDs and limits the mic boost to avoid picking up
+noise.
+
+Signed-off-by: Jeremy Soller <jeremy@system76.com>
+Signed-off-by: Tim Crawford <tcrawford@system76.com>
+Cc: <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20220608140111.23170-1-tcrawford@system76.com
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/pci/hda/patch_realtek.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -8847,6 +8847,7 @@ static const struct snd_pci_quirk alc269
+       SND_PCI_QUIRK(0x103c, 0x88d0, "HP Pavilion 15-eh1xxx (mainboard 88D0)", ALC287_FIXUP_HP_GPIO_LED),
+       SND_PCI_QUIRK(0x103c, 0x89c3, "HP", ALC285_FIXUP_HP_GPIO_LED),
+       SND_PCI_QUIRK(0x103c, 0x89ca, "HP", ALC236_FIXUP_HP_MUTE_LED_MICMUTE_VREF),
++      SND_PCI_QUIRK(0x103c, 0x8a78, "HP Dev One", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST),
+       SND_PCI_QUIRK(0x1043, 0x103e, "ASUS X540SA", ALC256_FIXUP_ASUS_MIC),
+       SND_PCI_QUIRK(0x1043, 0x103f, "ASUS TX300", ALC282_FIXUP_ASUS_TX300),
+       SND_PCI_QUIRK(0x1043, 0x106d, "Asus K53BE", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
diff --git a/queue-5.15/alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch b/queue-5.15/alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch
new file mode 100644 (file)
index 0000000..05c5aa5
--- /dev/null
@@ -0,0 +1,35 @@
+From 85743a847caeab696dafc4ce1a7e1e2b7e29a0f6 Mon Sep 17 00:00:00 2001
+From: Cameron Berkenpas <cam@neo-zeon.de>
+Date: Sun, 5 Jun 2022 17:23:30 -0700
+Subject: ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo Yoga DuetITL 2021
+
+From: Cameron Berkenpas <cam@neo-zeon.de>
+
+commit 85743a847caeab696dafc4ce1a7e1e2b7e29a0f6 upstream.
+
+Enables the ALC287_FIXUP_YOGA7_14ITL_SPEAKERS quirk for the Lenovo
+Yoga DuetITL 2021 laptop to fix speaker output.
+
+[ re-sorted in the SSID order by tiwai ]
+
+BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=208555
+Signed-off-by: Cameron Berkenpas <cam@neo-zeon.de>
+Co-authored-by: Songine <donglingluoying@gmail.com>
+Cc: stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20220606002329.215330-1-cam@neo-zeon.de
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/pci/hda/patch_realtek.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -9043,6 +9043,7 @@ static const struct snd_pci_quirk alc269
+       SND_PCI_QUIRK(0x17aa, 0x3176, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC),
+       SND_PCI_QUIRK(0x17aa, 0x3178, "ThinkCentre Station", ALC283_FIXUP_HEADSET_MIC),
+       SND_PCI_QUIRK(0x17aa, 0x31af, "ThinkCentre Station", ALC623_FIXUP_LENOVO_THINKSTATION_P340),
++      SND_PCI_QUIRK(0x17aa, 0x3802, "Lenovo Yoga DuetITL 2021", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS),
+       SND_PCI_QUIRK(0x17aa, 0x3813, "Legion 7i 15IMHG05", ALC287_FIXUP_LEGION_15IMHG05_SPEAKERS),
+       SND_PCI_QUIRK(0x17aa, 0x3818, "Lenovo C940", ALC298_FIXUP_LENOVO_SPK_VOLUME),
+       SND_PCI_QUIRK(0x17aa, 0x3819, "Lenovo 13s Gen2 ITL", ALC287_FIXUP_13S_GEN2_SPEAKERS),
diff --git a/queue-5.15/alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch b/queue-5.15/alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch
new file mode 100644 (file)
index 0000000..b3b1375
--- /dev/null
@@ -0,0 +1,71 @@
+From e0469d6581aecb0e34e2ec64f39f88e6985cc52f Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Mon, 6 Jun 2022 18:09:10 +0200
+Subject: ALSA: usb-audio: Set up (implicit) sync for Saffire 6
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit e0469d6581aecb0e34e2ec64f39f88e6985cc52f upstream.
+
+Focusrite Saffire 6 has fixed audioformat quirks with multiple
+endpoints assigned to a single altsetting.  Unfortunately the generic
+parser couldn't detect the sync endpoint correctly as the implicit
+sync due to the missing EP attribute bits.  In the former kernels, it
+used to work somehow casually, but it's been broken for a while after
+the large code change in 5.11.
+
+This patch cures the regression by the following:
+- Allow the static quirk table to provide the sync EP information;
+  we just need to fill the fields and let the generic parser skipping
+  parsing if sync_ep is already set.
+- Add the sync endpoint information to the entry for Saffire 6.
+
+Fixes: 7b0efea4baf0 ("ALSA: usb-audio: Add missing ep_idx in fixed EP quirks")
+Reported-and-tested-by: AndrĂ© Kapelrud <a.kapelrud@gmail.com>
+Cc: <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20220606160910.6926-3-tiwai@suse.de
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/usb/pcm.c          | 3 +++
+ sound/usb/quirks-table.h | 7 ++++++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c
+index b0369df53910..e692ae04436a 100644
+--- a/sound/usb/pcm.c
++++ b/sound/usb/pcm.c
+@@ -291,6 +291,9 @@ int snd_usb_audioformat_set_sync_ep(struct snd_usb_audio *chip,
+       bool is_playback;
+       int err;
++      if (fmt->sync_ep)
++              return 0; /* already set up */
++
+       alts = snd_usb_get_host_interface(chip, fmt->iface, fmt->altsetting);
+       if (!alts)
+               return 0;
+diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
+index 78eb41b621d6..4f56e1784932 100644
+--- a/sound/usb/quirks-table.h
++++ b/sound/usb/quirks-table.h
+@@ -2658,7 +2658,12 @@ YAMAHA_DEVICE(0x7010, "UB99"),
+                                       .nr_rates = 2,
+                                       .rate_table = (unsigned int[]) {
+                                               44100, 48000
+-                                      }
++                                      },
++                                      .sync_ep = 0x82,
++                                      .sync_iface = 0,
++                                      .sync_altsetting = 1,
++                                      .sync_ep_idx = 1,
++                                      .implicit_fb = 1,
+                               }
+                       },
+                       {
+-- 
+2.36.1
+
diff --git a/queue-5.15/alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch b/queue-5.15/alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch
new file mode 100644 (file)
index 0000000..119a107
--- /dev/null
@@ -0,0 +1,46 @@
+From efb75df105e82f076a85b9f2d81410428bcb55fc Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Mon, 6 Jun 2022 18:09:09 +0200
+Subject: ALSA: usb-audio: Skip generic sync EP parse for secondary EP
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit efb75df105e82f076a85b9f2d81410428bcb55fc upstream.
+
+When ep_idx is already non-zero, it means usually a capture stream
+that is set up explicity by a fixed-format quirk, and applying the
+check for generic (non-implicit-fb) sync EPs might hit incorrectly,
+resulting in a bogus sync endpoint for the capture stream.
+
+This patch adds a check for the ep_idx and skip if it's a secondary
+endpoint.  It's a part of the fixes for regressions on Saffire 6.
+
+Fixes: 7b0efea4baf0 ("ALSA: usb-audio: Add missing ep_idx in fixed EP quirks")
+Reported-and-tested-by: AndrĂ© Kapelrud <a.kapelrud@gmail.com>
+Cc: <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20220606160910.6926-2-tiwai@suse.de
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ sound/usb/pcm.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c
+index b470404a5376..b0369df53910 100644
+--- a/sound/usb/pcm.c
++++ b/sound/usb/pcm.c
+@@ -304,7 +304,7 @@ int snd_usb_audioformat_set_sync_ep(struct snd_usb_audio *chip,
+        * Generic sync EP handling
+        */
+-      if (altsd->bNumEndpoints < 2)
++      if (fmt->ep_idx > 0 || altsd->bNumEndpoints < 2)
+               return 0;
+       is_playback = !(get_endpoint(alts, 0)->bEndpointAddress & USB_DIR_IN);
+-- 
+2.36.1
+
diff --git a/queue-5.15/cifs-fix-reconnect-on-smb3-mount-types.patch b/queue-5.15/cifs-fix-reconnect-on-smb3-mount-types.patch
new file mode 100644 (file)
index 0000000..43d4790
--- /dev/null
@@ -0,0 +1,88 @@
+From c36ee7dab7749f7be21f7a72392744490b2a9a2b Mon Sep 17 00:00:00 2001
+From: Paulo Alcantara <pc@cjr.nz>
+Date: Sun, 5 Jun 2022 19:54:26 -0300
+Subject: cifs: fix reconnect on smb3 mount types
+
+From: Paulo Alcantara <pc@cjr.nz>
+
+commit c36ee7dab7749f7be21f7a72392744490b2a9a2b upstream.
+
+cifs.ko defines two file system types: cifs & smb3, and
+__cifs_get_super() was not including smb3 file system type when
+looking up superblocks, therefore failing to reconnect tcons in
+cifs_tree_connect().
+
+Fix this by calling iterate_supers_type() on both file system types.
+
+Link: https://lore.kernel.org/r/CAFrh3J9soC36+BVuwHB=g9z_KB5Og2+p2_W+BBoBOZveErz14w@mail.gmail.com
+Cc: stable@vger.kernel.org
+Tested-by: Satadru Pramanik <satadru@gmail.com>
+Reported-by: Satadru Pramanik <satadru@gmail.com>
+Signed-off-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
+Signed-off-by: Steve French <stfrench@microsoft.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/cifs/cifsfs.c |    2 +-
+ fs/cifs/cifsfs.h |    2 +-
+ fs/cifs/misc.c   |   27 ++++++++++++++++-----------
+ 3 files changed, 18 insertions(+), 13 deletions(-)
+
+--- a/fs/cifs/cifsfs.c
++++ b/fs/cifs/cifsfs.c
+@@ -1074,7 +1074,7 @@ struct file_system_type cifs_fs_type = {
+ };
+ MODULE_ALIAS_FS("cifs");
+-static struct file_system_type smb3_fs_type = {
++struct file_system_type smb3_fs_type = {
+       .owner = THIS_MODULE,
+       .name = "smb3",
+       .init_fs_context = smb3_init_fs_context,
+--- a/fs/cifs/cifsfs.h
++++ b/fs/cifs/cifsfs.h
+@@ -38,7 +38,7 @@ static inline unsigned long cifs_get_tim
+       return (unsigned long) dentry->d_fsdata;
+ }
+-extern struct file_system_type cifs_fs_type;
++extern struct file_system_type cifs_fs_type, smb3_fs_type;
+ extern const struct address_space_operations cifs_addr_ops;
+ extern const struct address_space_operations cifs_addr_ops_smallbuf;
+--- a/fs/cifs/misc.c
++++ b/fs/cifs/misc.c
+@@ -1212,18 +1212,23 @@ static struct super_block *__cifs_get_su
+               .data = data,
+               .sb = NULL,
+       };
++      struct file_system_type **fs_type = (struct file_system_type *[]) {
++              &cifs_fs_type, &smb3_fs_type, NULL,
++      };
+-      iterate_supers_type(&cifs_fs_type, f, &sd);
+-
+-      if (!sd.sb)
+-              return ERR_PTR(-EINVAL);
+-      /*
+-       * Grab an active reference in order to prevent automounts (DFS links)
+-       * of expiring and then freeing up our cifs superblock pointer while
+-       * we're doing failover.
+-       */
+-      cifs_sb_active(sd.sb);
+-      return sd.sb;
++      for (; *fs_type; fs_type++) {
++              iterate_supers_type(*fs_type, f, &sd);
++              if (sd.sb) {
++                      /*
++                       * Grab an active reference in order to prevent automounts (DFS links)
++                       * of expiring and then freeing up our cifs superblock pointer while
++                       * we're doing failover.
++                       */
++                      cifs_sb_active(sd.sb);
++                      return sd.sb;
++              }
++      }
++      return ERR_PTR(-EINVAL);
+ }
+ static void __cifs_put_super(struct super_block *sb)
diff --git a/queue-5.15/cifs-return-errors-during-session-setup-during-reconnects.patch b/queue-5.15/cifs-return-errors-during-session-setup-during-reconnects.patch
new file mode 100644 (file)
index 0000000..1cea667
--- /dev/null
@@ -0,0 +1,37 @@
+From 8ea21823aa584b55ba4b861307093b78054b0c1b Mon Sep 17 00:00:00 2001
+From: Shyam Prasad N <sprasad@microsoft.com>
+Date: Tue, 31 May 2022 12:31:05 +0000
+Subject: cifs: return errors during session setup during reconnects
+
+From: Shyam Prasad N <sprasad@microsoft.com>
+
+commit 8ea21823aa584b55ba4b861307093b78054b0c1b upstream.
+
+During reconnects, we check the return value from
+cifs_negotiate_protocol, and have handlers for both success
+and failures. But if that passes, and cifs_setup_session
+returns any errors other than -EACCES, we do not handle
+that. This fix adds a handler for that, so that we don't
+go ahead and try a tree_connect on a failed session.
+
+Signed-off-by: Shyam Prasad N <sprasad@microsoft.com>
+Reviewed-by: Enzo Matsumiya <ematsumiya@suse.de>
+Cc: stable@vger.kernel.org
+Signed-off-by: Steve French <stfrench@microsoft.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/cifs/smb2pdu.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+--- a/fs/cifs/smb2pdu.c
++++ b/fs/cifs/smb2pdu.c
+@@ -268,6 +268,9 @@ smb2_reconnect(__le16 smb2_command, stru
+                       ses->binding_chan = NULL;
+                       mutex_unlock(&tcon->ses->session_mutex);
+                       goto failed;
++              } else if (rc) {
++                      mutex_unlock(&ses->session_mutex);
++                      goto out;
+               }
+       }
+       /*
index bb773ec59a484167f19bdae8161215ccf2e2d76d..61b2fa2a882a10d6ec205742f2b2d41d68988506 100644 (file)
@@ -212,3 +212,10 @@ drm-amd-pm-use-bitmap_-from-to-_arr32-where-appropri.patch
 nodemask-fix-return-values-to-be-unsigned.patch
 vringh-fix-loop-descriptors-check-in-the-indirect-ca.patch
 scripts-gdb-change-kernel-config-dumping-method.patch
+alsa-usb-audio-skip-generic-sync-ep-parse-for-secondary-ep.patch
+alsa-usb-audio-set-up-implicit-sync-for-saffire-6.patch
+alsa-hda-conexant-fix-loopback-issue-with-cx20632.patch
+alsa-hda-realtek-fix-for-quirk-to-enable-speaker-output-on-the-lenovo-yoga-duetitl-2021.patch
+alsa-hda-realtek-add-quirk-for-hp-dev-one.patch
+cifs-return-errors-during-session-setup-during-reconnects.patch
+cifs-fix-reconnect-on-smb3-mount-types.patch