From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: <linux-kernel@vger.kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
<stable@vger.kernel.org>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Bjorn Helgaas <bhelgaas@google.com>
Subject: [PATCH 3.14 121/130] PCI/AER: Flush workqueue on device remove to avoid use-after-free
Date: Tue, 01 Mar 2016 23:53:38 +0000 [thread overview]
Message-ID: <20160301234504.051618445@linuxfoundation.org> (raw)
In-Reply-To: <20160301234459.768886030@linuxfoundation.org>
3.14-stable review patch. If anyone has any objections, please let me know.
------------------
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
commit 4ae2182b1e3407de369f8c5d799543b7db74221b upstream.
A Root Port's AER structure (rpc) contains a queue of events. aer_irq()
enqueues AER status information and schedules aer_isr() to dequeue and
process it. When we remove a device, aer_remove() waits for the queue to
be empty, then frees the rpc struct.
But aer_isr() references the rpc struct after dequeueing and possibly
emptying the queue, which can cause a use-after-free error as in the
following scenario with two threads, aer_isr() on the left and a
concurrent aer_remove() on the right:
Thread A Thread B
-------- --------
aer_irq():
rpc->prod_idx++
aer_remove():
wait_event(rpc->prod_idx == rpc->cons_idx)
# now blocked until queue becomes empty
aer_isr(): # ...
rpc->cons_idx++ # unblocked because queue is now empty
... kfree(rpc)
mutex_unlock(&rpc->rpc_mutex)
To prevent this problem, use flush_work() to wait until the last scheduled
instance of aer_isr() has completed before freeing the rpc struct in
aer_remove().
I reproduced this use-after-free by flashing a device FPGA and
re-enumerating the bus to find the new device. With SLUB debug, this
crashes with 0x6b bytes (POISON_FREE, the use-after-free magic number) in
GPR25:
pcieport 0000:00:00.0: AER: Multiple Corrected error received: id=0000
Unable to handle kernel paging request for data at address 0x27ef9e3e
Workqueue: events aer_isr
GPR24: dd6aa000 6b6b6b6b 605f8378 605f8360 d99b12c0 604fc674 606b1704 d99b12c0
NIP [602f5328] pci_walk_bus+0xd4/0x104
[bhelgaas: changelog, stable tag]
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/pci/pcie/aer/aerdrv.c | 4 +---
drivers/pci/pcie/aer/aerdrv.h | 1 -
drivers/pci/pcie/aer/aerdrv_core.c | 2 --
3 files changed, 1 insertion(+), 6 deletions(-)
--- a/drivers/pci/pcie/aer/aerdrv.c
+++ b/drivers/pci/pcie/aer/aerdrv.c
@@ -262,7 +262,6 @@ static struct aer_rpc *aer_alloc_rpc(str
rpc->rpd = dev;
INIT_WORK(&rpc->dpc_handler, aer_isr);
mutex_init(&rpc->rpc_mutex);
- init_waitqueue_head(&rpc->wait_release);
/* Use PCIe bus function to store rpc into PCIe device */
set_service_data(dev, rpc);
@@ -285,8 +284,7 @@ static void aer_remove(struct pcie_devic
if (rpc->isr)
free_irq(dev->irq, dev);
- wait_event(rpc->wait_release, rpc->prod_idx == rpc->cons_idx);
-
+ flush_work(&rpc->dpc_handler);
aer_disable_rootport(rpc);
kfree(rpc);
set_service_data(dev, NULL);
--- a/drivers/pci/pcie/aer/aerdrv.h
+++ b/drivers/pci/pcie/aer/aerdrv.h
@@ -72,7 +72,6 @@ struct aer_rpc {
* recovery on the same
* root port hierarchy
*/
- wait_queue_head_t wait_release;
};
struct aer_broadcast_data {
--- a/drivers/pci/pcie/aer/aerdrv_core.c
+++ b/drivers/pci/pcie/aer/aerdrv_core.c
@@ -785,8 +785,6 @@ void aer_isr(struct work_struct *work)
while (get_e_source(rpc, &e_src))
aer_isr_one_error(p_device, &e_src);
mutex_unlock(&rpc->rpc_mutex);
-
- wake_up(&rpc->wait_release);
}
/**
WARNING: multiple messages have this Message-ID (diff)
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: <linux-kernel@vger.kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
<stable@vger.kernel.org>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Bjorn Helgaas <bhelgaas@google.com>
Subject: [PATCH 3.14 121/130] PCI/AER: Flush workqueue on device remove to avoid use-after-free
Date: Tue, 01 Mar 2016 23:53:39 +0000 [thread overview]
Message-ID: <20160301234504.051618445@linuxfoundation.org> (raw)
In-Reply-To: <20160301234459.768886030@linuxfoundation.org>
3.14-stable review patch. If anyone has any objections, please let me know.
------------------
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
commit 4ae2182b1e3407de369f8c5d799543b7db74221b upstream.
A Root Port's AER structure (rpc) contains a queue of events. aer_irq()
enqueues AER status information and schedules aer_isr() to dequeue and
process it. When we remove a device, aer_remove() waits for the queue to
be empty, then frees the rpc struct.
But aer_isr() references the rpc struct after dequeueing and possibly
emptying the queue, which can cause a use-after-free error as in the
following scenario with two threads, aer_isr() on the left and a
concurrent aer_remove() on the right:
Thread A Thread B
-------- --------
aer_irq():
rpc->prod_idx++
aer_remove():
wait_event(rpc->prod_idx == rpc->cons_idx)
# now blocked until queue becomes empty
aer_isr(): # ...
rpc->cons_idx++ # unblocked because queue is now empty
... kfree(rpc)
mutex_unlock(&rpc->rpc_mutex)
To prevent this problem, use flush_work() to wait until the last scheduled
instance of aer_isr() has completed before freeing the rpc struct in
aer_remove().
I reproduced this use-after-free by flashing a device FPGA and
re-enumerating the bus to find the new device. With SLUB debug, this
crashes with 0x6b bytes (POISON_FREE, the use-after-free magic number) in
GPR25:
pcieport 0000:00:00.0: AER: Multiple Corrected error received: id=0000
Unable to handle kernel paging request for data at address 0x27ef9e3e
Workqueue: events aer_isr
GPR24: dd6aa000 6b6b6b6b 605f8378 605f8360 d99b12c0 604fc674 606b1704 d99b12c0
NIP [602f5328] pci_walk_bus+0xd4/0x104
[bhelgaas: changelog, stable tag]
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/pci/pcie/aer/aerdrv.c | 4 +---
drivers/pci/pcie/aer/aerdrv.h | 1 -
drivers/pci/pcie/aer/aerdrv_core.c | 2 --
3 files changed, 1 insertion(+), 6 deletions(-)
--- a/drivers/pci/pcie/aer/aerdrv.c
+++ b/drivers/pci/pcie/aer/aerdrv.c
@@ -262,7 +262,6 @@ static struct aer_rpc *aer_alloc_rpc(str
rpc->rpd = dev;
INIT_WORK(&rpc->dpc_handler, aer_isr);
mutex_init(&rpc->rpc_mutex);
- init_waitqueue_head(&rpc->wait_release);
/* Use PCIe bus function to store rpc into PCIe device */
set_service_data(dev, rpc);
@@ -285,8 +284,7 @@ static void aer_remove(struct pcie_devic
if (rpc->isr)
free_irq(dev->irq, dev);
- wait_event(rpc->wait_release, rpc->prod_idx == rpc->cons_idx);
-
+ flush_work(&rpc->dpc_handler);
aer_disable_rootport(rpc);
kfree(rpc);
set_service_data(dev, NULL);
--- a/drivers/pci/pcie/aer/aerdrv.h
+++ b/drivers/pci/pcie/aer/aerdrv.h
@@ -72,7 +72,6 @@ struct aer_rpc {
* recovery on the same
* root port hierarchy
*/
- wait_queue_head_t wait_release;
};
struct aer_broadcast_data {
--- a/drivers/pci/pcie/aer/aerdrv_core.c
+++ b/drivers/pci/pcie/aer/aerdrv_core.c
@@ -785,8 +785,6 @@ void aer_isr(struct work_struct *work)
while (get_e_source(rpc, &e_src))
aer_isr_one_error(p_device, &e_src);
mutex_unlock(&rpc->rpc_mutex);
-
- wake_up(&rpc->wait_release);
}
/**
next prev parent reply other threads:[~2016-03-02 1:44 UTC|newest]
Thread overview: 148+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-01 23:44 [PATCH 3.14 000/130] 3.14.63-stable review Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 001/130] tracepoints: Do not trace when cpu is offline Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 002/130] drm/ast: Initialized data needed to map fbdev memory Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 003/130] netfilter: nf_tables: fix bogus warning in nft_data_uninit() Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 004/130] netfilter: ipt_rpfilter: remove the nh_scope test in rpfilter_lookup_reverse Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 005/130] netfilter: ip6t_SYNPROXY: fix NULL pointer dereference Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 006/130] bcache: fix a livelock when we cause a huge number of cache misses Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 007/130] bcache: Add a cond_resched() call to gc Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 008/130] bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 009/130] bcache: fix a leak in bch_cached_dev_run() Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 010/130] bcache: unregister reboot notifier if bcache fails to unregister device Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 011/130] bcache: prevent crash on changing writeback_running Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 012/130] bcache: Change refill_dirty() to always scan entire disk if necessary Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 014/130] drm/radeon: fix hotplug race at startup Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 023/130] proc: Fix ptrace-based permission checks for accessing task maps Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 024/130] iw_cxgb3: Fix incorrectly returning error on success Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 025/130] lift the "already marked killed" case into shrink_dentry_list() Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 026/130] split dentry_kill() Greg Kroah-Hartman
2016-03-01 23:44 ` [PATCH 3.14 027/130] expand dentry_kill(dentry, 0) in shrink_dentry_list() Greg Kroah-Hartman
2016-03-01 23:50 ` [PATCH 3.14 028/130] shrink_dentry_list(): take parents ->d_lock earlier Greg Kroah-Hartman
2016-03-01 23:50 ` [PATCH 3.14 031/130] dcache: add missing lockdep annotation Greg Kroah-Hartman
2016-03-01 23:50 ` [PATCH 3.14 030/130] dentry_kill() doesnt need the second argument now Greg Kroah-Hartman
2016-03-01 23:50 ` [PATCH 3.14 029/130] dealing with the rest of shrink_dentry_list() livelock Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 032/130] lock_parent: dont step on stale ->d_parent of all-but-freed one Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 033/130] MIPS: KVM: Fix ASID restoration logic Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 015/130] efi: Disable interrupts around EFI calls, not in the epilog/prolog calls Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 035/130] MIPS: KVM: Uninit VCPU in vcpu_create error path Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 034/130] MIPS: KVM: Fix CACHE immediate offset sign extension Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 038/130] splice: sendfile() at once fails for big files Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 037/130] RDS: verify the underlying transport exists before creating a connection Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 036/130] ipv6: addrconf: validate new MTU before applying it Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 039/130] Failing to send a CLOSE if file is opened WRONLY and server reboots on a 4.x mount Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 041/130] unix: correctly track in-flight fds in sending process user_struct Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 016/130] dm thin: restore requested error_if_no_space setting on OODS to WRITE transition Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 040/130] bnx2x: Dont notify about scratchpad parities Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 043/130] sched: Replace post_schedule with a balance callback list Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 044/130] sched: Allow balance callbacks for check_class_changed() Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 047/130] sched,dl: Remove return value from pull_dl_task() Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 045/130] sched,rt: Remove return value from pull_rt_task() Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 042/130] sched: Clean up idle task SMP logic Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 046/130] sched, rt: Convert switched_{from, to}_rt() / prio_changed_rt() to balance callbacks Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 048/130] sched, dl: Convert switched_{from, to}_dl() / prio_changed_dl() " Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 049/130] genirq: Prevent chip buslock deadlock Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 050/130] dts: vt8500: Add SDHC node to DTS file for WM8650 Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 051/130] clocksource/drivers/vt8500: Increase the minimum delta Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 017/130] dm thin metadata: fix bug when taking a metadata snapshot Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 053/130] drm/radeon: unconditionally set sysfs_initialized Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 054/130] drm/radeon: make rv770_set_sw_state failures non-fatal Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 052/130] async_tx: use GFP_NOWAIT rather than GFP_IO Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 056/130] devres: fix a for loop bounds check Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 057/130] wm831x_power: Use IRQF_ONESHOT to request threaded IRQs Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 055/130] lockd: create NSM handles per net namespace Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 058/130] dmaengine: dw: convert to __ffs() Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 020/130] USB: cp210x: add IDs for GE B650V3 and B850V3 boards Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 060/130] megaraid_sas : SMAP restriction--do not access user memory from IOCTL code Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 018/130] dm thin: fix race condition when destroying thin pool workqueue Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 019/130] can: ems_usb: Fix possible tx overflow Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 022/130] USB: option: add "4G LTE usb-modem U901" Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 021/130] USB: option: add support for SIM7100E Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 013/130] tools: Add a "make all" rule Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 062/130] mmc: remove bondage between REQ_META and reliable write Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 059/130] megaraid_sas: Do not use PAGE_SIZE for max_sectors Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 071/130] RDS: fix race condition when sending a message on unbound socket Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 072/130] can: sja1000: clear interrupts on start Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 074/130] sched/core: Remove false-positive warning from wake_up_process() Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 075/130] sata_sil: disable trim Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 073/130] sched/core: Clear the root_domain cpumasks in init_rootdomain() Greg Kroah-Hartman
2016-03-01 23:51 ` Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 077/130] dm btree: fix bufio buffer leaks in dm_btree_del() error path Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 078/130] irqchip/versatile-fpga: Fix PCI IRQ mapping on Versatile PB Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 076/130] dm space map metadata: fix ref counting bug when bootstrapping a new space map Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 080/130] rfkill: copy the name into the rfkill struct Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 079/130] vgaarb: fix signal handling in vga_get() Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 081/130] ses: Fix problems with simple enclosures Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 082/130] ses: fix additional element traversal bug Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 063/130] mac: validate mac_partition is within sector Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 083/130] powercap / RAPL: fix BIOS lock check Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 084/130] scripts: recordmcount: break hardlinks Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 085/130] Btrfs: add missing brelse when superblock checksum fails Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 087/130] Btrfs: send, dont BUG_ON() when an empty symlink is found Greg Kroah-Hartman
2016-03-01 23:51 ` [PATCH 3.14 086/130] Btrfs: igrab inode in writepage Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 088/130] Btrfs: fix number of transaction units required to create symlink Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 064/130] ARC: dw2 unwind: Remove falllback linear search thru FDE entries Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 090/130] s390/dasd: prevent incorrect length error under z/VM after PAV changes Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 089/130] s390: fix normalization bug in exception table sorting Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 092/130] uml: flush stdout before forking Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 091/130] s390/dasd: fix refcount for PAV reassignment Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 093/130] uml: fix hostfs mknod() Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 096/130] [media] tda1004x: only update the frontend properties if locked Greg Kroah-Hartman
2016-03-01 23:53 ` Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 095/130] [media] gspca: ov534/topro: prevent a division by 0 Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 094/130] [media] media: dvb-core: Dont force CAN_INVERSION_AUTO in oneshot mode Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 097/130] dm space map metadata: remove unused variable in brb_pop() Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 098/130] dm snapshot: fix hung bios when copy error occurs Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 099/130] posix-clock: Fix return code on the poll methods error path Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 101/130] mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off() Greg Kroah-Hartman
2016-03-01 23:53 ` Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 100/130] mmc: sdio: Fix invalid vdd in voltage switch power cycle Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 065/130] vfs: Avoid softlockups with sendfile(2) Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 102/130] mmc: mmci: fix an ages old detection error Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 103/130] cputime: Prevent 32bit overflow in time[val|spec]_to_cputime() Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 106/130] drm/vmwgfx: respect nomodeset Greg Kroah-Hartman
2016-03-01 23:53 ` Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 104/130] EDAC: Robustify workqueues destruction Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 105/130] sparc64: fix incorrect sign extension in sys_sparc64_personality Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 108/130] drm/radeon: hold reference to fences in radeon_sa_bo_new Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 107/130] drm/radeon: clean up fujitsu quirks Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 109/130] drm/i915/dp: fall back to 18 bpp when sink capability is unknown Greg Kroah-Hartman
2016-03-01 23:53 ` Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 066/130] target: Fix race for SCF_COMPARE_AND_WRITE_POST checking Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 068/130] ring-buffer: Update read stamp with first real commit on page Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 070/130] mac80211: mesh: fix call_rcu() usage Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 067/130] target: fix COMPARE_AND_WRITE non zero SGL offset data corruption Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 069/130] virtio: fix memory leak of virtio ida cache layers Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 120/130] libata: fix sff host state machine locking while polling Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 061/130] storvsc: Dont set the SRB_FLAGS_QUEUE_ACTION_ENABLE flag Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 111/130] drm/radeon: use post-decrement in error handling Greg Kroah-Hartman
2016-03-01 23:53 ` Greg Kroah-Hartman [this message]
2016-03-01 23:53 ` [PATCH 3.14 121/130] PCI/AER: Flush workqueue on device remove to avoid use-after-free Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 123/130] NFSv4: Fix a dentry leak on alias use Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 122/130] nfs: fix nfs_size_to_loff_t Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 126/130] sunrpc/cache: fix off-by-one in qword_get() Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 124/130] KVM: async_pf: do not warn on page allocation failures Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 125/130] tracing: Fix showing function event in available_events Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 127/130] kernel/resource.c: fix muxed resource handling in __request_region() Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 128/130] do_last(): dont let a bogus return value from ->open() et.al. to confuse us Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 112/130] drm/radeon/pm: adjust display configuration after powerstate Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 129/130] xen/pcifront: Fix mysterious crashes when NUMA locality information was extracted Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 130/130] iwlwifi: update and fix 7265 series PCI IDs Greg Kroah-Hartman
2016-03-01 23:53 ` Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 113/130] ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot() Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 115/130] hwmon: (ads1015) Handle negative conversion values correctly Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 114/130] IB/qib: fix mcast detach when qp not attached Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 117/130] cdc-acm:exclude Samsung phone 04e8:685d Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 116/130] libceph: dont bail early from try_read() when skipping a message Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 118/130] rfkill: fix rfkill_fop_read wait_event usage Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 119/130] Revert "workqueue: make sure delayed work run in local cpu" Greg Kroah-Hartman
2016-03-01 23:53 ` [PATCH 3.14 110/130] drm/qxl: use kmalloc_array to alloc reloc_info in qxl_process_single_command Greg Kroah-Hartman
2016-03-02 1:36 ` [PATCH 3.14 000/130] 3.14.63-stable review Shuah Khan
2016-03-02 14:34 ` 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=20160301234504.051618445@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=bhelgaas@google.com \
--cc=bigeasy@linutronix.de \
--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.