From: Greg Kroah-Hartman Date: Mon, 30 Oct 2017 08:56:48 +0000 (+0100) Subject: 3.18-stable patches X-Git-Tag: v3.18.79~17 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=691065b4b1abdff3f32499c823557ee7cb150699;p=thirdparty%2Fkernel%2Fstable-queue.git 3.18-stable patches added patches: alsa-hda-fix-headset-mic-problem-for-dell-machines-with-alc236.patch ceph-unlock-dangling-spinlock-in-try_flush_caps.patch --- diff --git a/queue-3.18/alsa-hda-fix-headset-mic-problem-for-dell-machines-with-alc236.patch b/queue-3.18/alsa-hda-fix-headset-mic-problem-for-dell-machines-with-alc236.patch new file mode 100644 index 00000000000..9f7f1e88018 --- /dev/null +++ b/queue-3.18/alsa-hda-fix-headset-mic-problem-for-dell-machines-with-alc236.patch @@ -0,0 +1,38 @@ +From f265788c336979090ac80b9ae173aa817c4fe40d Mon Sep 17 00:00:00 2001 +From: Hui Wang +Date: Tue, 24 Oct 2017 16:53:34 +0800 +Subject: ALSA: hda - fix headset mic problem for Dell machines with alc236 + +From: Hui Wang + +commit f265788c336979090ac80b9ae173aa817c4fe40d upstream. + +We have several Dell laptops which use the codec alc236, the headset +mic can't work on these machines. Following the commit 736f20a70, we +add the pin cfg table to make the headset mic work. + +Signed-off-by: Hui Wang +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_realtek.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -5635,6 +5635,14 @@ static const struct snd_hda_pin_quirk al + ALC225_STANDARD_PINS, + {0x12, 0xb7a60130}, + {0x1b, 0x90170110}), ++ SND_HDA_PIN_QUIRK(0x10ec0236, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, ++ {0x12, 0x90a60140}, ++ {0x14, 0x90170110}, ++ {0x21, 0x02211020}), ++ SND_HDA_PIN_QUIRK(0x10ec0236, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, ++ {0x12, 0x90a60140}, ++ {0x14, 0x90170150}, ++ {0x21, 0x02211020}), + SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL2_MIC_NO_PRESENCE, + ALC255_STANDARD_PINS, + {0x12, 0x40300000}, diff --git a/queue-3.18/ceph-unlock-dangling-spinlock-in-try_flush_caps.patch b/queue-3.18/ceph-unlock-dangling-spinlock-in-try_flush_caps.patch new file mode 100644 index 00000000000..67c98eb8a4e --- /dev/null +++ b/queue-3.18/ceph-unlock-dangling-spinlock-in-try_flush_caps.patch @@ -0,0 +1,48 @@ +From 6c2838fbdedb9b72a81c931d49e56b229b6cdbca Mon Sep 17 00:00:00 2001 +From: Jeff Layton +Date: Thu, 19 Oct 2017 08:52:58 -0400 +Subject: ceph: unlock dangling spinlock in try_flush_caps() + +From: Jeff Layton + +commit 6c2838fbdedb9b72a81c931d49e56b229b6cdbca upstream. + +sparse warns: + + fs/ceph/caps.c:2042:9: warning: context imbalance in 'try_flush_caps' - wrong count at exit + +We need to exit this function with the lock unlocked, but a couple of +cases leave it locked. + +Signed-off-by: Jeff Layton +Reviewed-by: "Yan, Zheng" +Reviewed-by: Ilya Dryomov +Signed-off-by: Ilya Dryomov +Signed-off-by: Greg Kroah-Hartman + +--- + fs/ceph/caps.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- a/fs/ceph/caps.c ++++ b/fs/ceph/caps.c +@@ -1748,6 +1748,7 @@ static int try_flush_caps(struct inode * + retry: + spin_lock(&ci->i_ceph_lock); + if (ci->i_ceph_flags & CEPH_I_NOFLUSH) { ++ spin_unlock(&ci->i_ceph_lock); + dout("try_flush_caps skipping %p I_NOFLUSH set\n", inode); + goto out; + } +@@ -1765,8 +1766,10 @@ retry: + mutex_lock(&session->s_mutex); + goto retry; + } +- if (cap->session->s_state < CEPH_MDS_SESSION_OPEN) ++ if (cap->session->s_state < CEPH_MDS_SESSION_OPEN) { ++ spin_unlock(&ci->i_ceph_lock); + goto out; ++ } + + flushing = __mark_caps_flushing(inode, session); +