stable.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, Josef Bacik <josef@toxicpanda.com>,
	Filipe Manana <fdmanana@suse.com>,
	David Sterba <dsterba@suse.com>
Subject: [PATCH 4.14 018/193] Btrfs: fix race between ranged fsync and writeback of adjacent ranges
Date: Wed, 29 May 2019 20:04:32 -0700	[thread overview]
Message-ID: <20190530030450.941012826@linuxfoundation.org> (raw)
In-Reply-To: <20190530030446.953835040@linuxfoundation.org>

From: Filipe Manana <fdmanana@suse.com>

commit 0c713cbab6200b0ab6473b50435e450a6e1de85d upstream.

When we do a full fsync (the bit BTRFS_INODE_NEEDS_FULL_SYNC is set in the
inode) that happens to be ranged, which happens during a msync() or writes
for files opened with O_SYNC for example, we can end up with a corrupt log,
due to different file extent items representing ranges that overlap with
each other, or hit some assertion failures.

When doing a ranged fsync we only flush delalloc and wait for ordered
exents within that range. If while we are logging items from our inode
ordered extents for adjacent ranges complete, we end up in a race that can
make us insert the file extent items that overlap with others we logged
previously and the assertion failures.

For example, if tree-log.c:copy_items() receives a leaf that has the
following file extents items, all with a length of 4K and therefore there
is an implicit hole in the range 68K to 72K - 1:

  (257 EXTENT_ITEM 64K), (257 EXTENT_ITEM 72K), (257 EXTENT_ITEM 76K), ...

It copies them to the log tree. However due to the need to detect implicit
holes, it may release the path, in order to look at the previous leaf to
detect an implicit hole, and then later it will search again in the tree
for the first file extent item key, with the goal of locking again the
leaf (which might have changed due to concurrent changes to other inodes).

However when it locks again the leaf containing the first key, the key
corresponding to the extent at offset 72K may not be there anymore since
there is an ordered extent for that range that is finishing (that is,
somewhere in the middle of btrfs_finish_ordered_io()), and it just
removed the file extent item but has not yet replaced it with a new file
extent item, so the part of copy_items() that does hole detection will
decide that there is a hole in the range starting from 68K to 76K - 1,
and therefore insert a file extent item to represent that hole, having
a key offset of 68K. After that we now have a log tree with 2 different
extent items that have overlapping ranges:

 1) The file extent item copied before copy_items() released the path,
    which has a key offset of 72K and a length of 4K, representing the
    file range 72K to 76K - 1.

 2) And a file extent item representing a hole that has a key offset of
    68K and a length of 8K, representing the range 68K to 76K - 1. This
    item was inserted after releasing the path, and overlaps with the
    extent item inserted before.

