linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, Al Viro <viro@zeniv.linux.org.uk>,
	Todd Kjos <tkjos@google.com>
Subject: [PATCH 4.20 090/145] binder: fix use-after-free due to ksys_close() during fdget()
Date: Mon,  7 Jan 2019 13:32:07 +0100	[thread overview]
Message-ID: <20190107104448.976364882@linuxfoundation.org> (raw)
In-Reply-To: <20190107104437.308206189@linuxfoundation.org>

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

------------------

From: Todd Kjos <tkjos@android.com>

commit 80cd795630d6526ba729a089a435bf74a57af927 upstream.

44d8047f1d8 ("binder: use standard functions to allocate fds")
exposed a pre-existing issue in the binder driver.

fdget() is used in ksys_ioctl() as a performance optimization.
One of the rules associated with fdget() is that ksys_close() must
not be called between the fdget() and the fdput(). There is a case
where this requirement is not met in the binder driver which results
in the reference count dropping to 0 when the device is still in
use. This can result in use-after-free or other issues.

If userpace has passed a file-descriptor for the binder driver using
a BINDER_TYPE_FDA object, then kys_close() is called on it when
handling a binder_ioctl(BC_FREE_BUFFER) command. This violates
the assumptions for using fdget().

The problem is fixed by deferring the close using task_work_add(). A
new variant of __close_fd() was created that returns a struct file
with a reference. The fput() is deferred instead of using ksys_close().

Fixes: 44d8047f1d87a ("binder: use standard functions to allocate fds")
Suggested-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Todd Kjos <tkjos@google.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/android/binder.c |   63 +++++++++++++++++++++++++++++++++++++++++++++--
 fs/file.c                |   29 +++++++++++++++++++++
 include/linux/fdtable.h  |    1 
 3 files changed, 91 insertions(+), 2 deletions(-)

--- a/drivers/android/binder.c
+++ b/drivers/android/binder.c
@@ -72,6 +72,7 @@
 #include <linux/spinlock.h>
 #include <linux/ratelimit.h>
 #include <linux/syscalls.h>
+#include <linux/task_work.h>
 
 #include <uapi/linux/android/binder.h>
 
@@ -2160,6 +2161,64 @@ static bool binder_validate_fixup(struct
 	return (fixup_offset >= last_min_offset);
 }
 
+/**
+ * struct binder_task_work_cb - for deferred close
+ *
+ * @twork:                callback_head for task work
+ * @fd:                   fd to close
+ *
+ * Structure to pass task work to be handled after
+ * returning from binder_ioctl() via task_work_add().
+ */
+struct binder_task_work_cb {
+	struct callback_head twork;
+	struct file *file;
+};
+
+/**
+ * binder_do_fd_close() - close list of file descriptors
+ * @twork:	callback head for task work
+ *
+ * It is not safe to call ksys_close() during the binder_ioctl()
+ * function if there is a chance that binder's own file descriptor
+ * might be closed. This is to meet the requirements for using
+ * fdget() (see comments for __fget_light()). Therefore use
+ * task_work_add() to schedule the close operation once we have
+ * returned from binder_ioctl(). This function is a callback
+ * for that mechanism and does the actual ksys_close() on the
+ * given file descriptor.
+ */
+static void binder_do_fd_close(struct callback_head *twork)
+{
+	struct binder_task_work_cb *twcb = container_of(twork,
+			struct binder_task_work_cb, twork);
+
+	fput(twcb->file);
+	kfree(twcb);
+}
+
+/**
+ * binder_deferred_fd_close() - schedule a close for the given file-descriptor
+ * @fd:		file-descriptor to close
+ *
+ * See comments in binder_do_fd_close(). This function is used to schedule
+ * a file-descriptor to be closed after returning from binder_ioctl().
+ */
+static void binder_deferred_fd_close(int fd)
+{
+	struct binder_task_work_cb *twcb;
+
+	twcb = kzalloc(sizeof(*twcb), GFP_KERNEL);
+	if (!twcb)
+		return;
+	init_task_work(&twcb->twork, binder_do_fd_close);
+	__close_fd_get_file(fd, &twcb->file);
+	if (twcb->file)
+		task_work_add(current, &twcb->twork, true);
+	else
+		kfree(twcb);
+}
+
 static void binder_transaction_buffer_release(struct binder_proc *proc,
 					      struct binder_buffer *buffer,
 					      binder_size_t *failed_at)
