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,
	Anatoly Trosinenko <anatoly.trosinenko@gmail.com>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Yonghong Song <yhs@fb.com>, Alexei Starovoitov <ast@kernel.org>
Subject: [PATCH 5.4 107/222] bpf: Fix incorrect verifier simulation of ARSH under ALU32
Date: Wed, 22 Jan 2020 10:28:13 +0100	[thread overview]
Message-ID: <20200122092841.397679069@linuxfoundation.org> (raw)
In-Reply-To: <20200122092833.339495161@linuxfoundation.org>

From: Daniel Borkmann <daniel@iogearbox.net>

commit 0af2ffc93a4b50948f9dad2786b7f1bd253bf0b9 upstream.

Anatoly has been fuzzing with kBdysch harness and reported a hang in one
of the outcomes:

  0: R1=ctx(id=0,off=0,imm=0) R10=fp0
  0: (85) call bpf_get_socket_cookie#46
  1: R0_w=invP(id=0) R10=fp0
  1: (57) r0 &= 808464432
  2: R0_w=invP(id=0,umax_value=808464432,var_off=(0x0; 0x30303030)) R10=fp0
  2: (14) w0 -= 810299440
  3: R0_w=invP(id=0,umax_value=4294967295,var_off=(0xcf800000; 0x3077fff0)) R10=fp0
  3: (c4) w0 s>>= 1
  4: R0_w=invP(id=0,umin_value=1740636160,umax_value=2147221496,var_off=(0x67c00000; 0x183bfff8)) R10=fp0
  4: (76) if w0 s>= 0x30303030 goto pc+216
  221: R0_w=invP(id=0,umin_value=1740636160,umax_value=2147221496,var_off=(0x67c00000; 0x183bfff8)) R10=fp0
  221: (95) exit
  processed 6 insns (limit 1000000) [...]

Taking a closer look, the program was xlated as follows:

  # ./bpftool p d x i 12
  0: (85) call bpf_get_socket_cookie#7800896
  1: (bf) r6 = r0
  2: (57) r6 &= 808464432
  3: (14) w6 -= 810299440
  4: (c4) w6 s>>= 1
  5: (76) if w6 s>= 0x30303030 goto pc+216
  6: (05) goto pc-1
  7: (05) goto pc-1
  8: (05) goto pc-1
  [...]
  220: (05) goto pc-1
  221: (05) goto pc-1
  222: (95) exit

