From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Daniel Jordan <daniel.m.jordan@oracle.com>,
Alan Stern <stern@rowland.harvard.edu>,
Andi Kleen <ak@linux.intel.com>,
Dave Hansen <dave.hansen@linux.intel.com>,
Omar Sandoval <osandov@fb.com>,
Paul McKenney <paulmck@linux.vnet.ibm.com>,
Shaohua Li <shli@kernel.org>,
Stephen Rothwell <sfr@canb.auug.org.au>,
Tejun Heo <tj@kernel.org>, Will Deacon <will.deacon@arm.com>,
Andrew Morton <akpm@linux-foundation.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Sasha Levin <sashal@kernel.org>,
linux-mm@kvack.org
Subject: [PATCH AUTOSEL 4.19 024/192] mm, swap: bounds check swap_info array accesses to avoid NULL derefs
Date: Wed, 27 Mar 2019 14:07:36 -0400 [thread overview]
Message-ID: <20190327181025.13507-24-sashal@kernel.org> (raw)
In-Reply-To: <20190327181025.13507-1-sashal@kernel.org>
From: Daniel Jordan <daniel.m.jordan@oracle.com>
[ Upstream commit c10d38cc8d3e43f946b6c2bf4602c86791587f30 ]
Dan Carpenter reports a potential NULL dereference in
get_swap_page_of_type:
Smatch complains that the NULL checks on "si" aren't consistent. This
seems like a real bug because we have not ensured that the type is
valid and so "si" can be NULL.
Add the missing check for NULL, taking care to use a read barrier to
ensure CPU1 observes CPU0's updates in the correct order:
CPU0 CPU1
alloc_swap_info() if (type >= nr_swapfiles)
swap_info[type] = p /* handle invalid entry */
smp_wmb() smp_rmb()
++nr_swapfiles p = swap_info[type]
Without smp_rmb, CPU1 might observe CPU0's write to nr_swapfiles before
CPU0's write to swap_info[type] and read NULL from swap_info[type].
Ying Huang noticed other places in swapfile.c don't order these reads
properly. Introduce swap_type_to_swap_info to encourage correct usage.
Use READ_ONCE and WRITE_ONCE to follow the Linux Kernel Memory Model
(see tools/memory-model/Documentation/explanation.txt).
This ordering need not be enforced in places where swap_lock is held
(e.g. si_swapinfo) because swap_lock serializes updates to nr_swapfiles
and the swap_info array.
Link: http://lkml.kernel.org/r/20190131024410.29859-1-daniel.m.jordan@oracle.com
Fixes: ec8acf20afb8 ("swap: add per-partition lock for swapfile")
Signed-off-by: Daniel Jordan <daniel.m.jordan@oracle.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Suggested-by: "Huang, Ying" <ying.huang@intel.com>
Reviewed-by: Andrea Parri <andrea.parri@amarulasolutions.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Omar Sandoval <osandov@fb.com>
Cc: Paul McKenney <paulmck@linux.vnet.ibm.com>
Cc: Shaohua Li <shli@kernel.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Tejun Heo <tj@kernel.org>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
mm/swapfile.c | 51 +++++++++++++++++++++++++++++----------------------
1 file changed, 29 insertions(+), 22 deletions(-)
diff --git a/mm/swapfile.c b/mm/swapfile.c
index 340ef3177686..0047dcaf9369 100644
--- a/mm/swapfile.c
+++ b/mm/swapfile.c
@@ -98,6 +98,15 @@ static atomic_t proc_poll_event = ATOMIC_INIT(0);
atomic_t nr_rotate_swap = ATOMIC_INIT(0);
+static struct swap_info_struct *swap_type_to_swap_info(int type)
+{
+ if (type >= READ_ONCE(nr_swapfiles))
+ return NULL;
+
+ smp_rmb(); /* Pairs with smp_wmb in alloc_swap_info. */
+ return READ_ONCE(swap_info[type]);
+}
+
static inline unsigned char swap_count(unsigned char ent)
{
return ent & ~SWAP_HAS_CACHE; /* may include COUNT_CONTINUED flag */
@@ -1030,12 +1039,14 @@ int get_swap_pages(int n_goal, swp_entry_t swp_entries[], int entry_size)
/* The only caller of this function is now suspend routine */
swp_entry_t get_swap_page_of_type(int type)
{
- struct swap_info_struct *si;
+ struct swap_info_struct *si = swap_type_to_swap_info(type);
pgoff_t offset;
- si = swap_info[type];
+ if (!si)
+ goto fail;
+
spin_lock(&si->lock);
- if (si && (si->flags & SWP_WRITEOK)) {
+ if (si->flags & SWP_WRITEOK) {
atomic_long_dec(&nr_swap_pages);
/* This is called for allocating swap entry, not cache */
offset = scan_swap_map(si, 1);
@@ -1046,6 +1057,7 @@ swp_entry_t get_swap_page_of_type(int type)
atomic_long_inc(&nr_swap_pages);
}
spin_unlock(&si->lock);
+fail:
return (swp_entry_t) {0};
}
@@ -1057,9 +1069,9 @@ static struct swap_info_struct *__swap_info_get(swp_entry_t entry)
if (!entry.val)
goto out;
type = swp_type(entry);
- if (type >= nr_swapfiles)
+ p = swap_type_to_swap_info(type);
+ if (!p)
goto bad_nofile;
- p = swap_info[type];
if (!(p->flags & SWP_USED))
goto bad_device;
offset = swp_offset(entry);
@@ -1708,10 +1720,9 @@ int swap_type_of(dev_t device, sector_t offset, struct block_device **bdev_p)
sector_t swapdev_block(int type, pgoff_t offset)
{
struct block_device *bdev;
+ struct swap_info_struct *si = swap_type_to_swap_info(type);
- if ((unsigned int)type >= nr_swapfiles)
- return 0;
- if (!(swap_info[type]->flags & SWP_WRITEOK))
+ if (!si || !(si->flags & SWP_WRITEOK))
return 0;
return map_swap_entry(swp_entry(type, offset), &bdev);
}
@@ -2269,7 +2280,7 @@ static sector_t map_swap_entry(swp_entry_t entry, struct block_device **bdev)
struct swap_extent *se;
pgoff_t offset;
- sis = swap_info[swp_type(entry)];
+ sis = swp_swap_info(entry);
*bdev = sis->bdev;
offset = swp_offset(entry);
@@ -2707,9 +2718,7 @@ static void *swap_start(struct seq_file *swap, loff_t *pos)
if (!l)
return SEQ_START_TOKEN;
- for (type = 0; type < nr_swapfiles; type++) {
- smp_rmb(); /* read nr_swapfiles before swap_info[type] */
- si = swap_info[type];
+ for (type = 0; (si = swap_type_to_swap_info(type)); type++) {
if (!(si->flags & SWP_USED) || !si->swap_map)
continue;
if (!--l)
@@ -2729,9 +2738,7 @@ static void *swap_next(struct seq_file *swap, void *v, loff_t *pos)
else
type = si->type + 1;
- for (; type < nr_swapfiles; type++) {
- smp_rmb(); /* read nr_swapfiles before swap_info[type] */
- si = swap_info[type];
+ for (; (si = swap_type_to_swap_info(type)); type++) {
if (!(si->flags & SWP_USED) || !si->swap_map)
continue;
++*pos;
@@ -2838,14 +2845,14 @@ static struct swap_info_struct *alloc_swap_info(void)
}
if (type >= nr_swapfiles) {
p->type = type;
- swap_info[type] = p;
+ WRITE_ONCE(swap_info[type], p);
/*
* Write swap_info[type] before nr_swapfiles, in case a
* racing procfs swap_start() or swap_next() is reading them.
* (We never shrink nr_swapfiles, we never free this entry.)
*/
smp_wmb();
- nr_swapfiles++;
+ WRITE_ONCE(nr_swapfiles, nr_swapfiles + 1);
} else {
kvfree(p);
p = swap_info[type];
@@ -3365,7 +3372,7 @@ static int __swap_duplicate(swp_entry_t entry, unsigned char usage)
{
struct swap_info_struct *p;
struct swap_cluster_info *ci;
- unsigned long offset, type;
+ unsigned long offset;
unsigned char count;
unsigned char has_cache;
int err = -EINVAL;
@@ -3373,10 +3380,10 @@ static int __swap_duplicate(swp_entry_t entry, unsigned char usage)
if (non_swap_entry(entry))
goto out;
- type = swp_type(entry);
- if (type >= nr_swapfiles)
+ p = swp_swap_info(entry);
+ if (!p)
goto bad_file;
- p = swap_info[type];
+
offset = swp_offset(entry);
if (unlikely(offset >= p->max))
goto out;
@@ -3473,7 +3480,7 @@ int swapcache_prepare(swp_entry_t entry)
struct swap_info_struct *swp_swap_info(swp_entry_t entry)
{
- return swap_info[swp_type(entry)];
+ return swap_type_to_swap_info(swp_type(entry));
}
struct swap_info_struct *page_swap_info(struct page *page)
--
2.19.1
next prev parent reply other threads:[~2019-03-27 19:10 UTC|newest]
Thread overview: 192+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-27 18:07 [PATCH AUTOSEL 4.19 001/192] CIFS: fix POSIX lock leak and invalid ptr deref Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 002/192] h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 003/192] f2fs: fix to adapt small inline xattr space in __find_inline_xattr() Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 004/192] f2fs: fix to avoid deadlock in f2fs_read_inline_dir() Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 005/192] f2fs: fix to avoid deadlock of atomic file operations Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 006/192] i2c: sis630: correct format strings Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 007/192] tracing: kdb: Fix ftdump to not sleep Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 008/192] net/mlx5: Avoid panic when setting vport rate Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 009/192] net/mlx5: Avoid panic when setting vport mac, getting vport config Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 010/192] gpio: gpio-omap: fix level interrupt idling Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 011/192] include/linux/relay.h: fix percpu annotation in struct rchan Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 012/192] sysctl: handle overflow for file-max Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 013/192] net: stmmac: Avoid sometimes uninitialized Clang warnings Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 014/192] enic: fix build warning without CONFIG_CPUMASK_OFFSTACK Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 015/192] libbpf: force fixdep compilation at the start of the build Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 016/192] scsi: hisi_sas: Set PHY linkrate when disconnected Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 017/192] scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 018/192] iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 019/192] x86/hyperv: Fix kernel panic when kexec on HyperV Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 020/192] perf c2c: Fix c2c report for empty numa node Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 021/192] mm/sparse: fix a bad comparison Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 022/192] mm/cma.c: cma_declare_contiguous: correct err handling Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 023/192] mm/page_ext.c: fix an imbalance with kmemleak Sasha Levin
2019-03-27 18:07 ` Sasha Levin [this message]
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 025/192] mm,oom: don't kill global init via memory.oom.group Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 026/192] memcg: killed threads should not invoke memcg OOM killer Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 027/192] mm, mempolicy: fix uninit memory access Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 028/192] mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512! Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 029/192] mm/slab.c: kmemleak no scan alien caches Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 030/192] ocfs2: fix a panic problem caused by o2cb_ctl Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 031/192] f2fs: do not use mutex lock in atomic context Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 032/192] f2fs: fix to data block override node segment by mistake Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 033/192] fs/file.c: initialize init_files.resize_wait Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 034/192] page_poison: play nicely with KASAN Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 035/192] cifs: use correct format characters Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 036/192] dm thin: add sanity checks to thin-pool and external snapshot creation Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 037/192] f2fs: fix to check inline_xattr_size boundary correctly Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 038/192] cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 039/192] cifs: Fix NULL pointer dereference of devname Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 040/192] fs: Make splice() and tee() take into account O_NONBLOCK flag on pipes Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 041/192] netfilter: nf_tables: check the result of dereferencing base_chain->stats Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 042/192] netfilter: conntrack: tcp: only close if RST matches exact sequence Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 043/192] jbd2: fix invalid descriptor block checksum Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 044/192] fs: fix guard_bio_eod to check for real EOD errors Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 045/192] tools lib traceevent: Fix buffer overflow in arg_eval Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 046/192] PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() Sasha Levin
2019-03-27 18:07 ` [PATCH AUTOSEL 4.19 047/192] wil6210: check null pointer in _wil_cfg80211_merge_extra_ies Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 048/192] mt76: fix a leaked reference by adding a missing of_node_put Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 049/192] crypto: crypto4xx - add missing of_node_put after of_device_is_available Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 050/192] crypto: cavium/zip - fix collision with generic cra_driver_name Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 051/192] usb: chipidea: Grab the (legacy) USB PHY by phandle first Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 052/192] powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 053/192] scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 054/192] kbuild: invoke syncconfig if include/config/auto.conf.cmd is missing Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 055/192] powerpc/xmon: Fix opcode being uninitialized in print_insn_powerpc Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 056/192] coresight: etm4x: Add support to enable ETMv4.2 Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 057/192] serial: 8250_pxa: honor the port number from devicetree Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 058/192] ARM: 8840/1: use a raw_spinlock_t in unwind Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 059/192] iommu/io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 060/192] powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area callback Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 061/192] btrfs: qgroup: Make qgroup async transaction commit more aggressive Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 062/192] mmc: omap: fix the maximum timeout setting Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 063/192] net: dsa: mv88e6xxx: Add lockdep classes to fix false positive splat Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 064/192] e1000e: Fix -Wformat-truncation warnings Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 065/192] mlxsw: spectrum: Avoid " Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 066/192] platform/x86: ideapad-laptop: Fix no_hw_rfkill_list for Lenovo RESCUER R720-15IKBN Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 067/192] platform/mellanox: mlxreg-hotplug: Fix KASAN warning Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 068/192] loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 069/192] IB/mlx4: Increase the timeout for CM cache Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 070/192] clk: fractional-divider: check parent rate only if flag is set Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 071/192] perf annotate: Fix getting source line failure Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 072/192] ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 073/192] ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 074/192] cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 075/192] efi: cper: Fix possible out-of-bounds access Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 076/192] s390/ism: ignore some errors during deregistration Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 077/192] scsi: megaraid_sas: return error when create DMA pool failed Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 078/192] scsi: fcoe: make use of fip_mode enum complete Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 079/192] drm/amd/display: Clear stream->mode_changed after commit Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 080/192] perf test: Fix failure of 'evsel-tp-sched' test on s390 Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 081/192] mwifiex: don't advertise IBSS features without FW support Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 082/192] perf report: Don't shadow inlined symbol with different addr range Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 083/192] SoC: imx-sgtl5000: add missing put_device() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 084/192] media: ov7740: fix runtime pm initialization Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 085/192] media: sh_veu: Correct return type for mem2mem buffer helpers Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 086/192] media: s5p-jpeg: " Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 087/192] media: rockchip/rga: " Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 088/192] media: s5p-g2d: " Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 089/192] media: mx2_emmaprp: " Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 090/192] media: mtk-jpeg: " Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 091/192] mt76: usb: do not run mt76u_queues_deinit twice Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 092/192] Bluetooth: hci_ldisc: Initialize hci_dev before open() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 093/192] xen/gntdev: Do not destroy context while dma-bufs are in use Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 094/192] vfs: fix preadv64v2 and pwritev64v2 compat syscalls with offset == -1 Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 095/192] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 096/192] cgroup, rstat: Don't flush subtree root unless necessary Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 097/192] jbd2: fix race when writing superblock Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 098/192] leds: lp55xx: fix null deref on firmware load failure Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 099/192] perf report: Add s390 diagnosic sampling descriptor size Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 100/192] iwlwifi: pcie: fix emergency path Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 101/192] ACPI / video: Refactor and fix dmi_is_desktop() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 102/192] drm: allow render capable master with DRM_AUTH ioctls Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 103/192] selftests: skip seccomp get_metadata test if not real root Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 104/192] kprobes: Prohibit probing on bsearch() Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 105/192] kprobes: Prohibit probing on RCU debug routine Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 106/192] netfilter: conntrack: fix cloned unconfirmed skb->_nfct race in __nf_conntrack_confirm Sasha Levin
2019-03-27 18:08 ` [PATCH AUTOSEL 4.19 107/192] ARM: 8833/1: Ensure that NEON code always compiles with Clang Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 108/192] ARM: dts: meson8b: fix the Ethernet data line signals in eth_rgmii_pins Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 109/192] ALSA: PCM: check if ops are defined before suspending PCM Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 110/192] ath10k: fix shadow register implementation for WCN3990 Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 111/192] usb: f_fs: Avoid crash due to out-of-scope stack ptr access Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 112/192] sched/topology: Fix percpu data types in struct sd_data & struct s_data Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 113/192] bcache: fix input overflow to cache set sysfs file io_error_halflife Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 114/192] bcache: fix input overflow to sequential_cutoff Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 115/192] bcache: fix potential div-zero error of writeback_rate_i_term_inverse Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 116/192] bcache: improve sysfs_strtoul_clamp() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 117/192] genirq: Avoid summation loops for /proc/stat Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 118/192] net: marvell: mvpp2: fix stuck in-band SGMII negotiation Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 119/192] iw_cxgb4: fix srqidx leak during connection abort Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 120/192] net: phy: consider latched link-down status in polling mode Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 121/192] fbdev: fbmem: fix memory access if logo is bigger than the screen Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 122/192] cdrom: Fix race condition in cdrom_sysctl_register Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 123/192] drm: rcar-du: add missing of_node_put Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 124/192] drm/amd/display: Don't re-program planes for DPMS changes Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 125/192] drm/amd/display: Disconnect mpcc when changing tg Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 126/192] perf/aux: Make perf_event accessible to setup_aux() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 127/192] e1000e: fix cyclic resets at link up with active tx Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 128/192] e1000e: Exclude device from suspend direct complete optimization Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 129/192] platform/x86: intel_pmc_core: Fix PCH IP sts reading Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 130/192] i2c: of: Try to find an I2C adapter matching the parent Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 131/192] staging: spi: mt7621: Add return code check on device_reset() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 132/192] iwlwifi: mvm: fix RFH config command with >=10 CPUs Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 133/192] ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 134/192] sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 135/192] locking/lockdep: Add debug_locks check in __lock_downgrade() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 136/192] efi/memattr: Don't bail on zero VA if it equals the region's PA Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 137/192] sched/core: Use READ_ONCE()/WRITE_ONCE() in move_queued_task()/task_rq_lock() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 138/192] drm/vkms: Bugfix extra vblank frame Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 139/192] ARM: dts: lpc32xx: Remove leading 0x and 0s from bindings notation Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 140/192] efi/arm/arm64: Allow SetVirtualAddressMap() to be omitted Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 141/192] soc: qcom: gsbi: Fix error handling in gsbi_probe() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 142/192] mt7601u: bump supported EEPROM version Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 143/192] ARM: 8830/1: NOMMU: Toggle only bits in EXC_RETURN we are really care of Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 144/192] ARM: avoid Cortex-A9 livelock on tight dmb loops Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 145/192] block, bfq: fix in-service-queue check for queue merging Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 146/192] bpf: fix missing prototype warnings Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 147/192] selftests/bpf: skip verifier tests for unsupported program types Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 148/192] powerpc/64s: Clear on-stack exception marker upon exception return Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 149/192] cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 150/192] backlight: pwm_bl: Use gpiod_get_value_cansleep() to get initial state Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 151/192] tty: increase the default flip buffer limit to 2*640K Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 152/192] powerpc/pseries: Perform full re-add of CPU for topology update post-migration Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 153/192] drm/amd/display: Enable vblank interrupt during CRC capture Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 154/192] ALSA: dice: add support for Solid State Logic Duende Classic/Mini Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 155/192] usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 156/192] platform/x86: intel-hid: Missing power button release on some Dell models Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 157/192] perf script python: Use PyBytes for attr in trace-event-python Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 158/192] perf script python: Add trace_context extension module to sys.modules Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 159/192] media: mt9m111: set initial frame size other than 0x0 Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 160/192] hwrng: virtio - Avoid repeated init of completion Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 161/192] soc/tegra: fuse: Fix illegal free of IO base address Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 162/192] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR busy_clear bit Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 163/192] Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 164/192] f2fs: UBSAN: set boolean value iostat_enable correctly Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 165/192] hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 166/192] Bluetooth: hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() Sasha Levin
2019-03-27 18:09 ` [PATCH AUTOSEL 4.19 167/192] cpu/hotplug: Mute hotplug lockdep during init Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 168/192] dmaengine: imx-dma: fix warning comparison of distinct pointer types Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 169/192] dmaengine: qcom_hidma: assign channel cookie correctly Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 170/192] dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 171/192] netfilter: physdev: relax br_netfilter dependency Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 172/192] media: rcar-vin: Allow independent VIN link enablement Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 173/192] media: s5p-jpeg: Check for fmt_ver_flag when doing fmt enumeration Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 174/192] regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 175/192] pinctrl: meson: meson8b: add the eth_rxd2 and eth_rxd3 pins Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 176/192] drm: Auto-set allow_fb_modifiers when given modifiers at plane init Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 177/192] drm/nouveau: Stop using drm_crtc_force_disable Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 178/192] x86/build: Specify elf_i386 linker emulation explicitly for i386 objects Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 179/192] selinux: do not override context on context mounts Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 180/192] brcmfmac: Use firmware_request_nowarn for the clm_blob Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 181/192] wlcore: Fix memory leak in case wl12xx_fetch_firmware failure Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 182/192] x86/build: Mark per-CPU symbols as absolute explicitly for LLD Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 183/192] drm/fb-helper: fix leaks in error path of drm_fb_helper_fbdev_setup Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 184/192] clk: meson: clean-up clock registration Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 185/192] clk: rockchip: fix frac settings of GPLL clock for rk3328 Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 186/192] dmaengine: tegra: avoid overflow of byte tracking Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 187/192] Input: soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 188/192] drm: Reorder set_property_atomic to avoid returning with an active ww_ctx Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 189/192] drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 190/192] net: stmmac: Avoid one more sometimes uninitialized Clang warning Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 191/192] ACPI / video: Extend chassis-type detection with a "Lunch Box" check Sasha Levin
2019-03-27 18:10 ` [PATCH AUTOSEL 4.19 192/192] bcache: fix potential div-zero error of writeback_rate_p_term_inverse Sasha Levin
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=20190327181025.13507-24-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=ak@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=daniel.m.jordan@oracle.com \
--cc=dave.hansen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=osandov@fb.com \
--cc=paulmck@linux.vnet.ibm.com \
--cc=sfr@canb.auug.org.au \
--cc=shli@kernel.org \
--cc=stable@vger.kernel.org \
--cc=stern@rowland.harvard.edu \
--cc=tj@kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=will.deacon@arm.com \
/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