The overlapping extent items can cause all sorts of unpredictable and
incorrect behaviour, either when replayed or if a fast (non full) fsync
happens later, which can trigger a BUG_ON() when calling
btrfs_set_item_key_safe() through __btrfs_drop_extents(), producing a
trace like the following:

  [61666.783269] ------------[ cut here ]------------
  [61666.783943] kernel BUG at fs/btrfs/ctree.c:3182!
  [61666.784644] invalid opcode: 0000 [#1] PREEMPT SMP
  (...)
  [61666.786253] task: ffff880117b88c40 task.stack: ffffc90008168000
  [61666.786253] RIP: 0010:btrfs_set_item_key_safe+0x7c/0xd2 [btrfs]
  [61666.786253] RSP: 0018:ffffc9000816b958 EFLAGS: 00010246
  [61666.786253] RAX: 0000000000000000 RBX: 000000000000000f RCX: 0000000000030000
  [61666.786253] RDX: 0000000000000000 RSI: ffffc9000816ba4f RDI: ffffc9000816b937
  [61666.786253] RBP: ffffc9000816b998 R08: ffff88011dae2428 R09: 0000000000001000
  [61666.786253] R10: 0000160000000000 R11: 6db6db6db6db6db7 R12: ffff88011dae2418
  [61666.786253] R13: ffffc9000816ba4f R14: ffff8801e10c4118 R15: ffff8801e715c000
  [61666.786253] FS:  00007f6060a18700(0000) GS:ffff88023f5c0000(0000) knlGS:0000000000000000
  [61666.786253] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
  [61666.786253] CR2: 00007f6060a28000 CR3: 0000000213e69000 CR4: 00000000000006e0
  [61666.786253] Call Trace:
  [61666.786253]  __btrfs_drop_extents+0x5e3/0xaad [btrfs]
  [61666.786253]  ? time_hardirqs_on+0x9/0x14
  [61666.786253]  btrfs_log_changed_extents+0x294/0x4e0 [btrfs]
  [61666.786253]  ? release_extent_buffer+0x38/0xb4 [btrfs]
  [61666.786253]  btrfs_log_inode+0xb6e/0xcdc [btrfs]
  [61666.786253]  ? lock_acquire+0x131/0x1c5
  [61666.786253]  ? btrfs_log_inode_parent+0xee/0x659 [btrfs]
  [61666.786253]  ? arch_local_irq_save+0x9/0xc
  [61666.786253]  ? btrfs_log_inode_parent+0x1f5/0x659 [btrfs]
  [61666.786253]  btrfs_log_inode_parent+0x223/0x659 [btrfs]
  [61666.786253]  ? arch_local_irq_save+0x9/0xc
  [61666.786253]  ? lockref_get_not_zero+0x2c/0x34
  [61666.786253]  ? rcu_read_unlock+0x3e/0x5d
  [61666.786253]  btrfs_log_dentry_safe+0x60/0x7b [btrfs]
  [61666.786253]  btrfs_sync_file+0x317/0x42c [btrfs]
  [61666.786253]  vfs_fsync_range+0x8c/0x9e
  [61666.786253]  SyS_msync+0x13c/0x1c9
  [61666.786253]  entry_SYSCALL_64_fastpath+0x18/0xad

A sample of a corrupt log tree leaf with overlapping extents I got from
running btrfs/072:

      item 14 key (295 108 200704) itemoff 2599 itemsize 53
              extent data disk bytenr 0 nr 0
              extent data offset 0 nr 458752 ram 458752
      item 15 key (295 108 659456) itemoff 2546 itemsize 53
              extent data disk bytenr 4343541760 nr 770048
              extent data offset 606208 nr 163840 ram 770048
      item 16 key (295 108 663552) itemoff 2493 itemsize 53
              extent data disk bytenr 4343541760 nr 770048
              extent data offset 610304 nr 155648 ram 770048
      item 17 key (295 108 819200) itemoff 2440 itemsize 53
              extent data disk bytenr 4334788608 nr 4096
              extent data offset 0 nr 4096 ram 4096

The file extent item at offset 659456 (item 15) ends at offset 823296
(659456 + 163840) while the next file extent item (item 16) starts at
offset 663552.

Another different problem that the race can trigger is a failure in the
assertions at tree-log.c:copy_items(), which expect that the first file
extent item key we found before releasing the path exists after we have
released path and that the last key we found before releasing the path
also exists after releasing the path:

  $ cat -n fs/btrfs/tree-log.c
  4080          if (need_find_last_extent) {
  4081                  /* btrfs_prev_leaf could return 1 without releasing the path */
  4082                  btrfs_release_path(src_path);
  4083                  ret = btrfs_search_slot(NULL, inode->root, &first_key,
  4084                                  src_path, 0, 0);
  4085                  if (ret < 0)
  4086                          return ret;
  4087                  ASSERT(ret == 0);
  (...)
  4103                  if (i >= btrfs_header_nritems(src_path->nodes[0])) {
  4104                          ret = btrfs_next_leaf(inode->root, src_path);
  4105                          if (ret < 0)
  4106                                  return ret;
  4107                          ASSERT(ret == 0);
  4108                          src = src_path->nodes[0];
  4109                          i = 0;
  4110                          need_find_last_extent = true;
  4111                  }
  (...)

The second assertion implicitly expects that the last key before the path
release still exists, because the surrounding while loop only stops after
we have found that key. When this assertion fails it produces a stack like
this:

  [139590.037075] assertion failed: ret == 0, file: fs/btrfs/tree-log.c, line: 4107
  [139590.037406] ------------[ cut here ]------------
  [139590.037707] kernel BUG at fs/btrfs/ctree.h:3546!
  [139590.038034] invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC PTI
  [139590.038340] CPU: 1 PID: 31841 Comm: fsstress Tainted: G        W         5.0.0-btrfs-next-46 #1
  (...)
  [139590.039354] RIP: 0010:assfail.constprop.24+0x18/0x1a [btrfs]
  (...)
  [139590.040397] RSP: 0018:ffffa27f48f2b9b0 EFLAGS: 00010282
  [139590.040730] RAX: 0000000000000041 RBX: ffff897c635d92c8 RCX: 0000000000000000
  [139590.041105] RDX: 0000000000000000 RSI: ffff897d36a96868 RDI: ffff897d36a96868
  [139590.041470] RBP: ffff897d1b9a0708 R08: 0000000000000000 R09: 0000000000000000
  [139590.041815] R10: 0000000000000008 R11: 0000000000000000 R12: 0000000000000013
  [139590.042159] R13: 0000000000000227 R14: ffff897cffcbba88 R15: 0000000000000001
  [139590.042501] FS:  00007f2efc8dee80(0000) GS:ffff897d36a80000(0000) knlGS:0000000000000000
  [139590.042847] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
  [139590.043199] CR2: 00007f8c064935e0 CR3: 0000000232252002 CR4: 00000000003606e0
  [139590.043547] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
  [139590.043899] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
  [139590.044250] Call Trace:
  [139590.044631]  copy_items+0xa3f/0x1000 [btrfs]
  [139590.045009]  ? generic_bin_search.constprop.32+0x61/0x200 [btrfs]
  [139590.045396]  btrfs_log_inode+0x7b3/0xd70 [btrfs]
  [139590.045773]  btrfs_log_inode_parent+0x2b3/0xce0 [btrfs]
  [139590.046143]  ? do_raw_spin_unlock+0x49/0xc0
  [139590.046510]  btrfs_log_dentry_safe+0x4a/0x70 [btrfs]
  [139590.046872]  btrfs_sync_file+0x3b6/0x440 [btrfs]
  [139590.047243]  btrfs_file_write_iter+0x45b/0x5c0 [btrfs]
  [139590.047592]  __vfs_write+0x129/0x1c0
  [139590.047932]  vfs_write+0xc2/0x1b0
  [139590.048270]  ksys_write+0x55/0xc0
  [139590.048608]  do_syscall_64+0x60/0x1b0
  [139590.048946]  entry_SYSCALL_64_after_hwframe+0x49/0xbe
  [139590.049287] RIP: 0033:0x7f2efc4be190
  (...)
  [139590.050342] RSP: 002b:00007ffe743243a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
  [139590.050701] RAX: ffffffffffffffda RBX: 0000000000008d58 RCX: 00007f2efc4be190
  [139590.051067] RDX: 0000000000008d58 RSI: 00005567eca0f370 RDI: 0000000000000003
  [139590.051459] RBP: 0000000000000024 R08: 0000000000000003 R09: 0000000000008d60
  [139590.051863] R10: 0000000000000078 R11: 0000000000000246 R12: 0000000000000003
  [139590.052252] R13: 00000000003d3507 R14: 00005567eca0f370 R15: 0000000000000000
  (...)
  [139590.055128] ---[ end trace 193f35d0215cdeeb ]---

So fix this race between a full ranged fsync and writeback of adjacent
ranges by flushing all delalloc and waiting for all ordered extents to
complete before logging the inode. This is the simplest way to solve the
problem because currently the full fsync path does not deal with ranges
at all (it assumes a full range from 0 to LLONG_MAX) and it always needs
to look at adjacent ranges for hole detection. For use cases of ranged
fsyncs this can make a few fsyncs slower but on the other hand it can
make some following fsyncs to other ranges do less work or no need to do
anything at all. A full fsync is rare anyway and happens only once after
loading/creating an inode and once after less common operations such as a
shrinking truncate.

This is an issue that exists for a long time, and was often triggered by
generic/127, because it does mmap'ed writes and msync (which triggers a
ranged fsync). Adding support for the tree checker to detect overlapping
extents (next patch in the series) and trigger a WARN() when such cases
are found, and then calling btrfs_check_leaf_full() at the end of
btrfs_insert_file_extent() made the issue much easier to detect. Running
btrfs/072 with that change to the tree checker and making fsstress open
files always with O_SYNC made it much easier to trigger the issue (as
triggering it with generic/127 is very rare).

CC: stable@vger.kernel.org # 3.16+
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 fs/btrfs/file.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -2059,6 +2059,18 @@ int btrfs_sync_file(struct file *file, l
 	u64 len;
 
 	/*
+	 * If the inode needs a full sync, make sure we use a full range to
+	 * avoid log tree corruption, due to hole detection racing with ordered
+	 * extent completion for adjacent ranges, and assertion failures during
+	 * hole detection.
+	 */
+	if (test_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
+		     &BTRFS_I(inode)->runtime_flags)) {
+		start = 0;
+		end = LLONG_MAX;
+	}
+
+	/*
 	 * The range length can be represented by u64, we have to do the typecasts
 	 * to avoid signed overflow if it's [0, LLONG_MAX] eg. from fsync()
 	 */



  parent reply	other threads:[~2019-05-30  3:59 UTC|newest]

Thread overview: 199+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-30  3:04 [PATCH 4.14 000/193] 4.14.123-stable review Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 001/193] x86: Hide the int3_emulate_call/jmp functions from UML Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 002/193] ext4: do not delete unlinked inode from orphan list on failed truncate Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 003/193] f2fs: Fix use of number of devices Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 004/193] KVM: x86: fix return value for reserved EFER Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 005/193] bio: fix improper use of smp_mb__before_atomic() Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 006/193] sbitmap: " Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 007/193] Revert "scsi: sd: Keep disk read-only when re-reading partition" Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 008/193] crypto: vmx - CTR: always increment IV as quadword Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 009/193] mmc: sdhci-iproc: cygnus: Set NO_HISPD bit to fix HS50 data hold time problem Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 010/193] mmc: sdhci-iproc: " Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 011/193] kvm: svm/avic: fix off-by-one in checking host APIC ID Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 012/193] libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 013/193] libnvdimm/namespace: Fix label tracking error Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 014/193] arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 015/193] gfs2: Fix sign extension bug in gfs2_update_stats Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 016/193] Btrfs: do not abort transaction at btrfs_update_root() after failure to COW path Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 017/193] Btrfs: avoid fallback to transaction commit during fsync of files with holes Greg Kroah-Hartman
2019-05-30  3:04 ` Greg Kroah-Hartman [this message]
2019-05-30  3:04 ` [PATCH 4.14 019/193] btrfs: sysfs: Fix error path kobject memory leak Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 020/193] btrfs: sysfs: dont leak memory when failing add fsid Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 021/193] fbdev: fix divide error in fb_var_to_videomode Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 022/193] hugetlb: use same fault hash key for shared and private mappings Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 023/193] brcmfmac: assure SSID length from firmware is limited Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 024/193] brcmfmac: add subtype check for event handling in data path Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 025/193] btrfs: honor path->skip_locking in backref code Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 026/193] fbdev: fix WARNING in __alloc_pages_nodemask bug Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 027/193] media: cpia2: Fix use-after-free in cpia2_exit Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 028/193] media: serial_ir: Fix use-after-free in serial_ir_init_module Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 029/193] media: vivid: use vfree() instead of kfree() for dev->bitmap_cap Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 030/193] ssb: Fix possible NULL pointer dereference in ssb_host_pcmcia_exit Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 031/193] bpf: devmap: fix use-after-free Read in __dev_map_entry_free Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 032/193] batman-adv: mcast: fix multicast tt/tvlv worker locking Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 033/193] at76c50x-usb: Dont register led_trigger if usb_register_driver failed Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 034/193] net: erspan: fix use-after-free Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 035/193] Revert "btrfs: Honour FITRIM range constraints during free space trim" Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 036/193] gfs2: Fix lru_count going negative Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 037/193] cxgb4: Fix error path in cxgb4_init_module Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 038/193] NFS: make nfs_match_client killable Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 039/193] IB/hfi1: Fix WQ_MEM_RECLAIM warning Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 040/193] gfs2: Fix occasional glock use-after-free Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 041/193] mmc: core: Verify SD bus width Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 042/193] tools/bpf: fix perf build error with uClibc (seen on ARC) Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 043/193] dmaengine: tegra210-dma: free dma controller in remove() Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 044/193] net: ena: gcc 8: fix compilation warning Greg Kroah-Hartman
2019-05-30  3:04 ` [PATCH 4.14 045/193] pinctrl: zte: fix leaked of_node references Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 046/193] ASoC: hdmi-codec: unlock the device on startup errors Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 047/193] powerpc/perf: Return accordingly on invalid chip-id in Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 048/193] powerpc/boot: Fix missing check of lseek() return value Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 049/193] ASoC: imx: fix fiq dependencies Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 050/193] spi: pxa2xx: fix SCR (divisor) calculation Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 051/193] brcm80211: potential NULL dereference in brcmf_cfg80211_vndr_cmds_dcmd_handler() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 052/193] ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 053/193] ARM: vdso: Remove dependency with the arch_timer driver internals Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 054/193] arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 055/193] sched/cpufreq: Fix kobject memleak Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 056/193] scsi: qla2xxx: Fix a qla24xx_enable_msix() error path Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 057/193] scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 058/193] scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in tcm_qla2xxx_close_session() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 059/193] Btrfs: fix data bytes_may_use underflow with fallocate due to failed quota reserve Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 060/193] btrfs: fix panic during relocation after ENOSPC before writeback happens Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 061/193] btrfs: Dont panic when we cant find a root key Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 062/193] iwlwifi: pcie: dont crash on invalid RX interrupt Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 063/193] rtc: 88pm860x: prevent use-after-free on device remove Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 064/193] scsi: qedi: Abort ep termination if offload not scheduled Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 065/193] w1: fix the resume command API Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 066/193] dmaengine: pl330: _stop: clear interrupt status Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 067/193] mac80211/cfg80211: update bss channel on channel switch Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 068/193] libbpf: fix samples/bpf build failure due to undefined UINT32_MAX Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 069/193] ASoC: fsl_sai: Update is_slave_mode with correct value Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 070/193] mwifiex: prevent an array overflow Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 071/193] net: cw1200: fix a NULL pointer dereference Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 072/193] crypto: sun4i-ss - Fix invalid calculation of hash end Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 073/193] bcache: return error immediately in bch_journal_replay() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 074/193] bcache: fix failure in journal relplay Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 075/193] bcache: add failure check to run_cache_set() for journal replay Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 076/193] bcache: avoid clang -Wunintialized warning Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 077/193] vfio-ccw: Do not call flush_workqueue while holding the spinlock Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 078/193] vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 079/193] x86/build: Move _etext to actual end of .text Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 080/193] smpboot: Place the __percpu annotation correctly Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 081/193] x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 082/193] mm/uaccess: Use unsigned long to placate UBSAN warnings on older GCC versions Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 083/193] HID: logitech-hidpp: use RAP instead of FAP to get the protocol version Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 084/193] pinctrl: pistachio: fix leaked of_node references Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 085/193] pinctrl: samsung: " Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 086/193] clk: rockchip: undo several noc and special clocks as critical on rk3288 Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 087/193] dmaengine: at_xdmac: remove BUG_ON macro in tasklet Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 088/193] media: coda: clear error return value before picture run Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 089/193] media: ov6650: Move v4l2_clk_get() to ov6650_video_probe() helper Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 090/193] media: au0828: stop video streaming only when last user stops Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 091/193] media: ov2659: make S_FMT succeed even if requested format doesnt match Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 092/193] audit: fix a memory leak bug Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 093/193] media: stm32-dcmi: fix crash when subdev do not expose any formats Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 094/193] media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 095/193] media: pvrusb2: Prevent a buffer overflow Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 096/193] powerpc/numa: improve control of topology updates Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 097/193] powerpc/64: Fix booting large kernels with STRICT_KERNEL_RWX Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 098/193] random: add a spinlock_t to struct batched_entropy Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 099/193] cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 100/193] sched/core: Check quota and period overflow at usec to nsec conversion Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 101/193] sched/rt: Check integer " Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 102/193] sched/core: Handle overflow in cpu_shares_write_u64 Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 103/193] drm/msm: a5xx: fix possible object reference leak Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 104/193] USB: core: Dont unbind interfaces following device reset failure Greg Kroah-Hartman
2019-05-30  3:05 ` [PATCH 4.14 105/193] x86/irq/64: Limit IST stack overflow check to #DB stack Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 106/193] phy: sun4i-usb: Make sure to disable PHY0 passby for peripheral mode Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 107/193] i40e: Able to add up to 16 MAC filters on an untrusted VF Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 108/193] i40e: dont allow changes to HW VLAN stripping on active port VLANs Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 109/193] arm64: vdso: Fix clock_getres() for CLOCK_REALTIME Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 110/193] RDMA/cxgb4: Fix null pointer dereference on alloc_skb failure Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 111/193] hwmon: (vt1211) Use request_muxed_region for Super-IO accesses Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 112/193] hwmon: (smsc47m1) " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 113/193] hwmon: (smsc47b397) " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 114/193] hwmon: (pc87427) " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 115/193] hwmon: (f71805f) " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 116/193] scsi: libsas: Do discovery on empty PHY to update PHY info Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 117/193] mmc: core: make pwrseq_emmc (partially) support sleepy GPIO controllers Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 118/193] mmc_spi: add a status check for spi_sync_locked Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 119/193] mmc: sdhci-of-esdhc: add erratum eSDHC5 support Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 120/193] mmc: sdhci-of-esdhc: add erratum A-009204 support Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 121/193] mmc: sdhci-of-esdhc: add erratum eSDHC-A001 and A-008358 support Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 122/193] drm/amdgpu: fix old fence check in amdgpu_fence_emit Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 123/193] PM / core: Propagate dev->power.wakeup_path when no callbacks Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 124/193] clk: rockchip: Fix video codec clocks on rk3288 Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 125/193] extcon: arizona: Disable mic detect if running when driver is removed Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 126/193] clk: rockchip: Make rkpwm a critical clock on rk3288 Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 127/193] s390: zcrypt: initialize variables before_use Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 128/193] x86/microcode: Fix the ancient deprecated microcode loading method Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 129/193] s390: cio: fix cio_irb declaration Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 130/193] cpufreq: ppc_cbe: fix possible object reference leak Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 131/193] cpufreq/pasemi: " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 132/193] cpufreq: pmac32: " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 133/193] cpufreq: kirkwood: " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 134/193] block: sed-opal: fix IOC_OPAL_ENABLE_DISABLE_MBR Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 135/193] x86/build: Keep local relocations with ld.lld Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 136/193] iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 137/193] iio: hmc5843: fix potential NULL pointer dereferences Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 138/193] iio: common: ssp_sensors: Initialize calculated_time in ssp_common_process_data Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 139/193] rtlwifi: fix a potential NULL pointer dereference Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 140/193] mwifiex: Fix mem leak in mwifiex_tm_cmd Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 141/193] brcmfmac: fix missing checks for kmemdup Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 142/193] b43: shut up clang -Wuninitialized variable warning Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 143/193] brcmfmac: convert dev_init_lock mutex to completion Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 144/193] brcmfmac: fix WARNING during USB disconnect in case of unempty psq Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 145/193] brcmfmac: fix race during disconnect when USB completion is in progress Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 146/193] brcmfmac: fix Oops when bringing up interface during USB disconnect Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 147/193] rtc: xgene: fix possible race condition Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 148/193] rtlwifi: fix potential NULL pointer dereference Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 149/193] scsi: ufs: Fix regulator load and icc-level configuration Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 150/193] scsi: ufs: Avoid configuring regulator with undefined voltage range Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 151/193] arm64: cpu_ops: fix a leaked reference by adding missing of_node_put Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 152/193] x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 153/193] x86/uaccess, signal: Fix AC=1 bloat Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 154/193] x86/ia32: Fix ia32_restore_sigcontext() AC leak Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 155/193] chardev: add additional check for minor range overlap Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 156/193] RDMA/hns: Fix bad endianess of port_pd variable Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 157/193] HID: core: move Usage Page concatenation to Main item Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 158/193] ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 159/193] ASoC: fsl_utils: " Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 160/193] cxgb3/l2t: Fix undefined behaviour Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 161/193] HID: logitech-hidpp: change low battery level threshold from 31 to 30 percent Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 162/193] spi: tegra114: reset controller on probe Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 163/193] kobject: Dont trigger kobject_uevent(KOBJ_REMOVE) twice Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 164/193] media: video-mux: fix null pointer dereferences Greg Kroah-Hartman
2019-05-30  3:06 ` [PATCH 4.14 165/193] media: wl128x: prevent two potential buffer overflows Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 166/193] scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload check Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 167/193] virtio_console: initialize vtermno value for ports Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 168/193] tty: ipwireless: fix missing checks for ioremap Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 169/193] x86/mce: Fix machine_check_poll() tests for error types Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 170/193] rcutorture: Fix cleanup path for invalid torture_type strings Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 171/193] rcuperf: Fix cleanup path for invalid perf_type strings Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 172/193] usb: core: Add PM runtime calls to usb_hcd_platform_shutdown Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 173/193] scsi: qla4xxx: avoid freeing unallocated dma memory Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 174/193] batman-adv: allow updating DAT entry timeouts on incoming ARP Replies Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 175/193] dmaengine: tegra210-adma: use devm_clk_*() helpers Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 176/193] hwrng: omap - Set default quality Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 177/193] thunderbolt: Fix to check for kmemdup failure Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 178/193] media: m88ds3103: serialize reset messages in m88ds3103_set_frontend Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 179/193] media: vimc: stream: fix thread state before sleep Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 180/193] media: go7007: avoid clang frame overflow warning with KASAN Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 181/193] media: vimc: zero the media_device on probe Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 182/193] scsi: lpfc: Fix FDMI manufacturer attribute value Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 183/193] scsi: lpfc: Fix fc4type information for FDMI Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 184/193] media: saa7146: avoid high stack usage with clang Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 185/193] scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 186/193] spi : spi-topcliff-pch: Fix to handle empty DMA buffers Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 187/193] spi: rspi: Fix sequencer reset during initialization Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 188/193] spi: Fix zero length xfer bug Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 189/193] ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 190/193] drm/drv: Hold ref on parent device during drm_device lifetime Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 191/193] drm: Wake up next in drm_read() chain if we are forced to putback the event Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 192/193] vfio-ccw: Prevent quiesce function going into an infinite loop Greg Kroah-Hartman
2019-05-30  3:07 ` [PATCH 4.14 193/193] NFS: Fix a double unlock from nfs_match,get_client Greg Kroah-Hartman
2019-05-30  8:29 ` [PATCH 4.14 000/193] 4.14.123-stable review kernelci.org bot
2019-05-30 13:21 ` Jon Hunter
2019-05-30 18:28 ` Guenter Roeck
2019-05-30 19:41 ` shuah
2019-05-31  5:16 ` Naresh Kamboju

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=20190530030450.941012826@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=dsterba@suse.com \
    --cc=fdmanana@suse.com \
    --cc=josef@toxicpanda.com \
    --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 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).