All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jiri Slaby <jslaby@suse.cz>
To: stable@vger.kernel.org
Cc: linux-kernel@vger.kernel.org,
	"Jason A. Donenfeld" <Jason@zx2c4.com>,
	Herbert Xu <herbert@gondor.apana.org.au>,
	Jiri Slaby <jslaby@suse.cz>
Subject: [PATCH 3.12 123/142] padata: avoid race in reordering
Date: Mon, 10 Apr 2017 17:33:24 +0200	[thread overview]
Message-ID: <c9645aa7ebb4caa07c1cc7a61f7352c673c4fdfe.1491838390.git.jslaby@suse.cz> (raw)
In-Reply-To: <d4b83d12d815bafc24064e91de353edb2478d8f7.1491838390.git.jslaby@suse.cz>
In-Reply-To: <cover.1491838390.git.jslaby@suse.cz>

From: "Jason A. Donenfeld" <Jason@zx2c4.com>

3.12-stable review patch.  If anyone has any objections, please let me know.

===============

commit de5540d088fe97ad583cc7d396586437b32149a5 upstream.

Under extremely heavy uses of padata, crashes occur, and with list
debugging turned on, this happens instead:

[87487.298728] WARNING: CPU: 1 PID: 882 at lib/list_debug.c:33
__list_add+0xae/0x130
[87487.301868] list_add corruption. prev->next should be next
(ffffb17abfc043d0), but was ffff8dba70872c80. (prev=ffff8dba70872b00).
[87487.339011]  [<ffffffff9a53d075>] dump_stack+0x68/0xa3
[87487.342198]  [<ffffffff99e119a1>] ? console_unlock+0x281/0x6d0
[87487.345364]  [<ffffffff99d6b91f>] __warn+0xff/0x140
[87487.348513]  [<ffffffff99d6b9aa>] warn_slowpath_fmt+0x4a/0x50
[87487.351659]  [<ffffffff9a58b5de>] __list_add+0xae/0x130
[87487.354772]  [<ffffffff9add5094>] ? _raw_spin_lock+0x64/0x70
[87487.357915]  [<ffffffff99eefd66>] padata_reorder+0x1e6/0x420
[87487.361084]  [<ffffffff99ef0055>] padata_do_serial+0xa5/0x120

padata_reorder calls list_add_tail with the list to which its adding
locked, which seems correct:

spin_lock(&squeue->serial.lock);
list_add_tail(&padata->list, &squeue->serial.list);
spin_unlock(&squeue->serial.lock);

This therefore leaves only place where such inconsistency could occur:
if padata->list is added at the same time on two different threads.
This pdata pointer comes from the function call to
padata_get_next(pd), which has in it the following block:

next_queue = per_cpu_ptr(pd->pqueue, cpu);
padata = NULL;
reorder = &next_queue->reorder;
if (!list_empty(&reorder->list)) {
       padata = list_entry(reorder->list.next,
                           struct padata_priv, list);
       spin_lock(&reorder->lock);
       list_del_init(&padata->list);
       atomic_dec(&pd->reorder_objects);
       spin_unlock(&reorder->lock);

       pd->processed++;

       goto out;
}
out:
return padata;

I strongly suspect that the problem here is that two threads can race
on reorder list. Even though the deletion is locked, call to
list_entry is not locked, which means it's feasible that two threads
pick up the same padata object and subsequently call list_add_tail on
them at the same time. The fix is thus be hoist that lock outside of
that block.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Acked-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
 kernel/padata.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/kernel/padata.c b/kernel/padata.c
index 07af2c95dcfe..86473271650f 100644
--- a/kernel/padata.c
+++ b/kernel/padata.c
@@ -190,19 +190,20 @@ static struct padata_priv *padata_get_next(struct parallel_data *pd)
 
 	reorder = &next_queue->reorder;
 
+	spin_lock(&reorder->lock);
 	if (!list_empty(&reorder->list)) {
 		padata = list_entry(reorder->list.next,
 				    struct padata_priv, list);
 
-		spin_lock(&reorder->lock);
 		list_del_init(&padata->list);
 		atomic_dec(&pd->reorder_objects);
-		spin_unlock(&reorder->lock);
 
 		pd->processed++;
 
+		spin_unlock(&reorder->lock);
 		goto out;
 	}