@@ -2299,7 +2358,7 @@ static void binder_transaction_buffer_re
 			}
 			fd_array = (u32 *)(parent_buffer + (uintptr_t)fda->parent_offset);
 			for (fd_index = 0; fd_index < fda->num_fds; fd_index++)
-				ksys_close(fd_array[fd_index]);
+				binder_deferred_fd_close(fd_array[fd_index]);
 		} break;
 		default:
 			pr_err("transaction release %d bad object type %x\n",
@@ -3912,7 +3971,7 @@ static int binder_apply_fd_fixups(struct
 		} else if (ret) {
 			u32 *fdp = (u32 *)(t->buffer->data + fixup->offset);
 
-			ksys_close(*fdp);
+			binder_deferred_fd_close(*fdp);
 		}
 		list_del(&fixup->fixup_entry);
 		kfree(fixup);
--- a/fs/file.c
+++ b/fs/file.c
@@ -640,6 +640,35 @@ out_unlock:
 }
 EXPORT_SYMBOL(__close_fd); /* for ksys_close() */
 
+/*
+ * variant of __close_fd that gets a ref on the file for later fput
+ */
+int __close_fd_get_file(unsigned int fd, struct file **res)
+{
+	struct files_struct *files = current->files;
+	struct file *file;
+	struct fdtable *fdt;
+
+	spin_lock(&files->file_lock);
+	fdt = files_fdtable(files);
+	if (fd >= fdt->max_fds)
+		goto out_unlock;
+	file = fdt->fd[fd];
+	if (!file)
+		goto out_unlock;
+	rcu_assign_pointer(fdt->fd[fd], NULL);
+	__put_unused_fd(files, fd);
+	spin_unlock(&files->file_lock);
+	get_file(file);
+	*res = file;
+	return filp_close(file, files);
+
+out_unlock:
+	spin_unlock(&files->file_lock);
+	*res = NULL;
+	return -ENOENT;
+}
+
 void do_close_on_exec(struct files_struct *files)
 {
 	unsigned i;
--- a/include/linux/fdtable.h
+++ b/include/linux/fdtable.h
@@ -121,6 +121,7 @@ extern void __fd_install(struct files_st
 		      unsigned int fd, struct file *file);
 extern int __close_fd(struct files_struct *files,
 		      unsigned int fd);
+extern int __close_fd_get_file(unsigned int fd, struct file **res);
 
 extern struct kmem_cache *files_cachep;
 



  parent reply	other threads:[~2019-01-07 12:41 UTC|newest]

Thread overview: 164+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-07 12:30 [PATCH 4.20 000/145] 4.20.1-stable review Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 001/145] panic: avoid deadlocks in re-entrant console drivers Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 002/145] iwlwifi: add new cards for 9560, 9462, 9461 and killer series Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 003/145] media: ov5640: Fix set format regression Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 004/145] bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 005/145] tap: call skb_probe_transport_header after setting skb->dev Greg Kroah-Hartman
2019-01-07 13:39   ` Christian Borntraeger
2019-01-07 12:30 ` [PATCH 4.20 006/145] ax25: fix a use-after-free in ax25_fillin_cb() Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 007/145] ibmveth: fix DMA unmap error in ibmveth_xmit_start error path Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 008/145] ieee802154: lowpan_header_create check must check daddr Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 009/145] ip: validate header length on virtual device xmit Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 010/145] net: core: Fix Spectre v1 vulnerability Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 011/145] net/hamradio/6pack: use mod_timer() to rearm timers Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 012/145] isdn: fix kernel-infoleak in capi_unlocked_ioctl Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 013/145] netrom: fix locking in nr_find_socket() Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 014/145] net/wan: fix a double free in x25_asy_open_tty() Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 015/145] packet: validate address length if non-zero Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 016/145] phonet: af_phonet: Fix Spectre v1 vulnerability Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 017/145] ptr_ring: wrap back ->producer in __ptr_ring_swap_queue() Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 018/145] sock: Make sock->sk_stamp thread-safe Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 019/145] tipc: fix a double free in tipc_enable_bearer() Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 020/145] IB/hfi1: Incorrect sizing of sge for PIO will OOPs Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 021/145] ALSA: rme9652: Fix potential Spectre v1 vulnerability Greg Kroah-Hartman
2019-01-07 12:30 ` [PATCH 4.20 022/145] ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 023/145] ALSA: pcm: Fix potential Spectre v1 vulnerability Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 024/145] ALSA: emux: Fix potential Spectre v1 vulnerabilities Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 025/145] powerpc/fsl: Fix spectre_v2 mitigations reporting Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 026/145] mtd: atmel-quadspi: disallow building on ebsa110 Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 027/145] mtd: rawnand: marvell: prevent timeouts on a loaded machine Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 028/145] mtd: rawnand: Fix JEDEC detection Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 029/145] mtd: rawnand: omap2: Pass the parent of pdev to dma_request_chan() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 030/145] ALSA: hda: add mute LED support for HP EliteBook 840 G4 Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 031/145] ALSA: hda/realtek: Enable audio jacks of ASUS UX391UA with ALC294 Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 032/145] ALSA: fireface: fix for state to fetch PCM frames Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 033/145] ALSA: firewire-lib: fix wrong handling payload_length as payload_quadlet Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 034/145] ALSA: firewire-lib: fix wrong assignment for out_packet_without_header tracepoint Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 035/145] ALSA: firewire-lib: use the same print format for without_header tracepoints Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 036/145] ALSA: hda/realtek: Enable the headset mic auto detection for ASUS laptops Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 037/145] ALSA: hda/tegra: clear pending irq handlers Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 038/145] usb: dwc2: host: use hrtimer for NAK retries Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 039/145] USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 040/145] USB: serial: option: add Fibocom NL678 series Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 041/145] usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 042/145] usb: dwc2: disable power_down on Amlogic devices Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 043/145] Revert "usb: dwc3: pci: Use devm functions to get the phy GPIOs" Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 044/145] usb: roles: Add a description for the class to Kconfig Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 045/145] media: dvb-usb-v2: Fix incorrect use of transfer_flags URB_FREE_BUFFER Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 046/145] i915: fix missing user_access_end() in page fault exception case Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 047/145] staging: wilc1000: fix missing read_write setting when reading data Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 048/145] staging: bcm2835-audio: double free in init error path Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 049/145] ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Clapper Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 050/145] ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Gnawty Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 051/145] s390/pci: fix sleeping in atomic during hotplug Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 052/145] Input: atmel_mxt_ts - dont try to free unallocated kernel memory Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 053/145] Input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 054/145] x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 055/145] x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 056/145] KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 057/145] arm64: KVM: Make VHE Stage-2 TLB invalidation operations non-interruptible Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 058/145] KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 059/145] KVM: nVMX: Free the VMREAD/VMWRITE bitmaps if alloc_kvm_area() fails Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 060/145] platform-msi: Free descriptors in platform_msi_domain_free() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 061/145] drm/v3d: Skip debugfs dumping GCA on platforms without GCA Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 062/145] DRM: UDL: get rid of useless vblank initialization Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 063/145] clocksource/drivers/arc_timer: Utilize generic sched_clock Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 064/145] perf machine: Record if a arch has a single user/kernel address space Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 065/145] perf thread: Add fallback functions for cases where cpumode is insufficient Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 066/145] perf tools: Use fallback for sample_addr_correlates_sym() cases Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 067/145] perf script: Use fallbacks for branch stacks Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 068/145] perf pmu: Suppress potential format-truncation warning Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 069/145] perf env: Also consider env->arch == NULL as local operation Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 070/145] ocxl: Fix endiannes bug in ocxl_link_update_pe() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 071/145] ocxl: Fix endiannes bug in read_afu_name() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 072/145] ext4: add ext4_sb_bread() to disambiguate ENOMEM cases Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 073/145] ext4: fix possible use after free in ext4_quota_enable Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 074/145] ext4: missing unlock/put_page() in ext4_try_to_write_inline_data() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 075/145] ext4: fix EXT4_IOC_GROUP_ADD ioctl Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 076/145] ext4: include terminating u32 in size of xattr entries when expanding inodes Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 077/145] ext4: avoid declaring fs inconsistent due to invalid file handles Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 078/145] ext4: force inode writes when nfsd calls commit_metadata() Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 079/145] ext4: check for shutdown and r/o file system in ext4_write_inode() Greg Kroah-Hartman
2019-01-07 21:56   ` Sasha Levin
2019-01-09 13:44     ` Sasha Levin
2019-01-09 16:44     ` Greg Kroah-Hartman
2019-01-09 23:18       ` Sasha Levin
2019-01-07 12:31 ` [PATCH 4.20 080/145] spi: bcm2835: Fix race on DMA termination Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 081/145] spi: bcm2835: Fix book-keeping of " Greg Kroah-Hartman
2019-01-07 12:31 ` [PATCH 4.20 082/145] spi: bcm2835: Avoid finishing transfer prematurely in IRQ mode Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 083/145] clk: rockchip: fix typo in rk3188 spdif_frac parent Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 084/145] clk: sunxi-ng: Use u64 for calculation of NM rate Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 085/145] crypto: cavium/nitrox - fix a DMA pool free failure Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 086/145] crypto: chcr - small packet Tx stalls the queue Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 087/145] crypto: testmgr - add AES-CFB tests Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 088/145] crypto: cfb - fix decryption Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 089/145] cgroup: fix CSS_TASK_ITER_PROCS Greg Kroah-Hartman
2019-01-07 12:32 ` Greg Kroah-Hartman [this message]
2019-01-07 12:32 ` [PATCH 4.20 091/145] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 092/145] btrfs: dev-replace: go back to suspended state if target device is missing Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 093/145] btrfs: dev-replace: go back to suspend state if another EXCL_OP is running Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 094/145] Btrfs: fix deadlock with memory reclaim during scrub Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 095/145] btrfs: skip file_extent generation check for free_space_inode in run_delalloc_nocow Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 096/145] Btrfs: fix fsync of files with multiple hard links in new directories Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 097/145] btrfs: run delayed items before dropping the snapshot Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 098/145] Btrfs: send, fix race with transaction commits that create snapshots Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 099/145] brcmfmac: fix roamoff=1 modparam Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 100/145] brcmfmac: Fix out of bounds memory access during fw load Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 101/145] KEYS: fix parsing invalid pkey info string Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 102/145] powerpc/tm: Set MSR[TS] just prior to recheckpoint Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 103/145] powerpc/tm: Unset MSR[TS] if not recheckpointing Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 104/145] f2fs: read page index before freeing Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 105/145] f2fs: fix to update new block address correctly for OPU Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 106/145] f2fs: fix missing unlock(sbi->gc_mutex) Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 107/145] f2fs: fix validation of the block count in sanity_check_raw_super Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 108/145] f2fs: sanity check of xattr entry size Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 109/145] serial: uartps: Fix interrupt mask issue to handle the RX interrupts properly Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 110/145] media: cec: keep track of outstanding transmits Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 111/145] media: cec-pin: fix broken tx_ignore_nack_until_eom error injection Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 112/145] media: rc: cec devices do not have a lirc chardev Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 113/145] media: imx274: fix stack corruption in imx274_read_reg Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 114/145] media: vivid: free bitmap_cap when updating std/timings/etc Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 115/145] media: vim2m: use cancel_delayed_work_sync instead of flush_schedule_work Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 116/145] media: vb2: check memory model for VIDIOC_CREATE_BUFS Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 117/145] media: v4l2-tpg: array index could become negative Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 118/145] media: v4l2-fwnode: Fix setting V4L2_MBUS_DATA_ACTIVE_HIGH/LOW flag Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 119/145] tools lib traceevent: Fix processing of dereferenced args in bprintk events Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 120/145] MIPS: math-emu: Write-protect delay slot emulation pages Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 121/145] MIPS: c-r4k: Add r4k_blast_scache_node for Loongson-3 Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 122/145] MIPS: Ensure pmd_present() returns false after pmd_mknotpresent() Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 123/145] MIPS: Align kernel load address to 64KB Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 124/145] MIPS: Expand MIPS32 ASIDs to 64 bits Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 125/145] MIPS: OCTEON: mark RGMII interface disabled on OCTEON III Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 126/145] MIPS: Fix a R10000_LLSC_WAR logic in atomic.h Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 127/145] CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock problem Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 128/145] smb3: fix large reads on encrypted connections Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 129/145] CIFS: return correct errors when pinning memory failed for direct I/O Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 130/145] CIFS: use the correct length when pinning memory for direct I/O for write Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 131/145] arm64: KVM: Avoid setting the upper 32 bits of VTCR_EL2 to 1 Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 132/145] arm/arm64: KVM: vgic: Force VM halt when changing the active state of GICv3 PPIs/SGIs Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 133/145] ARM: dts: exynos: Specify I2S assigned clocks in proper node Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 134/145] rtc: m41t80: Correct alarm month range with RTC reads Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 135/145] KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 136/145] KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 137/145] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 138/145] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 139/145] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq() Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 140/145] iommu/arm-smmu-v3: Fix big-endian CMD_SYNC writes Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 141/145] arm64: compat: Avoid sending SIGILL for unallocated syscall numbers Greg Kroah-Hartman
2019-01-07 12:32 ` [PATCH 4.20 142/145] arm64: compat: Dont pull syscall number from regs in arm_compat_syscall Greg Kroah-Hartman
2019-01-07 12:33 ` [PATCH 4.20 143/145] parisc: Remap hugepage-aligned pages in set_kernel_text_rw() Greg Kroah-Hartman
2019-01-07 12:33 ` [PATCH 4.20 144/145] tpm: tpm_try_transmit() refactor error flow Greg Kroah-Hartman
2019-01-07 12:33 ` [PATCH 4.20 145/145] tpm: tpm_i2c_nuvoton: use correct command duration for TPM 2.x Greg Kroah-Hartman
2019-01-07 18:05 ` [PATCH 4.20 000/145] 4.20.1-stable review Guenter Roeck
2019-01-07 21:17 ` Guenter Roeck
2019-01-08  7:45   ` Greg Kroah-Hartman
2019-01-08  9:33     ` Greg Kroah-Hartman
2019-01-08 12:16       ` Greg Kroah-Hartman
2019-01-07 22:36 ` shuah
2019-01-08  7:45   ` Greg Kroah-Hartman
2019-01-08 10:58 ` Naresh Kamboju
2019-01-08 12:26   ` Greg Kroah-Hartman
2019-01-08 12:20 ` Greg Kroah-Hartman
2019-01-08 19:39 ` Dmitrii Tcvetkov
2019-01-09  6:05   ` Greg Kroah-Hartman
2019-01-08 23:09 ` 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=20190107104448.976364882@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=tkjos@google.com \
    --cc=viro@zeniv.linux.org.uk \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).