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, Coly Li <colyli@suse.de>,
	Jens Axboe <axboe@kernel.dk>, Sasha Levin <sashal@kernel.org>,
	kbuild test robot <lkp@intel.com>
Subject: [PATCH 4.19 179/190] bcache: fix race in btree_flush_write()
Date: Fri, 13 Sep 2019 14:07:14 +0100	[thread overview]
Message-ID: <20190913130614.091905416@linuxfoundation.org> (raw)
In-Reply-To: <20190913130559.669563815@linuxfoundation.org>

[ Upstream commit 50a260e859964002dab162513a10f91ae9d3bcd3 ]

There is a race between mca_reap(), btree_node_free() and journal code
btree_flush_write(), which results very rare and strange deadlock or
panic and are very hard to reproduce.

Let me explain how the race happens. In btree_flush_write() one btree
node with oldest journal pin is selected, then it is flushed to cache
device, the select-and-flush is a two steps operation. Between these two
steps, there are something may happen inside the race window,
- The selected btree node was reaped by mca_reap() and allocated to
  other requesters for other btree node.
- The slected btree node was selected, flushed and released by mca
  shrink callback bch_mca_scan().
When btree_flush_write() tries to flush the selected btree node, firstly
b->write_lock is held by mutex_lock(). If the race happens and the
memory of selected btree node is allocated to other btree node, if that
btree node's write_lock is held already, a deadlock very probably
happens here. A worse case is the memory of the selected btree node is
released, then all references to this btree node (e.g. b->write_lock)
will trigger NULL pointer deference panic.