+	spin_unlock(&reorder->lock);
 
 	if (__this_cpu_read(pd->pqueue->cpu_index) == next_queue->cpu_index) {
 		padata = ERR_PTR(-ENODATA);
-- 
2.12.2

  parent reply	other threads:[~2017-04-10 15:35 UTC|newest]

Thread overview: 148+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-10 15:33 [PATCH 3.12 000/142] 3.12.73-stable review Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 001/142] dm: flush queued bios when process blocks to avoid deadlock Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 002/142] xfs: pass total block res. as total xfs_bmapi_write() parameter Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 003/142] mm/huge_memory.c: respect FOLL_FORCE/FOLL_COW for thp Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 004/142] xhci: fix 10 second timeout on removal of PCI hotpluggable xhci controllers Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 005/142] USB: serial: digi_acceleport: fix OOB data sanity check Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 006/142] USB: serial: digi_acceleport: fix OOB-event processing Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 007/142] crypto: improve gcc optimization flags for serpent and wp512 Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 008/142] MIPS: ip27: Disable qlge driver in defconfig Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 009/142] MIPS: ip22: Fix ip28 build for modern gcc Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 010/142] mtd: pmcmsp: use kstrndup instead of kmalloc+strncpy Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 011/142] MIPS: ralink: Cosmetic change to prom_init() Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 012/142] cpmac: remove hopeless #warning Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 013/142] MIPS: DEC: Avoid la pseudo-instruction in delay slots Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 014/142] tracing: Add #undef to fix compile error Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 015/142] usb: dwc3: gadget: make Set Endpoint Configuration macros safe Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 016/142] usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci controllers Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 017/142] USB: serial: safe_serial: fix information leak in completion handler Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 018/142] USB: serial: omninet: fix reference leaks at open Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 019/142] USB: iowarrior: fix NULL-deref at probe Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 020/142] USB: iowarrior: fix NULL-deref in write Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 021/142] USB: serial: io_ti: fix NULL-deref in interrupt callback Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 022/142] USB: serial: io_ti: fix information leak in completion handler Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 023/142] mvsas: fix misleading indentation Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 024/142] locking/static_keys: Add static_key_{en,dis}able() helpers Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 025/142] vxlan: correctly validate VXLAN ID against VXLAN_N_VID Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 026/142] ipv4: mask tos for input route Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 027/142] l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 028/142] net: don't call strlen() on the user buffer in packet_bind_spkt() Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 029/142] net: net_enable_timestamp() can be called from irq contexts Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 030/142] dccp: Unlock sock before calling sk_free() Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 031/142] tcp: fix various issues for sockets morphing to listen state Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 032/142] uapi: fix linux/packet_diag.h userspace compilation error Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 033/142] ipv6: avoid write to a possibly cloned skb Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 034/142] dccp/tcp: fix routing redirect race Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 035/142] dccp: fix memory leak during tear-down of unsuccessful connection request Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 036/142] net sched actions: decrement module reference count after table flush Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 037/142] futex: Fix potential use-after-free in FUTEX_REQUEUE_PI Jiri Slaby
2017-04-10 15:31 ` [PATCH 3.12 038/142] futex: Add missing error handling to FUTEX_REQUEUE_PI Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 039/142] give up on gcc ilog2() constant optimizations Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 040/142] cancel the setfilesize transation when io error happen Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 041/142] xfs: fix up xfs_swap_extent_forks inline extent handling Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 042/142] xfs: don't allow di_size with high bit set Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 043/142] netlink: remove mmapped netlink support Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 044/142] crypto: ghash-clmulni - Fix load failure Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 045/142] crypto: cryptd - Assign statesize properly Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 046/142] ACPI / video: skip evaluating _DOD when it does not exist Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 047/142] Drivers: hv: balloon: don't crash when memory is added in non-sorted order Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 048/142] Drivers: hv: avoid vfree() on crash Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 049/142] KVM: PPC: Book3S PR: Fix illegal opcode emulation Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 050/142] s390/pci: fix use after free in dma_init Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 051/142] kernek/fork.c: allocate idle task for a CPU always on its local node Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 052/142] perf/core: Fix event inheritance on fork() Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 053/142] cpufreq: Fix and clean up show_cpuinfo_cur_freq() Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 054/142] target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 055/142] scsi: lpfc: Add shutdown method for kexec Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 056/142] isdn/gigaset: fix NULL-deref at probe Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 057/142] xen: do not re-use pirq number cached in pci device msi msg data Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 058/142] igb: Workaround for igb i210 firmware issue Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 059/142] igb: add i211 to i210 PHY workaround Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 060/142] net: properly release sk_frag.page Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 061/142] net: unix: properly re-increment inflight counter of GC discarded candidates Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 062/142] qmi_wwan: add Dell DW5811e Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 063/142] net/mlx5: Increase number of max QPs in default profile Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 064/142] ipv4: provide stronger user input validation in nl_fib_input() Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 065/142] tcp: initialize icsk_ack.lrcvtime at session start time Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 066/142] libceph: don't set weight to IN when OSD is destroyed Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 067/142] USB: qcserial: Add support for Dell Wireless 5809e 4G Modem Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 068/142] USB: qcserial: add HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 069/142] USB: qcserial: add Sierra Wireless MC74xx/EM74xx Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 070/142] USB: qcserial: Add support for Quectel EC20 Mini PCIe module Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 071/142] USB: qcserial: add Dell Wireless 5809e Gobi 4G HSPA+ (rev3) Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 072/142] USB: qcserial: add Sierra Wireless EM74xx device ID Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 073/142] Input: i8042 - add noloop quirk for Dell Embedded Box PC 3000 Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 074/142] Input: iforce - validate number of endpoints before using them Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 075/142] Input: ims-pcu " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 076/142] Input: hanwang " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 077/142] Input: yealink " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 078/142] Input: cm109 " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 079/142] Input: kbtab " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 080/142] ALSA: seq: Fix racy cell insertions during snd_seq_pool_done() Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 081/142] USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 082/142] USB: serial: qcserial: add Dell DW5811e Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 083/142] ACM gadget: fix endianness in notifications Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 084/142] usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 085/142] USB: uss720: fix NULL-deref at probe Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 086/142] USB: idmouse: " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 087/142] USB: wusbcore: " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 088/142] usb: hub: Fix crash after failure to read BOS descriptor Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 089/142] uwb: i1480-dfu: fix NULL-deref at probe Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 090/142] uwb: hwa-rc: " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 091/142] mmc: ushc: " Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 092/142] ext4: mark inode dirty after converting inline directory Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 093/142] mmc: sdhci: Do not disable interrupts while waiting for clock Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 094/142] nl80211: fix dumpit error path RTNL deadlocks Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 095/142] USB: usbtmc: add missing endpoint sanity check Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 096/142] xfs: clear _XBF_PAGES from buffers when readahead page Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 097/142] block: allow WRITE_SAME commands with the SG_IO ioctl Jiri Slaby
2017-04-10 15:32 ` [PATCH 3.12 098/142] uvcvideo: uvc_scan_fallback() for webcams with broken chain Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 099/142] fbcon: Fix vc attr at deinit Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 100/142] crypto: algif_hash - avoid zero-sized array Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 101/142] xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 102/142] xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 103/142] virtio_balloon: init 1st buffer in stats vq Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 104/142] c6x/ptrace: Remove useless PTRACE_SETREGSET implementation Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 105/142] sparc/ptrace: Preserve previous registers for short regset write Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 106/142] metag/ptrace: " Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 107/142] metag/ptrace: Provide default TXSTATUS for short NT_PRSTATUS Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 108/142] metag/ptrace: Reject partial NT_METAG_RPIPE writes Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 109/142] sched/rt: Add a missing rescheduling point Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 110/142] libceph: force GFP_NOIO for socket allocations Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 111/142] scsi: mpt3sas: fix hang on ata passthrough commands Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 112/142] scsi: libsas: fix ata xfer length Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 113/142] ALSA: seq: Fix race during FIFO resize Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 114/142] ACPI: Fix incompatibility with mcount-based function graph tracing Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 115/142] USB: fix linked-list corruption in rh_call_control() Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 116/142] KVM: x86: clear bus pointer when destroyed Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 117/142] mm, hugetlb: use pte_present() instead of pmd_present() in follow_huge_pmd() Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 118/142] rtc: s35390a: fix reading out alarm Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 119/142] rtc: s35390a: make sure all members in the output are set Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 120/142] rtc: s35390a: implement reset routine as suggested by the reference Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 121/142] rtc: s35390a: improve irq handling Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 122/142] KVM: kvm_io_bus_unregister_dev() should never fail Jiri Slaby
2017-04-10 15:33 ` Jiri Slaby [this message]
2017-04-10 15:33 ` [PATCH 3.12 124/142] ALSA: ctxfi: Fallback DMA mask to 32bit Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 125/142] ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 126/142] Revert "cpufreq: fix garbage kobjects on errors during suspend/resume" Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 127/142] cgroup: use an ordered workqueue for cgroup destruction Jiri Slaby
2017-04-10 19:30   ` Hugh Dickins
2017-04-11  6:05     ` Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 128/142] cpufreq: move policy kobj to policy->cpu at resume Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 129/142] ACPI / PNP: Avoid conflicting resource reservations Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 130/142] ACPI / resources: free memory on error in add_region_before() Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 131/142] ACPI / PNP: Reserve ACPI resources at the fs_initcall_sync stage Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 132/142] USB: OHCI: Fix race between ED unlink and URB submission Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 133/142] i2c: at91: manage unexpected RXRDY flag when starting a transfer Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 134/142] ipv4: igmp: Allow removing groups from a removed interface Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 135/142] HID: hid-lg: Fix immediate disconnection of Logitech Rumblepad 2 Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 136/142] HID: usbhid: Quirk a AMI virtual mouse and keyboard with ALWAYS_POLL Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 137/142] HID: i2c-hid: Add sleep between POWER ON and RESET Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 138/142] Input: joydev - do not report stale values on first open Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 139/142] Input: tca8418 - use the interrupt trigger from the device tree Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 140/142] Input: mpr121 - handle multiple bits change of status register Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 141/142] Input: mpr121 - set missing event capability Jiri Slaby
2017-04-10 15:33 ` [PATCH 3.12 142/142] tty/serial: atmel: fix race condition (TX+DMA) Jiri Slaby
2017-04-10 20:37 ` [PATCH 3.12 000/142] 3.12.73-stable review Shuah Khan
2017-04-25  7:07   ` Jiri Slaby
2017-04-10 23:22 ` Guenter Roeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c9645aa7ebb4caa07c1cc7a61f7352c673c4fdfe.1491838390.git.jslaby@suse.cz \
    --to=jslaby@suse.cz \
    --cc=Jason@zx2c4.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.