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, Maxim Mikityanskiy <maximmi@nvidia.com>,
	Tariq Toukan <tariqt@nvidia.com>,
	"David S. Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 5.12 033/161] net/tls: Fix use-after-free after the TLS device goes down and up
Date: Tue,  8 Jun 2021 20:26:03 +0200	[thread overview]
Message-ID: <20210608175946.571569455@linuxfoundation.org> (raw)
In-Reply-To: <20210608175945.476074951@linuxfoundation.org>

From: Maxim Mikityanskiy <maximmi@nvidia.com>

[ Upstream commit c55dcdd435aa6c6ad6ccac0a4c636d010ee367a4 ]

When a netdev with active TLS offload goes down, tls_device_down is
called to stop the offload and tear down the TLS context. However, the
socket stays alive, and it still points to the TLS context, which is now
deallocated. If a netdev goes up, while the connection is still active,
and the data flow resumes after a number of TCP retransmissions, it will
lead to a use-after-free of the TLS context.

This commit addresses this bug by keeping the context alive until its
normal destruction, and implements the necessary fallbacks, so that the
connection can resume in software (non-offloaded) kTLS mode.

On the TX side tls_sw_fallback is used to encrypt all packets. The RX
side already has all the necessary fallbacks, because receiving
non-decrypted packets is supported. The thing needed on the RX side is
to block resync requests, which are normally produced after receiving
non-decrypted packets.

The necessary synchronization is implemented for a graceful teardown:
first the fallbacks are deployed, then the driver resources are released
(it used to be possible to have a tls_dev_resync after tls_dev_del).

A new flag called TLS_RX_DEV_DEGRADED is added to indicate the fallback
mode. It's used to skip the RX resync logic completely, as it becomes
useless, and some objects may be released (for example, resync_async,
which is allocated and freed by the driver).

Fixes: e8f69799810c ("net/tls: Add generic NIC offload infrastructure")
Signed-off-by: Maxim Mikityanskiy <maximmi@nvidia.com>
Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 include/net/tls.h             |  9 ++++++
 net/tls/tls_device.c          | 52 +++++++++++++++++++++++++++++++----
 net/tls/tls_device_fallback.c |  7 +++++
 net/tls/tls_main.c            |  1 +
 4 files changed, 64 insertions(+), 5 deletions(-)