This race was introduced in commit cafe56359144 ("bcache: A block layer
cache"), and enlarged by commit c4dc2497d50d ("bcache: fix high CPU
occupancy during journal"), which selected 128 btree nodes and flushed
them one-by-one in a quite long time period.

Such race is not easy to reproduce before. On a Lenovo SR650 server with
48 Xeon cores, and configure 1 NVMe SSD as cache device, a MD raid0
device assembled by 3 NVMe SSDs as backing device, this race can be
observed around every 10,000 times btree_flush_write() gets called. Both
deadlock and kernel panic all happened as aftermath of the race.

The idea of the fix is to add a btree flag BTREE_NODE_journal_flush. It
is set when selecting btree nodes, and cleared after btree nodes
flushed. Then when mca_reap() selects a btree node with this bit set,
this btree node will be skipped. Since mca_reap() only reaps btree node
without BTREE_NODE_journal_flush flag, such race is avoided.

Once corner case should be noticed, that is btree_node_free(). It might
be called in some error handling code path. For example the following
code piece from btree_split(),
        2149 err_free2:
        2150         bkey_put(b->c, &n2->key);
        2151         btree_node_free(n2);
        2152         rw_unlock(true, n2);
        2153 err_free1:
        2154         bkey_put(b->c, &n1->key);
        2155         btree_node_free(n1);
        2156         rw_unlock(true, n1);
At line 2151 and 2155, the btree node n2 and n1 are released without
mac_reap(), so BTREE_NODE_journal_flush also needs to be checked here.
If btree_node_free() is called directly in such error handling path,
and the selected btree node has BTREE_NODE_journal_flush bit set, just
delay for 1 us and retry again. In this case this btree node won't
be skipped, just retry until the BTREE_NODE_journal_flush bit cleared,
and free the btree node memory.

Fixes: cafe56359144 ("bcache: A block layer cache")
Signed-off-by: Coly Li <colyli@suse.de>
Reported-and-tested-by: kbuild test robot <lkp@intel.com>
Cc: stable@vger.kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/md/bcache/btree.c   | 28 +++++++++++++++++++++++++++-
 drivers/md/bcache/btree.h   |  2 ++
 drivers/md/bcache/journal.c |  7 +++++++
 3 files changed, 36 insertions(+), 1 deletion(-)

diff --git a/drivers/md/bcache/btree.c b/drivers/md/bcache/btree.c
index e0468fd41b6ea..45f684689c357 100644
--- a/drivers/md/bcache/btree.c
+++ b/drivers/md/bcache/btree.c
@@ -35,7 +35,7 @@
 #include <linux/rcupdate.h>
 #include <linux/sched/clock.h>
 #include <linux/rculist.h>
-
+#include <linux/delay.h>
 #include <trace/events/bcache.h>
 
 /*
@@ -649,12 +649,25 @@ static int mca_reap(struct btree *b, unsigned int min_order, bool flush)
 		up(&b->io_mutex);
 	}
 
+retry:
 	/*
 	 * BTREE_NODE_dirty might be cleared in btree_flush_btree() by
 	 * __bch_btree_node_write(). To avoid an extra flush, acquire
 	 * b->write_lock before checking BTREE_NODE_dirty bit.
 	 */
 	mutex_lock(&b->write_lock);
+	/*
+	 * If this btree node is selected in btree_flush_write() by journal
+	 * code, delay and retry until the node is flushed by journal code
+	 * and BTREE_NODE_journal_flush bit cleared by btree_flush_write().
+	 */
+	if (btree_node_journal_flush(b)) {
+		pr_debug("bnode %p is flushing by journal, retry", b);
+		mutex_unlock(&b->write_lock);
+		udelay(1);
+		goto retry;
+	}
+
 	if (btree_node_dirty(b))
 		__bch_btree_node_write(b, &cl);
 	mutex_unlock(&b->write_lock);
@@ -1071,7 +1084,20 @@ static void btree_node_free(struct btree *b)
 
 	BUG_ON(b == b->c->root);
 
+retry:
 	mutex_lock(&b->write_lock);
+	/*
+	 * If the btree node is selected and flushing in btree_flush_write(),
+	 * delay and retry until the BTREE_NODE_journal_flush bit cleared,
+	 * then it is safe to free the btree node here. Otherwise this btree
+	 * node will be in race condition.
+	 */
+	if (btree_node_journal_flush(b)) {
+		mutex_unlock(&b->write_lock);
+		pr_debug("bnode %p journal_flush set, retry", b);
+		udelay(1);
+		goto retry;
+	}
 
 	if (btree_node_dirty(b)) {
 		btree_complete_write(b, btree_current_write(b));
diff --git a/drivers/md/bcache/btree.h b/drivers/md/bcache/btree.h
index a68d6c55783bd..4d0cca145f699 100644
--- a/drivers/md/bcache/btree.h
+++ b/drivers/md/bcache/btree.h
@@ -158,11 +158,13 @@ enum btree_flags {
 	BTREE_NODE_io_error,
 	BTREE_NODE_dirty,
 	BTREE_NODE_write_idx,
+	BTREE_NODE_journal_flush,
 };
 
 BTREE_FLAG(io_error);
 BTREE_FLAG(dirty);
 BTREE_FLAG(write_idx);
+BTREE_FLAG(journal_flush);
 
 static inline struct btree_write *btree_current_write(struct btree *b)
 {
diff --git a/drivers/md/bcache/journal.c b/drivers/md/bcache/journal.c
index ec1e35a62934d..7bb15cddca5ec 100644
--- a/drivers/md/bcache/journal.c
+++ b/drivers/md/bcache/journal.c
@@ -404,6 +404,7 @@ static void btree_flush_write(struct cache_set *c)
 retry:
 	best = NULL;
 
+	mutex_lock(&c->bucket_lock);
 	for_each_cached_btree(b, c, i)
 		if (btree_current_write(b)->journal) {
 			if (!best)
@@ -416,9 +417,14 @@ retry:
 		}
 
 	b = best;
+	if (b)
+		set_btree_node_journal_flush(b);
+	mutex_unlock(&c->bucket_lock);
+
 	if (b) {
 		mutex_lock(&b->write_lock);
 		if (!btree_current_write(b)->journal) {
+			clear_bit(BTREE_NODE_journal_flush, &b->flags);
 			mutex_unlock(&b->write_lock);
 			/* We raced */
 			atomic_long_inc(&c->retry_flush_write);
@@ -426,6 +432,7 @@ retry:
 		}
 
 		__bch_btree_node_write(b, NULL);
+		clear_bit(BTREE_NODE_journal_flush, &b->flags);
 		mutex_unlock(&b->write_lock);
 	}
 }
-- 
2.20.1




  parent reply	other threads:[~2019-09-13 13:19 UTC|newest]

Thread overview: 207+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-13 13:04 [PATCH 4.19 000/190] 4.19.73-stable review Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 001/190] ALSA: hda - Fix potential endless loop at applying quirks Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 002/190] ALSA: hda/realtek - Fix overridden device-specific initialization Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 003/190] ALSA: hda/realtek - Add quirk for HP Pavilion 15 Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 004/190] ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 005/190] ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 006/190] sched/fair: Dont assign runtime for throttled cfs_rq Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 007/190] drm/vmwgfx: Fix double free in vmw_recv_msg() Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 008/190] vhost/test: fix build for vhost test Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 009/190] vhost/test: fix build for vhost test - again Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 010/190] powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 011/190] batman-adv: fix uninit-value in batadv_netlink_get_ifindex() Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 012/190] batman-adv: Only read OGM tvlv_len after buffer len check Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 013/190] hv_sock: Fix hang when a connection is closed Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 014/190] Blk-iolatency: warn on negative inflight IO counter Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 015/190] blk-iolatency: fix STS_AGAIN handling Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 016/190] {nl,mac}80211: fix interface combinations on crypto controlled devices Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 017/190] timekeeping: Use proper ktime_add when adding nsecs in coarse offset Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 018/190] selftests: fib_rule_tests: use pre-defined DEV_ADDR Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 019/190] x86/ftrace: Fix warning and considate ftrace_jmp_replace() and ftrace_call_replace() Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 020/190] powerpc/64: mark start_here_multiplatform as __ref Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 021/190] media: stm32-dcmi: fix irq = 0 case Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 022/190] arm64: dts: rockchip: enable usb-host regulators at boot on rk3328-rock64 Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 023/190] scripts/decode_stacktrace: match basepath using shell prefix operator, not regex Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 024/190] riscv: remove unused variable in ftrace Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 025/190] nvme-fc: use separate work queue to avoid warning Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 026/190] clk: s2mps11: Add used attribute to s2mps11_dt_match Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 027/190] remoteproc: qcom: q6v5: shore up resource probe handling Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 028/190] modules: always page-align module section allocations Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 029/190] kernel/module: Fix mem leak in module_add_modinfo_attrs Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 030/190] drm/i915: Re-apply "Perform link quality check, unconditionally during long pulse" Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 031/190] media: cec/v4l2: move V4L2 specific CEC functions to V4L2 Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 032/190] media: cec: remove cec-edid.c Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 033/190] scsi: qla2xxx: Move log messages before issuing command to firmware Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 034/190] keys: Fix the use of the C++ keyword "private" in uapi/linux/keyctl.h Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 035/190] Drivers: hv: kvp: Fix two "this statement may fall through" warnings Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 036/190] x86, hibernate: Fix nosave_regions setup for hibernation Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 037/190] remoteproc: qcom: q6v5-mss: add SCM probe dependency Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 038/190] drm/amdgpu/gfx9: Update gfx9 golden settings Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 039/190] drm/amdgpu: Update gc_9_0 " Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 040/190] KVM: x86: hyperv: enforce vp_index < KVM_MAX_VCPUS Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 041/190] KVM: x86: hyperv: consistently use hv_vcpu for struct kvm_vcpu_hv variables Greg Kroah-Hartman
2019-09-13 13:04 ` [PATCH 4.19 042/190] KVM: x86: hyperv: keep track of mismatched VP indexes Greg Kroah-Hartman
2019-09-15 16:55   ` Pavel Machek
2019-09-13 13:04 ` [PATCH 4.19 043/190] KVM: hyperv: define VP assist page helpers Greg Kroah-Hartman
2019-09-15 19:01   ` Pavel Machek
2019-09-15 20:19     ` Sasha Levin
2019-09-13 13:04 ` [PATCH 4.19 044/190] x86/kvm/lapic: preserve gfn_to_hva_cache len on cache reinit Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 045/190] drm/i915: Fix intel_dp_mst_best_encoder() Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 046/190] drm/i915: Rename PLANE_CTL_DECOMPRESSION_ENABLE Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 047/190] drm/i915/gen9+: Fix initial readout for Y tiled framebuffers Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 048/190] drm/atomic_helper: Disallow new modesets on unregistered connectors Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 049/190] Drivers: hv: kvp: Fix the indentation of some "break" statements Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 050/190] Drivers: hv: kvp: Fix the recent regression caused by incorrect clean-up Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 051/190] powerplay: Respect units on max dcfclk watermark Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 052/190] drm/amd/pp: Fix truncated clock value when set watermark Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 053/190] drm/amd/dm: Understand why attaching path/tile properties are needed Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 054/190] ARM: davinci: da8xx: define gpio interrupts as separate resources Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 055/190] ARM: davinci: dm365: " Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 056/190] ARM: davinci: dm646x: " Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 057/190] ARM: davinci: dm355: " Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 058/190] ARM: davinci: dm644x: " Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 059/190] s390/zcrypt: reinit ap queue state machine during device probe Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 060/190] media: vim2m: use workqueue Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 061/190] media: vim2m: use cancel_delayed_work_sync instead of flush_schedule_work Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 062/190] drm/i915: Restore sane defaults for KMS on GEM error load Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 063/190] drm/i915: Cleanup gt powerstate from gem Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 064/190] KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 065/190] Btrfs: clean up scrub is_dev_replace parameter Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 066/190] Btrfs: fix deadlock with memory reclaim during scrub Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 067/190] btrfs: Remove extent_io_ops::fill_delalloc Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 068/190] btrfs: Fix error handling in btrfs_cleanup_ordered_extents Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 069/190] scsi: megaraid_sas: Fix combined reply queue mode detection Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 070/190] scsi: megaraid_sas: Add check for reset adapter bit Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 071/190] scsi: megaraid_sas: Use 63-bit DMA addressing Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 072/190] powerpc/pkeys: Fix handling of pkey state across fork() Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 073/190] btrfs: volumes: Make sure no dev extent is beyond device boundary Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 074/190] btrfs: Use real device structure to verify dev extent Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 075/190] media: vim2m: only cancel work if it is for right context Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 076/190] ARC: show_regs: lockdep: re-enable preemption Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 077/190] ARC: mm: do_page_fault fixes #1: relinquish mmap_sem if signal arrives while handle_mm_fault Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 078/190] IB/uverbs: Fix OOPs upon device disassociation Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 079/190] crypto: ccree - fix resume race condition on init Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 080/190] crypto: ccree - add missing inline qualifier Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 081/190] drm/vblank: Allow dynamic per-crtc max_vblank_count Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 082/190] drm/i915/ilk: Fix warning when reading emon_status with no output Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 083/190] mfd: Kconfig: Fix I2C_DESIGNWARE_PLATFORM dependencies Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 084/190] tpm: Fix some name collisions with drivers/char/tpm.h Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 085/190] bcache: replace hard coded number with BUCKET_GC_GEN_MAX Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 086/190] bcache: treat stale && dirty keys as bad keys Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 087/190] KVM: VMX: Compare only a single byte for VMCS "launched" in vCPU-run Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 088/190] iio: adc: exynos-adc: Add S5PV210 variant Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 089/190] dt-bindings: " Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 090/190] iio: adc: exynos-adc: Use proper number of channels for Exynos4x12 Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 091/190] mt76: fix corrupted software generated tx CCMP PN Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 092/190] drm/nouveau: Dont WARN_ON VCPI allocation failures Greg Kroah-Hartman
2019-09-13 13:33   ` Ilia Mirkin
2019-09-13 14:46     ` Sasha Levin
2019-09-13 14:48       ` Ilia Mirkin
2019-09-13 14:54       ` Greg Kroah-Hartman
2019-09-13 15:01         ` Sasha Levin
2019-09-13 15:09           ` Ilia Mirkin
2019-09-13 15:26             ` Sasha Levin
2019-09-13 15:10           ` Greg Kroah-Hartman
2019-09-13 15:20             ` Sasha Levin
2019-09-13 13:05 ` [PATCH 4.19 093/190] iwlwifi: fix devices with PCI Device ID 0x34F0 and 11ac RF modules Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 094/190] iwlwifi: add new card for 9260 series Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 095/190] x86/kvmclock: set offset for kvm unstable clock Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 096/190] spi: spi-gpio: fix SPI_CS_HIGH capability Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 097/190] powerpc/kvm: Save and restore host AMR/IAMR/UAMOR Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 098/190] mmc: renesas_sdhi: Fix card initialization failure in high speed mode Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 099/190] btrfs: scrub: pass fs_info to scrub_setup_ctx Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 100/190] btrfs: scrub: move scrub_setup_ctx allocation out of device_list_mutex Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 101/190] btrfs: scrub: fix circular locking dependency warning Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 102/190] btrfs: init csum_list before possible free Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 103/190] PCI: qcom: Fix error handling in runtime PM support Greg Kroah-Hartman
2019-09-13 13:05 ` [PATCH 4.19 104/190] PCI: qcom: Dont deassert reset GPIO during probe Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 105/190] drm: add __user attribute to ptr_to_compat() Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 106/190] CIFS: Fix error paths in writeback code Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 107/190] CIFS: Fix leaking locked VFS cache pages in writeback retry Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 108/190] drm/i915: Handle vm_mmap error during I915_GEM_MMAP ioctl with WC set Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 109/190] drm/i915: Sanity check mmap length against object size Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 110/190] usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 111/190] arm64: dts: stratix10: add the sysmgr-syscon property from the gmacs Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 112/190] IB/mlx5: Reset access mask when looping inside page fault handler Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 113/190] kvm: mmu: Fix overflow on kvm mmu page limit calculation Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 114/190] x86/kvm: move kvm_load/put_guest_xcr0 into atomic context Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 115/190] KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 116/190] cifs: Fix lease buffer length error Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 117/190] media: i2c: tda1997x: select V4L2_FWNODE Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 118/190] ext4: protect journal inodes blocks using block_validity Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 119/190] ARM: dts: qcom: ipq4019: fix PCI range Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 120/190] ARM: dts: qcom: ipq4019: Fix MSI IRQ type Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 121/190] ARM: dts: qcom: ipq4019: enlarge PCIe BAR range Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 122/190] dt-bindings: mmc: Add supports-cqe property Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 123/190] dt-bindings: mmc: Add disable-cqe-dcmd property Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 124/190] PCI: Add macro for Switchtec quirk declarations Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 125/190] PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 126/190] dm mpath: fix missing call of path selector type->end_io Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 127/190] blk-mq: free hw queues resource in hctxs release handler Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 128/190] mmc: sdhci-pci: Add support for Intel CML Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 129/190] PCI: dwc: Use devm_pci_alloc_host_bridge() to simplify code Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 130/190] cifs: smbd: take an array of reqeusts when sending upper layer data Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 131/190] dm crypt: move detailed message into debug level Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 132/190] signal/arc: Use force_sig_fault where appropriate Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 133/190] ARC: mm: fix uninitialised signal code in do_page_fault Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 134/190] ARC: mm: SIGSEGV userspace trying to access kernel virtual memory Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 135/190] drm/amdkfd: Add missing Polaris10 ID Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 136/190] kvm: Check irqchip mode before assign irqfd Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 137/190] drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2) Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 138/190] drm/amdgpu/{uvd,vcn}: fetch rings read_ptr after alloc Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 139/190] Btrfs: fix race between block group removal and block group allocation Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 140/190] cifs: add spinlock for the openFileList to cifsInodeInfo Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 141/190] clk: tegra: Fix maximum audio sync clock for Tegra124/210 Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 142/190] clk: tegra210: Fix default rates for HDA clocks Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 143/190] IB/hfi1: Avoid hardlockup with flushlist_lock Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 144/190] apparmor: reset pos on failure to unpack for various functions Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 145/190] scsi: target/core: Use the SECTOR_SHIFT constant Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 146/190] scsi: target/iblock: Fix overrun in WRITE SAME emulation Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 147/190] staging: wilc1000: fix error path cleanup in wilc_wlan_initialize() Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 148/190] scsi: zfcp: fix request object use-after-free in send path causing wrong traces Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 149/190] cifs: Properly handle auto disabling of serverino option Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 150/190] ALSA: hda - Dont resume forcibly i915 HDMI/DP codec Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 151/190] ceph: use ceph_evict_inode to cleanup inodes resource Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 152/190] KVM: x86: optimize check for valid PAT value Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 153/190] KVM: VMX: Always signal #GP on WRMSR to MSR_IA32_CR_PAT with bad value Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 154/190] KVM: VMX: Fix handling of #MC that occurs during VM-Entry Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 155/190] KVM: VMX: check CPUID before allowing read/write of IA32_XSS Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 156/190] KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 157/190] KVM: PPC: Book3S HV: Fix CR0 setting in TM emulation Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 158/190] ARM: dts: gemini: Set DIR-685 SPI CS as active low Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 159/190] RDMA/srp: Document srp_parse_in() arguments Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 160/190] RDMA/srp: Accept again source addresses that do not have a port number Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 161/190] btrfs: correctly validate compression type Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 162/190] resource: Include resource end in walk_*() interfaces Greg Kroah-Hartman
2019-09-13 13:06 ` [PATCH 4.19 164/190] resource: fix locking in find_next_iomem_res() Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 165/190] pstore: Fix double-free in pstore_mkfile() failure path Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 166/190] dm thin metadata: check if in fail_io mode when setting needs_check Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 167/190] drm/panel: Add support for Armadeus ST0700 Adapt Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 168/190] ALSA: hda - Fix intermittent CORB/RIRB stall on Intel chips Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 169/190] powerpc/mm: Limit rma_size to 1TB when running without HV mode Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 170/190] iommu/iova: Remove stale cached32_node Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 171/190] gpio: dont WARN() on NULL descs if gpiolib is disabled Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 172/190] i2c: at91: disable TXRDY interrupt after sending data Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 173/190] i2c: at91: fix clk_offset for sama5d2 Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 174/190] mm/migrate.c: initialize pud_entry in migrate_vma() Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 175/190] iio: adc: gyroadc: fix uninitialized return code Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 176/190] NFSv4: Fix delegation state recovery Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 177/190] bcache: only clear BTREE_NODE_dirty bit when it is set Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 178/190] bcache: add comments for mutex_lock(&b->write_lock) Greg Kroah-Hartman
2019-09-13 13:07 ` Greg Kroah-Hartman [this message]
2019-09-13 13:07 ` [PATCH 4.19 180/190] drm/i915: Make sure cdclk is high enough for DP audio on VLV/CHV Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 181/190] virtio/s390: fix race on airq_areas[] Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 182/190] drm/atomic_helper: Allow DPMS On<->Off changes for unregistered connectors Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 183/190] ext4: dont perform block validity checks on the journal inode Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 184/190] ext4: fix block validity checks for journal inodes using indirect blocks Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 185/190] ext4: unsigned int compared against zero Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 186/190] PCI: Reset both NVIDIA GPU and HDA in ThinkPad P50 workaround Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 187/190] powerpc/tm: Remove msr_tm_active() Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 188/190] powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 189/190] vhost: block speculation of translated descriptors Greg Kroah-Hartman
2019-09-13 13:07 ` [PATCH 4.19 190/190] vhost: make sure log_num < in_num Greg Kroah-Hartman
2019-09-13 19:39 ` [PATCH 4.19 000/190] 4.19.73-stable review kernelci.org bot
2019-09-14  4:18 ` Naresh Kamboju
2019-09-14 14:07 ` Guenter Roeck
2019-09-15 13:35 ` Greg Kroah-Hartman
2019-09-16  9:25 ` Jon Hunter

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=20190913130614.091905416@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=axboe@kernel.dk \
    --cc=colyli@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkp@intel.com \
    --cc=sashal@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).