From: Greg Kroah-Hartman Date: Tue, 3 Feb 2015 02:51:02 +0000 (-0800) Subject: 3.10-stable patches X-Git-Tag: v3.18.6~18 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b07054d93cd252c1ecca2b03e26ceb6dbef4dc38;p=thirdparty%2Fkernel%2Fstable-queue.git 3.10-stable patches added patches: input-i8042-add-noloop-quirk-for-medion-akoya-e7225-md98857.patch nfs-fix-dio-deadlock-when-o_direct-flag-is-flipped.patch nfsv4.1-fix-an-oops-in-nfs41_walk_client_list.patch --- diff --git a/queue-3.10/input-i8042-add-noloop-quirk-for-medion-akoya-e7225-md98857.patch b/queue-3.10/input-i8042-add-noloop-quirk-for-medion-akoya-e7225-md98857.patch new file mode 100644 index 00000000000..6b9b2488641 --- /dev/null +++ b/queue-3.10/input-i8042-add-noloop-quirk-for-medion-akoya-e7225-md98857.patch @@ -0,0 +1,56 @@ +From 1d90d6d5522befa8efa1a7ea406be65cf865ded4 Mon Sep 17 00:00:00 2001 +From: Jochen Hein +Date: Thu, 22 Jan 2015 12:03:15 -0800 +Subject: Input: i8042 - add noloop quirk for Medion Akoya E7225 (MD98857) + +From: Jochen Hein + +commit 1d90d6d5522befa8efa1a7ea406be65cf865ded4 upstream. + +Without this the aux port does not get detected, and consequently the touchpad +will not work. + +With this patch the touchpad is detected: + +$ dmesg | grep -E "(SYN|i8042|serio)" +pnp 00:03: Plug and Play ACPI device, IDs SYN1d22 PNP0f13 (active) +i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12 +serio: i8042 KBD port at 0x60,0x64 irq 1 +serio: i8042 AUX port at 0x60,0x64 irq 12 +input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input4 +psmouse serio1: synaptics: Touchpad model: 1, fw: 8.1, id: 0x1e2b1, caps: 0xd00123/0x840300/0x126800, board id: 2863, fw id: 1473085 +input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio1/input/input6 + +dmidecode excerpt for this laptop is: + +Handle 0x0001, DMI type 1, 27 bytes +System Information + Manufacturer: Medion + Product Name: Akoya E7225 + Version: 1.0 + +Signed-off-by: Jochen Hein +Signed-off-by: Dmitry Torokhov +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/input/serio/i8042-x86ia64io.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +--- a/drivers/input/serio/i8042-x86ia64io.h ++++ b/drivers/input/serio/i8042-x86ia64io.h +@@ -152,6 +152,14 @@ static const struct dmi_system_id __init + }, + }, + { ++ /* Medion Akoya E7225 */ ++ .matches = { ++ DMI_MATCH(DMI_SYS_VENDOR, "Medion"), ++ DMI_MATCH(DMI_PRODUCT_NAME, "Akoya E7225"), ++ DMI_MATCH(DMI_PRODUCT_VERSION, "1.0"), ++ }, ++ }, ++ { + /* Blue FB5601 */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "blue"), diff --git a/queue-3.10/nfs-fix-dio-deadlock-when-o_direct-flag-is-flipped.patch b/queue-3.10/nfs-fix-dio-deadlock-when-o_direct-flag-is-flipped.patch new file mode 100644 index 00000000000..3e47ad9e275 --- /dev/null +++ b/queue-3.10/nfs-fix-dio-deadlock-when-o_direct-flag-is-flipped.patch @@ -0,0 +1,38 @@ +From ee8a1a8b160a87dc3a9c81a86796aa4db85ea815 Mon Sep 17 00:00:00 2001 +From: Peng Tao +Date: Tue, 20 Jan 2015 07:44:29 +0800 +Subject: nfs: fix dio deadlock when O_DIRECT flag is flipped + +From: Peng Tao + +commit ee8a1a8b160a87dc3a9c81a86796aa4db85ea815 upstream. + +We only support swap file calling nfs_direct_IO. However, application +might be able to get to nfs_direct_IO if it toggles O_DIRECT flag +during IO and it can deadlock because we grab inode->i_mutex in +nfs_file_direct_write(). So return 0 for such case. Then the generic +layer will fall back to buffer IO. + +Signed-off-by: Peng Tao +Signed-off-by: Trond Myklebust +Signed-off-by: Greg Kroah-Hartman + +--- + fs/nfs/direct.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/fs/nfs/direct.c ++++ b/fs/nfs/direct.c +@@ -123,6 +123,12 @@ static inline int put_dreq(struct nfs_di + */ + ssize_t nfs_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov, loff_t pos, unsigned long nr_segs) + { ++ struct inode *inode = iocb->ki_filp->f_mapping->host; ++ ++ /* we only support swap file calling nfs_direct_IO */ ++ if (!IS_SWAPFILE(inode)) ++ return 0; ++ + #ifndef CONFIG_NFS_SWAP + dprintk("NFS: nfs_direct_IO (%s) off/no(%Ld/%lu) EINVAL\n", + iocb->ki_filp->f_path.dentry->d_name.name, diff --git a/queue-3.10/nfsv4.1-fix-an-oops-in-nfs41_walk_client_list.patch b/queue-3.10/nfsv4.1-fix-an-oops-in-nfs41_walk_client_list.patch new file mode 100644 index 00000000000..949d73ccde7 --- /dev/null +++ b/queue-3.10/nfsv4.1-fix-an-oops-in-nfs41_walk_client_list.patch @@ -0,0 +1,32 @@ +From 3175e1dcec40fab1a444c010087f2068b6b04732 Mon Sep 17 00:00:00 2001 +From: Trond Myklebust +Date: Wed, 21 Jan 2015 14:37:44 -0500 +Subject: NFSv4.1: Fix an Oops in nfs41_walk_client_list + +From: Trond Myklebust + +commit 3175e1dcec40fab1a444c010087f2068b6b04732 upstream. + +If we start state recovery on a client that failed to initialise correctly, +then we are very likely to Oops. + +Reported-by: "Mkrtchyan, Tigran" +Link: http://lkml.kernel.org/r/130621862.279655.1421851650684.JavaMail.zimbra@desy.de +Signed-off-by: Trond Myklebust +Signed-off-by: Greg Kroah-Hartman + +--- + fs/nfs/nfs4client.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/fs/nfs/nfs4client.c ++++ b/fs/nfs/nfs4client.c +@@ -462,7 +462,7 @@ int nfs41_walk_client_list(struct nfs_cl + prev = pos; + + status = nfs_wait_client_init_complete(pos); +- if (status == 0) { ++ if (pos->cl_cons_state == NFS_CS_SESSION_INITING) { + nfs4_schedule_lease_recovery(pos); + status = nfs4_wait_clnt_recover(pos); + } diff --git a/queue-3.10/series b/queue-3.10/series index 15b287bb605..09d00618441 100644 --- a/queue-3.10/series +++ b/queue-3.10/series @@ -6,3 +6,6 @@ can-kvaser_usb-retry-the-first-bulk-transfer-on-etimedout.patch can-kvaser_usb-fix-state-handling-upon-bus_error-events.patch powerpc-xmon-fix-another-endiannes-issue-in-rtas-call-from-xmon.patch alsa-seq-dummy-remove-deadlock-causing-events-on-close.patch +input-i8042-add-noloop-quirk-for-medion-akoya-e7225-md98857.patch +nfs-fix-dio-deadlock-when-o_direct-flag-is-flipped.patch +nfsv4.1-fix-an-oops-in-nfs41_walk_client_list.patch