Meaning, the visible effect is very similar to f54c7898ed1c ("bpf: Fix
precision tracking for unbounded scalars"), that is, the fall-through
branch in the instruction 5 is considered to be never taken given the
conclusion from the min/max bounds tracking in w6, and therefore the
dead-code sanitation rewrites it as goto pc-1. However, real-life input
disagrees with verification analysis since a soft-lockup was observed.

The bug sits in the analysis of the ARSH. The definition is that we shift
the target register value right by K bits through shifting in copies of
its sign bit. In adjust_scalar_min_max_vals(), we do first coerce the
register into 32 bit mode, same happens after simulating the operation.
However, for the case of simulating the actual ARSH, we don't take the
mode into account and act as if it's always 64 bit, but location of sign
bit is different:

  dst_reg->smin_value >>= umin_val;
  dst_reg->smax_value >>= umin_val;
  dst_reg->var_off = tnum_arshift(dst_reg->var_off, umin_val);

Consider an unknown R0 where bpf_get_socket_cookie() (or others) would
for example return 0xffff. With the above ARSH simulation, we'd see the
following results:

  [...]
  1: R1=ctx(id=0,off=0,imm=0) R2_w=invP65535 R10=fp0
  1: (85) call bpf_get_socket_cookie#46
  2: R0_w=invP(id=0) R10=fp0
  2: (57) r0 &= 808464432
    -> R0_runtime = 0x3030
  3: R0_w=invP(id=0,umax_value=808464432,var_off=(0x0; 0x30303030)) R10=fp0
  3: (14) w0 -= 810299440
    -> R0_runtime = 0xcfb40000
  4: R0_w=invP(id=0,umax_value=4294967295,var_off=(0xcf800000; 0x3077fff0)) R10=fp0
                              (0xffffffff)
  4: (c4) w0 s>>= 1
    -> R0_runtime = 0xe7da0000
  5: R0_w=invP(id=0,umin_value=1740636160,umax_value=2147221496,var_off=(0x67c00000; 0x183bfff8)) R10=fp0
                              (0x67c00000)           (0x7ffbfff8)
  [...]

In insn 3, we have a runtime value of 0xcfb40000, which is '1100 1111 1011
0100 0000 0000 0000 0000', the result after the shift has 0xe7da0000 that
is '1110 0111 1101 1010 0000 0000 0000 0000', where the sign bit is correctly
retained in 32 bit mode. In insn4, the umax was 0xffffffff, and changed into
0x7ffbfff8 after the shift, that is, '0111 1111 1111 1011 1111 1111 1111 1000'
and means here that the simulation didn't retain the sign bit. With above
logic, the updates happen on the 64 bit min/max bounds and given we coerced
the register, the sign bits of the bounds are cleared as well, meaning, we
need to force the simulation into s32 space for 32 bit alu mode.

Verification after the fix below. We're first analyzing the fall-through branch
on 32 bit signed >= test eventually leading to rejection of the program in this
specific case:

  0: R1=ctx(id=0,off=0,imm=0) R10=fp0
  0: (b7) r2 = 808464432
  1: R1=ctx(id=0,off=0,imm=0) R2_w=invP808464432 R10=fp0
  1: (85) call bpf_get_socket_cookie#46
  2: R0_w=invP(id=0) R10=fp0
  2: (bf) r6 = r0
  3: R0_w=invP(id=0) R6_w=invP(id=0) R10=fp0
  3: (57) r6 &= 808464432
  4: R0_w=invP(id=0) R6_w=invP(id=0,umax_value=808464432,var_off=(0x0; 0x30303030)) R10=fp0
  4: (14) w6 -= 810299440
  5: R0_w=invP(id=0) R6_w=invP(id=0,umax_value=4294967295,var_off=(0xcf800000; 0x3077fff0)) R10=fp0
  5: (c4) w6 s>>= 1
  6: R0_w=invP(id=0) R6_w=invP(id=0,umin_value=3888119808,umax_value=4294705144,var_off=(0xe7c00000; 0x183bfff8)) R10=fp0
                                              (0x67c00000)          (0xfffbfff8)
  6: (76) if w6 s>= 0x30303030 goto pc+216
  7: R0_w=invP(id=0) R6_w=invP(id=0,umin_value=3888119808,umax_value=4294705144,var_off=(0xe7c00000; 0x183bfff8)) R10=fp0
  7: (30) r0 = *(u8 *)skb[808464432]
  BPF_LD_[ABS|IND] uses reserved fields
  processed 8 insns (limit 1000000) [...]

Fixes: 9cbe1f5a32dc ("bpf/verifier: improve register value range tracking with ARSH")
Reported-by: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20200115204733.16648-1-daniel@iogearbox.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 include/linux/tnum.h  |    2 +-
 kernel/bpf/tnum.c     |    9 +++++++--
 kernel/bpf/verifier.c |   13 ++++++++++---
 3 files changed, 18 insertions(+), 6 deletions(-)

--- a/include/linux/tnum.h
+++ b/include/linux/tnum.h
@@ -30,7 +30,7 @@ struct tnum tnum_lshift(struct tnum a, u
 /* Shift (rsh) a tnum right (by a fixed shift) */
 struct tnum tnum_rshift(struct tnum a, u8 shift);
 /* Shift (arsh) a tnum right (by a fixed min_shift) */
-struct tnum tnum_arshift(struct tnum a, u8 min_shift);
+struct tnum tnum_arshift(struct tnum a, u8 min_shift, u8 insn_bitness);
 /* Add two tnums, return @a + @b */
 struct tnum tnum_add(struct tnum a, struct tnum b);
 /* Subtract two tnums, return @a - @b */
--- a/kernel/bpf/tnum.c
+++ b/kernel/bpf/tnum.c
@@ -44,14 +44,19 @@ struct tnum tnum_rshift(struct tnum a, u
 	return TNUM(a.value >> shift, a.mask >> shift);
 }
 
-struct tnum tnum_arshift(struct tnum a, u8 min_shift)
+struct tnum tnum_arshift(struct tnum a, u8 min_shift, u8 insn_bitness)
 {
 	/* if a.value is negative, arithmetic shifting by minimum shift
 	 * will have larger negative offset compared to more shifting.
 	 * If a.value is nonnegative, arithmetic shifting by minimum shift
 	 * will have larger positive offset compare to more shifting.
 	 */
-	return TNUM((s64)a.value >> min_shift, (s64)a.mask >> min_shift);
+	if (insn_bitness == 32)
+		return TNUM((u32)(((s32)a.value) >> min_shift),
+			    (u32)(((s32)a.mask)  >> min_shift));
+	else
+		return TNUM((s64)a.value >> min_shift,
+			    (s64)a.mask  >> min_shift);
 }
 
 struct tnum tnum_add(struct tnum a, struct tnum b)
--- a/kernel/bpf/verifier.c
+++ b/kernel/bpf/verifier.c
@@ -4824,9 +4824,16 @@ static int adjust_scalar_min_max_vals(st
 		/* Upon reaching here, src_known is true and
 		 * umax_val is equal to umin_val.
 		 */
-		dst_reg->smin_value >>= umin_val;
-		dst_reg->smax_value >>= umin_val;
-		dst_reg->var_off = tnum_arshift(dst_reg->var_off, umin_val);
+		if (insn_bitness == 32) {
+			dst_reg->smin_value = (u32)(((s32)dst_reg->smin_value) >> umin_val);
+			dst_reg->smax_value = (u32)(((s32)dst_reg->smax_value) >> umin_val);
+		} else {
+			dst_reg->smin_value >>= umin_val;
+			dst_reg->smax_value >>= umin_val;
+		}
+
+		dst_reg->var_off = tnum_arshift(dst_reg->var_off, umin_val,
+						insn_bitness);
 
 		/* blow away the dst_reg umin_value/umax_value and rely on
 		 * dst_reg var_off to refine the result.



  parent reply	other threads:[~2020-01-22 13:30 UTC|newest]

Thread overview: 238+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-22  9:26 [PATCH 5.4 000/222] 5.4.14-stable review Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 001/222] ARM: dts: meson8: fix the size of the PMU registers Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 002/222] clk: qcom: gcc-sdm845: Add missing flag to votable GDSCs Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 003/222] soc: amlogic: meson-ee-pwrc: propagate PD provider registration errors Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 004/222] soc: amlogic: meson-ee-pwrc: propagate errors from pm_genpd_init() Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 005/222] dt-bindings: reset: meson8b: fix duplicate reset IDs Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 006/222] ARM: dts: imx6q-dhcom: fix rtc compatible Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 007/222] arm64: dts: ls1028a: fix endian setting for dcfg Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 008/222] arm64: dts: imx8mm: Change SDMA1 ahb clock for imx8mm Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 009/222] bus: ti-sysc: Fix iterating over clocks Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 010/222] clk: Dont try to enable critical clocks if prepare failed Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 011/222] Revert "gpio: thunderx: Switch to GPIOLIB_IRQCHIP" Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 012/222] arm64: dts: imx8mq-librem5-devkit: use correct interrupt for the magnetometer Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 013/222] ASoC: msm8916-wcd-digital: Reset RX interpolation path after use Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 014/222] ASoC: stm32: sai: fix possible circular locking Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 015/222] ASoC: stm32: dfsdm: fix 16 bits record Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 016/222] ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1 Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 017/222] ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1 Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 018/222] ARM: OMAP2+: Fix ti_sysc_find_one_clockdomain to check for to_clk_hw_omap Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 019/222] ARM: dts: imx7ulp: fix reg of cpu node Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 020/222] ARM: dts: imx6q-dhcom: Fix SGTL5000 VDDIO regulator connection Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 021/222] ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 022/222] ALSA: dice: fix fallback from protocol extension into limited functionality Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 023/222] ALSA: seq: Fix racy access for queue timer in proc read Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 024/222] ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 025/222] ALSA: usb-audio: fix sync-ep altsetting sanity check Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 026/222] arm64: dts: allwinner: a64: olinuxino: Fix SDIO supply regulator Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 027/222] arm64: dts: allwinner: a64: olinuxino: Fix eMMC " Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 028/222] arm64: dts: agilex/stratix10: fix pmu interrupt numbers Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 029/222] Fix built-in early-load Intel microcode alignment Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 030/222] clk: sunxi-ng: r40: Allow setting parent rate for external clock outputs Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 031/222] block: fix an integer overflow in logical block size Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 032/222] fuse: fix fuse_send_readpages() in the syncronous read case Greg Kroah-Hartman
2020-01-22  9:26 ` [PATCH 5.4 033/222] io_uring: only allow submit from owning task Greg Kroah-Hartman
2020-01-24 10:38   ` Stefan Metzmacher
2020-01-24 10:41     ` Stefan Metzmacher
2020-01-24 16:58     ` Jens Axboe
2020-01-24 19:11       ` Stefan Metzmacher
2020-01-24 21:41         ` Jens Axboe
2020-01-26  5:54     ` Andres Freund
2020-01-26 16:57       ` Jens Axboe
2020-01-22  9:27 ` [PATCH 5.4 034/222] cpuidle: teo: Fix intervals[] array indexing bug Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 035/222] ARM: dts: am571x-idk: Fix gpios property to have the correct gpio number Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 036/222] ARM: davinci: select CONFIG_RESET_CONTROLLER Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 037/222] perf: Correctly handle failed perf_get_aux_event() Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 038/222] iio: adc: ad7124: Fix DT channel configuration Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 039/222] iio: imu: st_lsm6dsx: Fix selection of ST_LSM6DS3_ID Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 040/222] iio: light: vcnl4000: Fix scale for vcnl4040 Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 041/222] iio: chemical: pms7003: fix unmet triggered buffer dependency Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 042/222] iio: buffer: align the size of scan bytes to size of the largest element Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 043/222] USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 044/222] USB: serial: option: Add support for Quectel RM500Q Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 045/222] USB: serial: opticon: fix control-message timeouts Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 046/222] USB: serial: option: add support for Quectel RM500Q in QDL mode Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 047/222] USB: serial: suppress driver bind attributes Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 048/222] USB: serial: ch341: handle unbound port at reset_resume Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 049/222] USB: serial: io_edgeport: handle unbound ports on URB completion Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 050/222] USB: serial: io_edgeport: add missing active-port sanity check Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 051/222] USB: serial: keyspan: handle unbound ports Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 052/222] USB: serial: quatech2: " Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 053/222] staging: comedi: ni_routes: fix null dereference in ni_find_route_source() Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 054/222] staging: comedi: ni_routes: allow partial routing information Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 055/222] scsi: fnic: fix invalid stack access Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 056/222] scsi: mptfusion: Fix double fetch bug in ioctl Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 057/222] ptrace: reintroduce usage of subjective credentials in ptrace_has_cap() Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 058/222] mtd: rawnand: gpmi: Fix suspend/resume problem Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 059/222] mtd: rawnand: gpmi: Restore nfc timing setup after suspend/resume Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 060/222] usb: core: hub: Improved device recognition on remote wakeup Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 061/222] cpu/SMT: Fix x86 link error without CONFIG_SYSFS Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 062/222] x86/resctrl: Fix an imbalance in domain_remove_cpu() Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 063/222] x86/CPU/AMD: Ensure clearing of SME/SEV features is maintained Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 064/222] locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 065/222] perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 066/222] x86/efistub: Disable paging at mixed mode entry Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 067/222] s390/zcrypt: Fix CCA cipher key gen with clear key value function Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 068/222] scsi: storvsc: Correctly set number of hardware queues for IDE disk Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 069/222] mtd: spi-nor: Fix selection of 4-byte addressing opcodes on Spansion Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 070/222] drm/i915: Add missing include file <linux/math64.h> Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 071/222] x86/resctrl: Fix potential memory leak Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 072/222] efi/earlycon: Fix write-combine mapping on x86 Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 073/222] s390/setup: Fix secure ipl message Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 074/222] clk: samsung: exynos5420: Keep top G3D clocks enabled Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 075/222] perf hists: Fix variable names inconsistency in hists__for_each() macro Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 076/222] locking/lockdep: Fix buffer overrun problem in stack_trace[] Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 077/222] perf report: Fix incorrectly added dimensions as switch perf data file Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 078/222] mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 079/222] mm/huge_memory.c: thp: " Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 080/222] mm: memcg/slab: fix percpu slab vmstats flushing Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 081/222] mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 082/222] mm, debug_pagealloc: dont rely on static keys too early Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 083/222] btrfs: rework arguments of btrfs_unlink_subvol Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 084/222] btrfs: fix invalid removal of root ref Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 085/222] btrfs: do not delete mismatched root refs Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 086/222] btrfs: relocation: fix reloc_root lifespan and access Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 087/222] btrfs: fix memory leak in qgroup accounting Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 088/222] btrfs: check rw_devices, not num_devices for balance Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 089/222] Btrfs: always copy scrub arguments back to user space Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 090/222] mm/memory_hotplug: dont free usage map when removing a re-added early section Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 091/222] mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio() Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 092/222] mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE Greg Kroah-Hartman
2020-01-22  9:27 ` [PATCH 5.4 093/222] ARM: dts: imx6qdl-sabresd: Remove incorrect power supply assignment Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 094/222] ARM: dts: imx6sx-sdb: " Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 095/222] ARM: dts: imx6sl-evk: " Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 096/222] ARM: dts: imx6sll-evk: " Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 097/222] ARM: dts: imx6q-icore-mipi: Use 1.5 version of i.Core MX6DL Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 098/222] ARM: dts: imx7: Fix Toradex Colibri iMX7S 256MB NAND flash support Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 099/222] net: stmmac: 16KB buffer must be 16 byte aligned Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 100/222] net: stmmac: Enable 16KB buffer size Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 101/222] reset: Fix {of,devm}_reset_control_array_get kerneldoc return types Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 102/222] tipc: fix potential hanging after b/rcast changing Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 103/222] tipc: fix retrans failure due to wrong destination Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 104/222] net: fix kernel-doc warning in <linux/netdevice.h> Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 105/222] block: Fix the type of sts in bsg_queue_rq() Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 106/222] drm/amd/display: Reorder detect_edp_sink_caps before link settings read Greg Kroah-Hartman
2020-01-22  9:28 ` Greg Kroah-Hartman [this message]
2020-01-22  9:28 ` [PATCH 5.4 108/222] bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 109/222] bpf: Sockmap, ensure sock lock held during tear down Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 110/222] bpf: Sockmap/tls, push write_space updates through ulp updates Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 111/222] bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 112/222] bpf: Sockmap/tls, msg_push_data may leave end mark in place Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 113/222] bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 114/222] bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 115/222] bpf: Sockmap/tls, fix pop data with SK_DROP return code Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 116/222] i2c: tegra: Fix suspending in active runtime PM state Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 117/222] i2c: tegra: Properly disable runtime PM on drivers probe error Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 118/222] cfg80211: fix deadlocks in autodisconnect work Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 119/222] cfg80211: fix memory leak in nl80211_probe_mesh_link Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 120/222] cfg80211: fix memory leak in cfg80211_cqm_rssi_update Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 121/222] cfg80211: fix page refcount issue in A-MSDU decap Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 122/222] bpf/sockmap: Read psock ingress_msg before sk_receive_queue Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 123/222] i2c: iop3xx: Fix memory leak in probe error path Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 124/222] netfilter: fix a use-after-free in mtype_destroy() Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 125/222] netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 126/222] netfilter: nat: fix ICMP header corruption on ICMP errors Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 127/222] netfilter: nft_tunnel: fix null-attribute check Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 128/222] netfilter: nft_tunnel: ERSPAN_VERSION must not be null Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 129/222] netfilter: nf_tables: remove WARN and add NLA_STRING upper limits Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 130/222] netfilter: nf_tables: store transaction list locally while requesting module Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 131/222] netfilter: nf_tables: fix flowtable list del corruption Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 132/222] NFC: pn533: fix bulk-message timeout Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 133/222] net: bpf: Dont leak time wait and request sockets Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 134/222] bpftool: Fix printing incorrect pointer in btf_dump_ptr Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 135/222] batman-adv: Fix DAT candidate selection on little endian systems Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 136/222] macvlan: use skb_reset_mac_header() in macvlan_queue_xmit() Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 137/222] hv_netvsc: Fix memory leak when removing rndis device Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 138/222] net: avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key() Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 139/222] net: dsa: tag_qca: fix doubled Tx statistics Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 140/222] net: hns3: pad the short frame before sending to the hardware Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 141/222] net: hns: fix soft lockup when there is not enough memory Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 142/222] net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 143/222] net/sched: act_ife: initalize ife->metalist earlier Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 144/222] net: usb: lan78xx: limit size of local TSO packets Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 145/222] net/wan/fsl_ucc_hdlc: fix out of bounds write on array utdm_info Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 146/222] ptp: free ptp device pin descriptors properly Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 147/222] r8152: add missing endpoint sanity check Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 148/222] tcp: fix marked lost packets not being retransmitted Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 149/222] bnxt_en: Fix NTUPLE firmware command failures Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 150/222] bnxt_en: Fix ipv6 RFS filter matching logic Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 151/222] bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 152/222] net: ethernet: ave: Avoid lockdep warning Greg Kroah-Hartman
2020-01-22  9:28 ` [PATCH 5.4 153/222] net: systemport: Fixed queue mapping in internal ring map Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 154/222] net: dsa: sja1105: Dont error out on disabled ports with no phy-mode Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 155/222] net: dsa: tag_gswip: fix typo in tagger name Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 156/222] net: sched: act_ctinfo: fix memory leak Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 157/222] net: dsa: bcm_sf2: Configure IMP port for 2Gb/sec Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 158/222] i40e: prevent memory leak in i40e_setup_macvlans Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 159/222] drm/amdgpu: allow direct upload save restore list for raven2 Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 160/222] sh_eth: check sh_eth_cpu_data::dual_port when dumping registers Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 161/222] mlxsw: spectrum: Do not modify cloned SKBs during xmit Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 162/222] mlxsw: spectrum: Wipe xstats.backlog of down ports Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 163/222] mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 164/222] net: stmmac: selftests: Make it work in Synopsys AXS101 boards Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 165/222] net: stmmac: selftests: Mark as fail when received VLAN ID != expected Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 166/222] selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 167/222] net: stmmac: selftests: Update status when disabling RSS Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 168/222] net: stmmac: tc: Do not setup flower filtering if RSS is enabled Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 169/222] devlink: Wait longer before warning about unset port type Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 170/222] xen/blkfront: Adjust indentation in xlvbd_alloc_gendisk Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 171/222] dt-bindings: Add missing properties keyword enclosing snps,tso Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 172/222] tcp: refine rule to allow EPOLLOUT generation under mem pressure Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 173/222] irqchip: Place CONFIG_SIFIVE_PLIC into the menu Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 174/222] arm64: dts: qcom: msm8998: Disable coresight by default Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 175/222] cw1200: Fix a signedness bug in cw1200_load_firmware() Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 176/222] arm64: dts: meson: axg: fix audio fifo reg size Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 177/222] arm64: dts: meson: g12: " Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 178/222] arm64: dts: meson-gxl-s905x-khadas-vim: fix gpio-keys-polled node Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 179/222] arm64: dts: renesas: r8a77970: Fix PWM3 Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 180/222] arm64: dts: marvell: Add AP806-dual missing CPU clocks Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 181/222] cfg80211: check for set_wiphy_params Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 182/222] tick/sched: Annotate lockless access to last_jiffies_update Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 183/222] arm64: dts: marvell: Fix CP110 NAND controller node multi-line comment alignment Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 184/222] arm64: dts: renesas: r8a774a1: Remove audio port node Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 185/222] arm64: dts: imx8mm-evk: Assigned clocks for audio plls Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 186/222] arm64: dts: qcom: sdm845-cheza: delete zap-shader Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 187/222] ARM: dts: imx6ul-kontron-n6310-s: Disable the snvs-poweroff driver Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 188/222] arm64: dts: allwinner: a64: Re-add PMU node Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 189/222] ARM: dts: dra7: fix cpsw mdio fck clock Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 190/222] arm64: dts: juno: Fix UART frequency Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 191/222] ARM: dts: Fix sgx sysconfig register for omap4 Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 192/222] Revert "arm64: dts: juno: add dma-ranges property" Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 193/222] mtd: devices: fix mchp23k256 read and write Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 194/222] mtd: cfi_cmdset_0002: only check errors when ready in cfi_check_err_status() Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 195/222] mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 196/222] um: Dont trace irqflags during shutdown Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 197/222] um: virtio_uml: Disallow modular build Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 198/222] reiserfs: fix handling of -EOPNOTSUPP in reiserfs_for_each_xattr Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 199/222] scsi: esas2r: unlock on error in esas2r_nvram_read_direct() Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 200/222] scsi: hisi_sas: Dont create debugfs dump folder twice Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 201/222] scsi: hisi_sas: Set the BIST init value before enabling BIST Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 202/222] scsi: qla4xxx: fix double free bug Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 203/222] scsi: bnx2i: fix potential use after free Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 204/222] scsi: target: core: Fix a pr_debug() argument Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 205/222] scsi: lpfc: fix: Coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 206/222] scsi: hisi_sas: Return directly if init hardware failed Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 207/222] scsi: scsi_transport_sas: Fix memory leak when removing devices Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 208/222] scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 209/222] scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 210/222] scsi: core: scsi_trace: Use get_unaligned_be*() Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 211/222] scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 212/222] scsi: lpfc: Fix hdwq sgl locks and irq handling Greg Kroah-Hartman
2020-01-22  9:29 ` [PATCH 5.4 213/222] scsi: lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq() Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 214/222] rtw88: fix potential read outside array boundary Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 215/222] perf probe: Fix wrong address verification Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 216/222] perf script: Allow --time with --reltime Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 217/222] clk: sprd: Use IS_ERR() to validate the return value of syscon_regmap_lookup_by_phandle() Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 218/222] clk: imx7ulp: Correct system clock source option #7 Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 219/222] clk: imx7ulp: Correct DDR clock mux options Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 220/222] regulator: ab8500: Remove SYSCLKREQ from enum ab8505_regulator_id Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 221/222] hwmon: (pmbus/ibm-cffps) Switch LEDs to blocking brightness call Greg Kroah-Hartman
2020-01-22  9:30 ` [PATCH 5.4 222/222] hwmon: (pmbus/ibm-cffps) Fix LED blink behavior Greg Kroah-Hartman
2020-01-22 14:58 ` [PATCH 5.4 000/222] 5.4.14-stable review Jon Hunter
2020-01-22 15:02   ` Greg Kroah-Hartman
2020-01-22 18:09 ` Naresh Kamboju
2020-01-23  6:44   ` Greg Kroah-Hartman
2020-01-22 19:00 ` Guenter Roeck
2020-01-23  6:44   ` Greg Kroah-Hartman
2020-01-22 20:51 ` shuah
2020-01-23  6:44   ` Greg Kroah-Hartman

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=20200122092841.397679069@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=anatoly.trosinenko@gmail.com \
    --cc=ast@kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=yhs@fb.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;
as well as URLs for NNTP newsgroup(s).