diff --git a/include/net/tls.h b/include/net/tls.h
index 6531ace2a68b..8341a8d1e807 100644
--- a/include/net/tls.h
+++ b/include/net/tls.h
@@ -193,6 +193,11 @@ struct tls_offload_context_tx {
 	(sizeof(struct tls_offload_context_tx) + TLS_DRIVER_STATE_SIZE_TX)
 
 enum tls_context_flags {
+	/* tls_device_down was called after the netdev went down, device state
+	 * was released, and kTLS works in software, even though rx_conf is
+	 * still TLS_HW (needed for transition).
+	 */
+	TLS_RX_DEV_DEGRADED = 0,
 	/* Unlike RX where resync is driven entirely by the core in TX only
 	 * the driver knows when things went out of sync, so we need the flag
 	 * to be atomic.
@@ -265,6 +270,7 @@ struct tls_context {
 
 	/* cache cold stuff */
 	struct proto *sk_proto;
+	struct sock *sk;
 
 	void (*sk_destruct)(struct sock *sk);
 
@@ -447,6 +453,9 @@ static inline u16 tls_user_config(struct tls_context *ctx, bool tx)
 struct sk_buff *
 tls_validate_xmit_skb(struct sock *sk, struct net_device *dev,
 		      struct sk_buff *skb);
+struct sk_buff *
+tls_validate_xmit_skb_sw(struct sock *sk, struct net_device *dev,
+			 struct sk_buff *skb);
 
 static inline bool tls_is_sk_tx_device_offloaded(struct sock *sk)
 {
diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c
index 2602d61a8d28..9b1ea17f3b1d 100644
--- a/net/tls/tls_device.c
+++ b/net/tls/tls_device.c
@@ -50,6 +50,7 @@ static void tls_device_gc_task(struct work_struct *work);
 static DECLARE_WORK(tls_device_gc_work, tls_device_gc_task);
 static LIST_HEAD(tls_device_gc_list);
 static LIST_HEAD(tls_device_list);
+static LIST_HEAD(tls_device_down_list);
 static DEFINE_SPINLOCK(tls_device_lock);
 
 static void tls_device_free_ctx(struct tls_context *ctx)
@@ -759,6 +760,8 @@ void tls_device_rx_resync_new_rec(struct sock *sk, u32 rcd_len, u32 seq)
 
 	if (tls_ctx->rx_conf != TLS_HW)
 		return;
+	if (unlikely(test_bit(TLS_RX_DEV_DEGRADED, &tls_ctx->flags)))
+		return;
 
 	prot = &tls_ctx->prot_info;
 	rx_ctx = tls_offload_ctx_rx(tls_ctx);
@@ -961,6 +964,17 @@ int tls_device_decrypted(struct sock *sk, struct tls_context *tls_ctx,
 
 	ctx->sw.decrypted |= is_decrypted;
 
+	if (unlikely(test_bit(TLS_RX_DEV_DEGRADED, &tls_ctx->flags))) {
+		if (likely(is_encrypted || is_decrypted))
+			return 0;
+
+		/* After tls_device_down disables the offload, the next SKB will
+		 * likely have initial fragments decrypted, and final ones not
+		 * decrypted. We need to reencrypt that single SKB.
+		 */
+		return tls_device_reencrypt(sk, skb);
+	}
+
 	/* Return immediately if the record is either entirely plaintext or
 	 * entirely ciphertext. Otherwise handle reencrypt partially decrypted
 	 * record.
@@ -1290,6 +1304,26 @@ static int tls_device_down(struct net_device *netdev)
 	spin_unlock_irqrestore(&tls_device_lock, flags);
 
 	list_for_each_entry_safe(ctx, tmp, &list, list)	{
+		/* Stop offloaded TX and switch to the fallback.
+		 * tls_is_sk_tx_device_offloaded will return false.
+		 */
+		WRITE_ONCE(ctx->sk->sk_validate_xmit_skb, tls_validate_xmit_skb_sw);
+
+		/* Stop the RX and TX resync.
+		 * tls_dev_resync must not be called after tls_dev_del.
+		 */
+		WRITE_ONCE(ctx->netdev, NULL);
+
+		/* Start skipping the RX resync logic completely. */
+		set_bit(TLS_RX_DEV_DEGRADED, &ctx->flags);
+
+		/* Sync with inflight packets. After this point:
+		 * TX: no non-encrypted packets will be passed to the driver.
+		 * RX: resync requests from the driver will be ignored.
+		 */
+		synchronize_net();
+
+		/* Release the offload context on the driver side. */
 		if (ctx->tx_conf == TLS_HW)
 			netdev->tlsdev_ops->tls_dev_del(netdev, ctx,
 							TLS_OFFLOAD_CTX_DIR_TX);
@@ -1297,13 +1331,21 @@ static int tls_device_down(struct net_device *netdev)
 		    !test_bit(TLS_RX_DEV_CLOSED, &ctx->flags))
 			netdev->tlsdev_ops->tls_dev_del(netdev, ctx,
 							TLS_OFFLOAD_CTX_DIR_RX);
-		WRITE_ONCE(ctx->netdev, NULL);
-		synchronize_net();
+
 		dev_put(netdev);
-		list_del_init(&ctx->list);
 
-		if (refcount_dec_and_test(&ctx->refcount))
-			tls_device_free_ctx(ctx);
+		/* Move the context to a separate list for two reasons:
+		 * 1. When the context is deallocated, list_del is called.
+		 * 2. It's no longer an offloaded context, so we don't want to
+		 *    run offload-specific code on this context.
+		 */
+		spin_lock_irqsave(&tls_device_lock, flags);
+		list_move_tail(&ctx->list, &tls_device_down_list);
+		spin_unlock_irqrestore(&tls_device_lock, flags);
+
+		/* Device contexts for RX and TX will be freed in on sk_destruct
+		 * by tls_device_free_ctx. rx_conf and tx_conf stay in TLS_HW.
+		 */
 	}
 
 	up_write(&device_offload_lock);
diff --git a/net/tls/tls_device_fallback.c b/net/tls/tls_device_fallback.c
index cacf040872c7..e40bedd112b6 100644
--- a/net/tls/tls_device_fallback.c
+++ b/net/tls/tls_device_fallback.c
@@ -431,6 +431,13 @@ struct sk_buff *tls_validate_xmit_skb(struct sock *sk,
 }
 EXPORT_SYMBOL_GPL(tls_validate_xmit_skb);
 
+struct sk_buff *tls_validate_xmit_skb_sw(struct sock *sk,
+					 struct net_device *dev,
+					 struct sk_buff *skb)
+{
+	return tls_sw_fallback(sk, skb);
+}
+
 struct sk_buff *tls_encrypt_skb(struct sk_buff *skb)
 {
 	return tls_sw_fallback(skb->sk, skb);
diff --git a/net/tls/tls_main.c b/net/tls/tls_main.c
index 47b7c5334c34..fde56ff49163 100644
--- a/net/tls/tls_main.c
+++ b/net/tls/tls_main.c
@@ -636,6 +636,7 @@ struct tls_context *tls_ctx_create(struct sock *sk)
 	mutex_init(&ctx->tx_lock);
 	rcu_assign_pointer(icsk->icsk_ulp_data, ctx);
 	ctx->sk_proto = READ_ONCE(sk->sk_prot);
+	ctx->sk = sk;
 	return ctx;
 }
 
-- 
2.30.2




  parent reply	other threads:[~2021-06-08 19:05 UTC|newest]

Thread overview: 172+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-08 18:25 [PATCH 5.12 000/161] 5.12.10-rc1 review Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 001/161] mt76: mt7921: add rcu section in mt7921_mcu_tx_rate_report Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 002/161] mt76: mt7921: fix possible AOOB issue " Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 003/161] mt76: mt76x0e: fix device hang during suspend/resume Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 004/161] hwmon: (dell-smm-hwmon) Fix index values Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 005/161] hwmon: (pmbus/isl68137) remove READ_TEMPERATURE_3 for RAA228228 Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 006/161] netfilter: conntrack: unregister ipv4 sockopts on error unwind Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 007/161] efi/fdt: fix panic when no valid fdt found Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 008/161] efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 009/161] efi/libstub: prevent read overflow in find_file_option() Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 010/161] efi: cper: fix snprintf() use in cper_dimm_err_location() Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 011/161] vfio/pci: Fix error return code in vfio_ecap_init() Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 012/161] vfio/pci: zap_vma_ptes() needs MMU Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 013/161] samples: vfio-mdev: fix error handing in mdpy_fb_probe() Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 014/161] vfio/platform: fix module_put call in error flow Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 015/161] ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 016/161] HID: logitech-hidpp: initialize level variable Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 017/161] HID: pidff: fix error return code in hid_pidff_init() Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 018/161] HID: amd_sfh: Fix memory leak in amd_sfh_work Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 019/161] HID: i2c-hid: fix format string mismatch Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 020/161] kbuild: Quote OBJCOPY var to avoid a pahole call break the build Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 021/161] devlink: Correct VIRTUAL port to not have phys_port attributes Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 022/161] net/sched: act_ct: Offload connections with commit action Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 023/161] net/sched: act_ct: Fix ct template allocation for zone 0 Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 024/161] mptcp: fix sk_forward_memory corruption on retransmission Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 025/161] mptcp: always parse mptcp options for MPC reqsk Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 026/161] mptcp: do not reset MP_CAPABLE subflow on mapping errors Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 027/161] nvme-rdma: fix in-casule data send for chained sgls Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 028/161] ACPICA: Clean up context mutex during object deletion Greg Kroah-Hartman
2021-06-08 18:25 ` [PATCH 5.12 029/161] perf probe: Fix NULL pointer dereference in convert_variable_location() Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 030/161] net: dsa: tag_8021q: fix the VLAN IDs used for encoding sub-VLANs Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 031/161] net: sock: fix in-kernel mark setting Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 032/161] net/tls: Replace TLS_RX_SYNC_RUNNING with RCU Greg Kroah-Hartman
2021-06-08 18:26 ` Greg Kroah-Hartman [this message]
2021-06-08 18:26 ` [PATCH 5.12 034/161] net/mlx5e: Fix incompatible casting Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 035/161] net/mlx5: Check firmware sync reset requested is set before trying to abort it Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 036/161] net/mlx5e: Check for needed capability for cvlan matching Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 037/161] net/mlx5e: Fix adding encap rules to slow path Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 038/161] net/mlx5: DR, Create multi-destination flow table with level less than 64 Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 039/161] nvmet: fix freeing unallocated p2pmem Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 040/161] netfilter: nft_ct: skip expectations for confirmed conntrack Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 041/161] netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 042/161] drm/i915/selftests: Fix return value check in live_breadcrumbs_smoketest() Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 043/161] bpf, lockdown, audit: Fix buggy SELinux lockdown permission checks Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 044/161] ieee802154: fix error return code in ieee802154_add_iface() Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 045/161] ieee802154: fix error return code in ieee802154_llsec_getparams() Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 046/161] igb: Fix XDP with PTP enabled Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 047/161] igb: add correct exception tracing for XDP Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 048/161] ixgbevf: " Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 049/161] ice: track AF_XDP ZC enabled queues in bitmap Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 050/161] cxgb4: fix regression with HASH tc prio value update Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 051/161] ipv6: Fix KASAN: slab-out-of-bounds Read in fib6_nh_flush_exceptions Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 052/161] ice: Fix allowing VF to request more/less queues via virtchnl Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 053/161] ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 054/161] ice: handle the VF VSI rebuild failure Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 055/161] ice: report supported and advertised autoneg using PHY capabilities Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 056/161] ice: Allow all LLDP packets from PF to Tx Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 057/161] i2c: qcom-geni: Add shutdown callback for i2c Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 058/161] sch_htb: fix refcount leak in htb_parent_to_leaf_offload Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 059/161] cxgb4: avoid link re-train during TC-MQPRIO configuration Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 060/161] i40e: optimize for XDP_REDIRECT in xsk path Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 061/161] i40e: add correct exception tracing for XDP Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 062/161] ice: optimize for XDP_REDIRECT in xsk path Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 063/161] ice: add correct exception tracing for XDP Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 064/161] ixgbe: optimize for XDP_REDIRECT in xsk path Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 065/161] ixgbe: add correct exception tracing for XDP Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 066/161] arm64: dts: ti: j7200-main: Mark Main NAVSS as dma-coherent Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 067/161] optee: use export_uuid() to copy client UUID Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 068/161] bus: ti-sysc: Fix am335x resume hang for usb otg module Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 069/161] arm64: dts: ls1028a: fix memory node Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 070/161] arm64: dts: zii-ultra: remove second GEN_3V3 regulator instance Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 071/161] arm64: dts: zii-ultra: fix 12V_MAIN voltage Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 072/161] arm64: dts: freescale: sl28: var4: fix RGMII clock and voltage Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 073/161] arm64: dts: freescale: sl28: var1: " Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 074/161] ARM: dts: imx7d-meerkat96: Fix the tuning-step property Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 075/161] ARM: dts: imx7d-pico: " Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 076/161] ARM: dts: imx: emcon-avari: Fix nxp,pca8574 #gpio-cells Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 077/161] bus: ti-sysc: Fix flakey idling of uarts and stop using swsup_sidle_act Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 078/161] arm64: meson: select COMMON_CLK Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 079/161] tipc: add extack messages for bearer/media failure Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 080/161] tipc: fix unique bearer names sanity check Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 081/161] serial: stm32: fix threaded interrupt handling Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 082/161] riscv: vdso: fix and clean-up Makefile Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 083/161] libceph: dont set global_id until we get an auth ticket Greg Kroah-Hartman
2021-06-08 19:07   ` Ilya Dryomov
2021-06-08 19:24     ` Sasha Levin
2021-06-08 19:39       ` Ilya Dryomov
2021-06-08 18:26 ` [PATCH 5.12 084/161] amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 085/161] io_uring: fix link timeout refs Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 086/161] io_uring: use better types for cflags Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 087/161] io_uring: wrap io_kiocb reference count manipulation in helpers Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 088/161] io_uring: fix ltout double free on completion race Greg Kroah-Hartman
2021-06-08 18:26 ` [PATCH 5.12 089/161] drm/amdgpu/vcn3: add cancel_delayed_work_sync before power gate Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 090/161] drm/amdgpu/jpeg2.5: " Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 091/161] drm/amdgpu/jpeg3: " Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 092/161] Bluetooth: fix the erroneous flush_work() order Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 093/161] Bluetooth: use correct lock to prevent UAF of hdev object Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 094/161] wireguard: do not use -O3 Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 095/161] wireguard: peer: allocate in kmem_cache Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 096/161] wireguard: use synchronize_net rather than synchronize_rcu Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 097/161] wireguard: selftests: remove old conntrack kconfig value Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 098/161] wireguard: selftests: make sure rp_filter is disabled on vethc Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 099/161] wireguard: allowedips: initialize list head in selftest Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 100/161] wireguard: allowedips: remove nodes in O(1) Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 101/161] wireguard: allowedips: allocate nodes in kmem_cache Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 102/161] wireguard: allowedips: free empty intermediate nodes when removing single node Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 103/161] net: caif: added cfserl_release function Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 104/161] net: caif: add proper error handling Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 105/161] net: caif: fix memory leak in caif_device_notify Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 106/161] net: caif: fix memory leak in cfusbl_device_notify Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 107/161] HID: i2c-hid: Skip ELAN power-on command after reset Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 108/161] HID: magicmouse: fix NULL-deref on disconnect Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 109/161] HID: multitouch: require Finger field to mark Win8 reports as MT Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 110/161] gfs2: fix scheduling while atomic bug in glocks Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 111/161] ALSA: timer: Fix master timer notification Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 112/161] ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 113/161] ALSA: hda: update the power_state during the direct-complete Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 114/161] ARM: dts: imx6dl-yapp4: Fix RGMII connection to QCA8334 switch Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 115/161] ARM: dts: imx6q-dhcom: Add PU,VDD1P1,VDD2P5 regulators Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 116/161] ext4: fix memory leak in ext4_fill_super Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 117/161] ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 118/161] ext4: fix fast commit alignment issues Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 119/161] ext4: fix memory leak in ext4_mb_init_backend on error path Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 120/161] ext4: fix accessing uninit percpu counter variable with fast_commit Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 121/161] usb: dwc2: Fix build in periphal-only mode Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 122/161] Revert "MIPS: make userspace mapping young by default" Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 123/161] kfence: maximize allocation wait timeout duration Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 124/161] kfence: use TASK_IDLE when awaiting allocation Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 125/161] pid: take a reference when initializing `cad_pid` Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 126/161] ocfs2: fix data corruption by fallocate Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 127/161] mm/debug_vm_pgtable: fix alignment for pmd/pud_advanced_tests() Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 128/161] mm/page_alloc: fix counting of free pages after take off from buddy Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 129/161] scsi: lpfc: Fix failure to transmit ABTS on FC link Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 130/161] x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove update_pasid() Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 131/161] dmaengine: idxd: Use cpu_feature_enabled() Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 132/161] x86/sev: Check SME/SEV support in CPUID first Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 133/161] KVM: PPC: Book3S HV: Save host FSCR in the P7/8 path Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 134/161] nfc: fix NULL ptr dereference in llcp_sock_getname() after failed connect Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 135/161] drm/amdgpu: Dont query CE and UE errors Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 136/161] drm/amdgpu: make sure we unpin the UVD BO Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 137/161] x86/apic: Mark _all_ legacy interrupts when IO/APIC is missing Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 138/161] x86/thermal: Fix LVT thermal setup for SMI delivery mode Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 139/161] powerpc/kprobes: Fix validation of prefixed instructions across page boundary Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 140/161] btrfs: mark ordered extent and inode with error if we fail to finish Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 141/161] btrfs: fix error handling in btrfs_del_csums Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 142/161] btrfs: return errors from btrfs_del_csums in cleanup_ref_head Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 143/161] btrfs: fix fsync failure and transaction abort after writes to prealloc extents Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 144/161] btrfs: check error value from btrfs_update_inode in tree log Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 145/161] btrfs: fixup error handling in fixup_inode_link_counts Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 146/161] btrfs: abort in rename_exchange if we fail to insert the second ref Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 147/161] btrfs: fix deadlock when cloning inline extents and low on available space Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 148/161] mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY Greg Kroah-Hartman
2021-06-08 18:27 ` [PATCH 5.12 149/161] drm/msm/dpu: always use mdp device to scale bandwidth Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 150/161] KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 151/161] x86/kvm: Teardown PV features on boot CPU as well Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 152/161] x86/kvm: Disable kvmclock on all CPUs on shutdown Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 153/161] x86/kvm: Disable all PV features on crash Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 154/161] KVM: arm64: Commit pending PC adjustemnts before returning to userspace Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 155/161] KVM: arm64: Resolve all pending PC updates before immediate exit Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 156/161] ARM: OMAP1: isp1301-omap: Add missing gpiod_add_lookup_table function Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 157/161] i2c: qcom-geni: Suspend and resume the bus during SYSTEM_SLEEP_PM ops Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 158/161] x86/fault: Dont send SIGSEGV twice on SEGV_PKUERR Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 159/161] netfilter: nf_tables: missing error reporting for not selected expressions Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 160/161] xen-netback: take a reference to the RX task thread Greg Kroah-Hartman
2021-06-08 18:28 ` [PATCH 5.12 161/161] neighbour: allow NUD_NOARP entries to be forced GCed Greg Kroah-Hartman
2021-06-08 23:56 ` [PATCH 5.12 000/161] 5.12.10-rc1 review Fox Chen
2021-06-09  2:54 ` Shuah Khan
2021-06-09  7:48 ` Naresh Kamboju
2021-06-09  9:34 ` Jon Hunter
2021-06-09 18:50 ` Guenter Roeck
2021-06-09 18:57 ` Florian Fainelli
2021-06-09 20:47 ` Justin Forbes

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=20210608175946.571569455@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maximmi@nvidia.com \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=tariqt@nvidia.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).