From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev, Pablo Neira Ayuso <pablo@netfilter.org>,
Florian Westphal <fw@strlen.de>, Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.1 058/215] netfilter: bridge: confirm multicast packets before passing them up the stack
Date: Mon, 4 Mar 2024 21:22:01 +0000 [thread overview]
Message-ID: <20240304211558.821310303@linuxfoundation.org> (raw)
In-Reply-To: <20240304211556.993132804@linuxfoundation.org>
6.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Florian Westphal <fw@strlen.de>
[ Upstream commit 62e7151ae3eb465e0ab52a20c941ff33bb6332e9 ]
conntrack nf_confirm logic cannot handle cloned skbs referencing
the same nf_conn entry, which will happen for multicast (broadcast)
frames on bridges.
Example:
macvlan0
|
br0
/ \
ethX ethY
ethX (or Y) receives a L2 multicast or broadcast packet containing
an IP packet, flow is not yet in conntrack table.
1. skb passes through bridge and fake-ip (br_netfilter)Prerouting.
-> skb->_nfct now references a unconfirmed entry
2. skb is broad/mcast packet. bridge now passes clones out on each bridge
interface.
3. skb gets passed up the stack.
4. In macvlan case, macvlan driver retains clone(s) of the mcast skb
and schedules a work queue to send them out on the lower devices.
The clone skb->_nfct is not a copy, it is the same entry as the
original skb. The macvlan rx handler then returns RX_HANDLER_PASS.
5. Normal conntrack hooks (in NF_INET_LOCAL_IN) confirm the orig skb.
The Macvlan broadcast worker and normal confirm path will race.
This race will not happen if step 2 already confirmed a clone. In that
case later steps perform skb_clone() with skb->_nfct already confirmed (in
hash table). This works fine.
But such confirmation won't happen when eb/ip/nftables rules dropped the
packets before they reached the nf_confirm step in postrouting.
Pablo points out that nf_conntrack_bridge doesn't allow use of stateful
nat, so we can safely discard the nf_conn entry and let inet call
conntrack again.
This doesn't work for bridge netfilter: skb could have a nat
transformation. Also bridge nf prevents re-invocation of inet prerouting
via 'sabotage_in' hook.
Work around this problem by explicit confirmation of the entry at LOCAL_IN
time, before upper layer has a chance to clone the unconfirmed entry.
The downside is that this disables NAT and conntrack helpers.
Alternative fix would be to add locking to all code parts that deal with
unconfirmed packets, but even if that could be done in a sane way this
opens up other problems, for example:
-m physdev --physdev-out eth0 -j SNAT --snat-to 1.2.3.4
-m physdev --physdev-out eth1 -j SNAT --snat-to 1.2.3.5
For multicast case, only one of such conflicting mappings will be
created, conntrack only handles 1:1 NAT mappings.
Users should set create a setup that explicitly marks such traffic
NOTRACK (conntrack bypass) to avoid this, but we cannot auto-bypass
them, ruleset might have accept rules for untracked traffic already,
so user-visible behaviour would change.
Suggested-by: Pablo Neira Ayuso <pablo@netfilter.org>
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217777
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
include/linux/netfilter.h | 1 +
net/bridge/br_netfilter_hooks.c | 96 ++++++++++++++++++++++
net/bridge/netfilter/nf_conntrack_bridge.c | 30 +++++++
net/netfilter/nf_conntrack_core.c | 1 +
4 files changed, 128 insertions(+)
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h
index c8e03bcaecaaa..e5f4b6f8d1c09 100644
--- a/include/linux/netfilter.h
+++ b/include/linux/netfilter.h
@@ -462,6 +462,7 @@ struct nf_ct_hook {
const struct sk_buff *);
void (*attach)(struct sk_buff *nskb, const struct sk_buff *skb);
void (*set_closing)(struct nf_conntrack *nfct);
+ int (*confirm)(struct sk_buff *skb);
};
extern const struct nf_ct_hook __rcu *nf_ct_hook;
diff --git a/net/bridge/br_netfilter_hooks.c b/net/bridge/br_netfilter_hooks.c
index 202ad43e35d6b..bff48d5763635 100644
--- a/net/bridge/br_netfilter_hooks.c
+++ b/net/bridge/br_netfilter_hooks.c
@@ -43,6 +43,10 @@
#include <linux/sysctl.h>
#endif
+#if IS_ENABLED(CONFIG_NF_CONNTRACK)
+#include <net/netfilter/nf_conntrack_core.h>
+#endif
+
static unsigned int brnf_net_id __read_mostly;
struct brnf_net {
@@ -553,6 +557,90 @@ static unsigned int br_nf_pre_routing(void *priv,
return NF_STOLEN;
}
+#if IS_ENABLED(CONFIG_NF_CONNTRACK)
+/* conntracks' nf_confirm logic cannot handle cloned skbs referencing
+ * the same nf_conn entry, which will happen for multicast (broadcast)
+ * Frames on bridges.
+ *
+ * Example:
+ * macvlan0
+ * br0
+ * ethX ethY
+ *
+ * ethX (or Y) receives multicast or broadcast packet containing
+ * an IP packet, not yet in conntrack table.
+ *
+ * 1. skb passes through bridge and fake-ip (br_netfilter)Prerouting.
+ * -> skb->_nfct now references a unconfirmed entry
+ * 2. skb is broad/mcast packet. bridge now passes clones out on each bridge
+ * interface.
+ * 3. skb gets passed up the stack.
+ * 4. In macvlan case, macvlan driver retains clone(s) of the mcast skb
+ * and schedules a work queue to send them out on the lower devices.
+ *
+ * The clone skb->_nfct is not a copy, it is the same entry as the
+ * original skb. The macvlan rx handler then returns RX_HANDLER_PASS.
+ * 5. Normal conntrack hooks (in NF_INET_LOCAL_IN) confirm the orig skb.
+ *
+ * The Macvlan broadcast worker and normal confirm path will race.
+ *
+ * This race will not happen if step 2 already confirmed a clone. In that
+ * case later steps perform skb_clone() with skb->_nfct already confirmed (in
+ * hash table). This works fine.
+ *
+ * But such confirmation won't happen when eb/ip/nftables rules dropped the
+ * packets before they reached the nf_confirm step in postrouting.
+ *
+ * Work around this problem by explicit confirmation of the entry at
+ * LOCAL_IN time, before upper layer has a chance to clone the unconfirmed
+ * entry.
+ *
+ */
+static unsigned int br_nf_local_in(void *priv,
+ struct sk_buff *skb,
+ const struct nf_hook_state *state)
+{
+ struct nf_conntrack *nfct = skb_nfct(skb);
+ const struct nf_ct_hook *ct_hook;
+ struct nf_conn *ct;
+ int ret;
+
+ if (!nfct || skb->pkt_type == PACKET_HOST)
+ return NF_ACCEPT;
+
+ ct = container_of(nfct, struct nf_conn, ct_general);
+ if (likely(nf_ct_is_confirmed(ct)))
+ return NF_ACCEPT;
+
+ WARN_ON_ONCE(skb_shared(skb));
+ WARN_ON_ONCE(refcount_read(&nfct->use) != 1);
+
+ /* We can't call nf_confirm here, it would create a dependency
+ * on nf_conntrack module.
+ */
+ ct_hook = rcu_dereference(nf_ct_hook);
+ if (!ct_hook) {
+ skb->_nfct = 0ul;
+ nf_conntrack_put(nfct);
+ return NF_ACCEPT;
+ }
+
+ nf_bridge_pull_encap_header(skb);
+ ret = ct_hook->confirm(skb);
+ switch (ret & NF_VERDICT_MASK) {
+ case NF_STOLEN:
+ return NF_STOLEN;
+ default:
+ nf_bridge_push_encap_header(skb);
+ break;
+ }
+
+ ct = container_of(nfct, struct nf_conn, ct_general);
+ WARN_ON_ONCE(!nf_ct_is_confirmed(ct));
+
+ return ret;
+}
+#endif
/* PF_BRIDGE/FORWARD *************************************************/
static int br_nf_forward_finish(struct net *net, struct sock *sk, struct sk_buff *skb)
@@ -962,6 +1050,14 @@ static const struct nf_hook_ops br_nf_ops[] = {
.hooknum = NF_BR_PRE_ROUTING,
.priority = NF_BR_PRI_BRNF,
},
+#if IS_ENABLED(CONFIG_NF_CONNTRACK)
+ {
+ .hook = br_nf_local_in,
+ .pf = NFPROTO_BRIDGE,
+ .hooknum = NF_BR_LOCAL_IN,
+ .priority = NF_BR_PRI_LAST,
+ },
+#endif
{
.hook = br_nf_forward_ip,
.pf = NFPROTO_BRIDGE,
diff --git a/net/bridge/netfilter/nf_conntrack_bridge.c b/net/bridge/netfilter/nf_conntrack_bridge.c
index 06d94b2c6b5de..c7c27ada67044 100644
--- a/net/bridge/netfilter/nf_conntrack_bridge.c
+++ b/net/bridge/netfilter/nf_conntrack_bridge.c
@@ -291,6 +291,30 @@ static unsigned int nf_ct_bridge_pre(void *priv, struct sk_buff *skb,
return nf_conntrack_in(skb, &bridge_state);
}
+static unsigned int nf_ct_bridge_in(void *priv, struct sk_buff *skb,
+ const struct nf_hook_state *state)
+{
+ enum ip_conntrack_info ctinfo;
+ struct nf_conn *ct;
+
+ if (skb->pkt_type == PACKET_HOST)
+ return NF_ACCEPT;
+
+ /* nf_conntrack_confirm() cannot handle concurrent clones,
+ * this happens for broad/multicast frames with e.g. macvlan on top
+ * of the bridge device.
+ */
+ ct = nf_ct_get(skb, &ctinfo);
+ if (!ct || nf_ct_is_confirmed(ct) || nf_ct_is_template(ct))
+ return NF_ACCEPT;
+
+ /* let inet prerouting call conntrack again */
+ skb->_nfct = 0;
+ nf_ct_put(ct);
+
+ return NF_ACCEPT;
+}
+
static void nf_ct_bridge_frag_save(struct sk_buff *skb,
struct nf_bridge_frag_data *data)
{
@@ -415,6 +439,12 @@ static struct nf_hook_ops nf_ct_bridge_hook_ops[] __read_mostly = {
.hooknum = NF_BR_PRE_ROUTING,
.priority = NF_IP_PRI_CONNTRACK,
},
+ {
+ .hook = nf_ct_bridge_in,
+ .pf = NFPROTO_BRIDGE,
+ .hooknum = NF_BR_LOCAL_IN,
+ .priority = NF_IP_PRI_CONNTRACK_CONFIRM,
+ },
{
.hook = nf_ct_bridge_post,
.pf = NFPROTO_BRIDGE,
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
index 6d30c64a5fe86..024f93fc8c0bb 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
@@ -2789,6 +2789,7 @@ static const struct nf_ct_hook nf_conntrack_hook = {
.get_tuple_skb = nf_conntrack_get_tuple_skb,
.attach = nf_conntrack_attach,
.set_closing = nf_conntrack_set_closing,
+ .confirm = __nf_conntrack_confirm,
};
void nf_conntrack_init_end(void)
--
2.43.0
next prev parent reply other threads:[~2024-03-04 21:44 UTC|newest]
Thread overview: 230+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-04 21:21 [PATCH 6.1 000/215] 6.1.81-rc1 review Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 001/215] netfilter: nf_tables: disallow timeout for anonymous sets Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 002/215] drm/meson: fix unbind path if HDMI fails to bind Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 003/215] drm/meson: Dont remove bridges which are created by other drivers Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 004/215] scsi: core: Add struct for args to execution functions Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 005/215] scsi: sd: usb_storage: uas: Access media prior to querying device properties Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 006/215] af_unix: Fix task hung while purging oob_skb in GC Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 007/215] of: overlay: Reorder struct fragment fields kerneldoc Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 008/215] net: restore alpha order to Ethernet devices in config Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 009/215] mlxsw: spectrum_acl_tcam: Make fini symmetric to init Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 010/215] mlxsw: spectrum_acl_tcam: Add missing mutex_destroy() Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 011/215] PCI: layerscape: Add the endpoint linkup notifier support Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 012/215] PCI: layerscape: Add workaround for lost link capabilities during reset Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 013/215] ARM: dts: imx: Adjust dma-apbh node name Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 014/215] ARM: dts: imx7s: Drop dma-apb interrupt-names Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 015/215] usb: gadget: Properly configure the device for remote wakeup Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 016/215] Input: xpad - add constants for GIP interface numbers Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 017/215] iommu/sprd: Release dma buffer to avoid memory leak Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 018/215] iommu/arm-smmu-v3: Acknowledge pri/event queue overflow if any Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 019/215] fs/ntfs3: Fix a possible null-pointer dereference in ni_clear() Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 020/215] clk: tegra20: fix gcc-7 constant overflow warning Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 021/215] fs/ntfs3: Add length check in indx_get_root Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 022/215] fs/ntfs3: Fix NULL dereference in ni_write_inode Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 023/215] fs/ntfs3: Fix NULL pointer " Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 024/215] iommu/arm-smmu-qcom: Limit the SMR groups to 128 Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 025/215] RDMA/core: Fix multiple -Warray-bounds warnings Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 026/215] mm: huge_memory: dont force huge page alignment on 32 bit Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 027/215] mtd: spinand: gigadevice: Fix the get ecc status issue Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 028/215] netlink: Fix kernel-infoleak-after-free in __skb_datagram_iter Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 029/215] netlink: add nla be16/32 types to minlen array Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 030/215] net: ip_tunnel: prevent perpetual headroom growth Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 031/215] net: mctp: take ownership of skb in mctp_local_output Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 032/215] tun: Fix xdp_rxq_infos queue_index when detaching Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 033/215] cpufreq: intel_pstate: fix pstate limits enforcement for adjust_perf call back Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 034/215] net: veth: clear GRO when clearing XDP even when down Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 035/215] ipv6: fix potential "struct net" leak in inet6_rtm_getaddr() Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 036/215] lan78xx: enable auto speed configuration for LAN7850 if no EEPROM is detected Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 037/215] veth: try harder when allocating queue memory Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 038/215] net: usb: dm9601: fix wrong return value in dm9601_mdio_read Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 039/215] net: lan78xx: fix "softirq work is pending" error Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 040/215] uapi: in6: replace temporary label with rfc9486 Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 041/215] stmmac: Clear variable when destroying workqueue Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 042/215] Bluetooth: hci_sync: Check the correct flag before starting a scan Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 043/215] Bluetooth: Avoid potential use-after-free in hci_error_reset Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 044/215] Bluetooth: hci_sync: Fix accept_list when attempting to suspend Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 045/215] Bluetooth: hci_event: Fix wrongly recorded wakeup BD_ADDR Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 046/215] Bluetooth: hci_event: Fix handling of HCI_EV_IO_CAPA_REQUEST Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 047/215] Bluetooth: Enforce validation on max value of connection interval Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 048/215] Bluetooth: qca: Fix wrong event type for patch config command Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 049/215] Bluetooth: hci_qca: mark OF related data as maybe unused Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 050/215] Bluetooth: hci_qca: Add support for QTI Bluetooth chip wcn6855 Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 051/215] Bluetooth: btqca: use le32_to_cpu for ver.soc_id Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 052/215] Bluetooth: btqca: Add WCN3988 support Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 053/215] Bluetooth: qca: use switch case for soc type behavior Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 054/215] Bluetooth: qca: add support for WCN7850 Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 055/215] Bluetooth: hci_qca: Set BDA quirk bit if fwnode exists in DT Greg Kroah-Hartman
2024-03-04 21:21 ` [PATCH 6.1 056/215] netfilter: nf_tables: allow NFPROTO_INET in nft_(match/target)_validate() Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 057/215] netfilter: let reset rules clean out conntrack entries Greg Kroah-Hartman
2024-03-04 21:22 ` Greg Kroah-Hartman [this message]
2024-03-04 21:22 ` [PATCH 6.1 059/215] rtnetlink: fix error logic of IFLA_BRIDGE_FLAGS writing back Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 060/215] igb: extend PTP timestamp adjustments to i211 Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 061/215] net: hsr: Use correct offset for HSR TLV values in supervisory HSR frames Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 062/215] tls: decrement decrypt_pending if no async completion will be called Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 063/215] tls: fix peeking with sync+async decryption Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 064/215] efi/capsule-loader: fix incorrect allocation size Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 065/215] power: supply: bq27xxx-i2c: Do not free non existing IRQ Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 066/215] ALSA: Drop leftover snd-rtctimer stuff from Makefile Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 067/215] drm/tegra: Remove existing framebuffer only if we support display Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 068/215] fbcon: always restore the old font data in fbcon_do_set_font() Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 069/215] afs: Fix endless loop in directory parsing Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 070/215] riscv: Sparse-Memory/vmemmap out-of-bounds fix Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 071/215] of: property: fw_devlink: Fix stupid bug in remote-endpoint parsing Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 072/215] tomoyo: fix UAF write bug in tomoyo_write_control() Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 073/215] ALSA: firewire-lib: fix to check cycle continuity Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 074/215] ALSA: hda/realtek: Enable Mute LED on HP 840 G8 (MB 8AB8) Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 075/215] ALSA: hda/realtek: fix mute/micmute LED For HP mt440 Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 076/215] landlock: Fix asymmetric private inodes referring Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 077/215] gtp: fix use-after-free and null-ptr-deref in gtp_newlink() Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 078/215] wifi: nl80211: reject iftype change with mesh ID change Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 079/215] btrfs: fix double free of anonymous device after snapshot creation failure Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 080/215] btrfs: dev-replace: properly validate device names Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 081/215] btrfs: send: dont issue unnecessary zero writes for trailing hole Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 082/215] Revert "drm/amd/pm: resolve reboot exception for si oland" Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 083/215] drm/buddy: fix range bias Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 084/215] dmaengine: fsl-qdma: fix SoC may hang on 16 byte unaligned read Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 085/215] crypto: arm64/neonbs - fix out-of-bounds access on short input Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 086/215] dmaengine: ptdma: use consistent DMA masks Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 087/215] dmaengine: fsl-qdma: init irq after reg initialization Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 088/215] mmc: mmci: stm32: fix DMA API overlapping mappings warning Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 089/215] mmc: core: Fix eMMC initialization with 1-bit bus connection Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 090/215] mmc: sdhci-xenon: add timeout for PHY init complete Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 091/215] mmc: sdhci-xenon: fix PHY init clock stability Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 092/215] riscv: add CALLER_ADDRx support Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 093/215] efivarfs: Request at most 512 bytes for variable names Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 094/215] pmdomain: qcom: rpmhpd: Fix enabled_corner aggregation Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 095/215] x86/e820: Dont reserve SETUP_RNG_SEED in e820 Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 096/215] x86/cpu/intel: Detect TME keyid bits before setting MTRR mask registers Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 097/215] mptcp: fix data races on local_id Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 098/215] mptcp: fix data races on remote_id Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 099/215] mptcp: fix duplicate subflow creation Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 100/215] mptcp: continue marking the first subflow as UNCONNECTED Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 101/215] mptcp: map v4 address to v6 when destroying subflow Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 102/215] mptcp: push at DSS boundaries Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 103/215] selftests: mptcp: join: add ss mptcp support check Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 104/215] mptcp: fix snd_wnd initialization for passive socket Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 105/215] mptcp: fix double-free on socket dismantle Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 106/215] mptcp: fix possible deadlock in subflow diag Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 107/215] RDMA/core: Refactor rdma_bind_addr Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 108/215] RDMA/core: Update CMA destination address on rdma_resolve_addr Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 109/215] efi: libstub: use EFI_LOADER_CODE region when moving the kernel in memory Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 110/215] x86/boot/compressed: Rename efi_thunk_64.S to efi-mixed.S Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 111/215] x86/boot/compressed: Move 32-bit entrypoint code into .text section Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 112/215] x86/boot/compressed: Move bootargs parsing out of 32-bit startup code Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 113/215] x86/boot/compressed: Move efi32_pe_entry into .text section Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 114/215] x86/boot/compressed: Move efi32_entry out of head_64.S Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 115/215] x86/boot/compressed: Move efi32_pe_entry() " Greg Kroah-Hartman
2024-03-04 21:22 ` [PATCH 6.1 116/215] x86/boot/compressed, efi: Merge multiple definitions of image_offset into one Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 117/215] x86/boot/compressed: Simplify IDT/GDT preserve/restore in the EFI thunk Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 118/215] x86/boot/compressed: Avoid touching ECX in startup32_set_idt_entry() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 119/215] x86/boot/compressed: Pull global variable reference into startup32_load_idt() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 120/215] x86/boot/compressed: Move startup32_load_idt() into .text section Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 121/215] x86/boot/compressed: Move startup32_load_idt() out of head_64.S Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 122/215] x86/boot/compressed: Move startup32_check_sev_cbit() into .text Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 123/215] x86/boot/compressed: Move startup32_check_sev_cbit() out of head_64.S Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 124/215] x86/boot/compressed: Adhere to calling convention in get_sev_encryption_bit() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 125/215] x86/boot/compressed: Only build mem_encrypt.S if AMD_MEM_ENCRYPT=y Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 126/215] efi: verify that variable services are supported Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 127/215] x86/efi: Make the deprecated EFI handover protocol optional Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 128/215] x86/boot: Robustify calling startup_{32,64}() from the decompressor code Greg Kroah-Hartman
2024-03-04 22:42 ` H. Peter Anvin
2024-03-05 7:36 ` Greg Kroah-Hartman
2024-03-05 15:39 ` H. Peter Anvin
2024-03-06 15:50 ` Alexander Lobakin
2024-03-04 21:23 ` [PATCH 6.1 129/215] x86/efistub: Branch straight to kernel entry point from C code Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 130/215] x86/decompressor: Store boot_params pointer in callee save register Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 131/215] x86/decompressor: Assign paging related global variables earlier Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 132/215] x86/decompressor: Call trampoline as a normal function Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 133/215] x86/decompressor: Use standard calling convention for trampoline Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 134/215] x86/decompressor: Avoid the need for a stack in the 32-bit trampoline Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 135/215] x86/decompressor: Call trampoline directly from C code Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 136/215] x86/decompressor: Only call the trampoline when changing paging levels Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 137/215] x86/decompressor: Pass pgtable address to trampoline directly Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 138/215] x86/decompressor: Merge trampoline cleanup with switching code Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 139/215] x86/decompressor: Move global symbol references to C code Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 140/215] decompress: Use 8 byte alignment Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 141/215] drm/amd/display: Increase frame warning limit with KASAN or KCSAN in dml Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 142/215] NFS: Fix data corruption caused by congestion Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 143/215] NFSD: Simplify READ_PLUS Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 144/215] NFSD: Remove redundant assignment to variable host_err Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 145/215] nfsd: ignore requests to disable unsupported versions Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 146/215] nfsd: move nfserrno() to vfs.c Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 147/215] nfsd: allow disabling NFSv2 at compile time Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 148/215] exportfs: use pr_debug for unreachable debug statements Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 149/215] NFSD: Flesh out a documenting comment for filecache.c Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 150/215] NFSD: Clean up nfs4_preprocess_stateid_op() call sites Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 151/215] NFSD: Trace stateids returned via DELEGRETURN Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 152/215] NFSD: Trace delegation revocations Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 153/215] NFSD: Use const pointers as parameters to fh_ helpers Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 154/215] NFSD: Update file_hashtbl() helpers Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 155/215] NFSD: Clean up nfsd4_init_file() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 156/215] NFSD: Add a nfsd4_file_hash_remove() helper Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 157/215] NFSD: Clean up find_or_add_file() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 158/215] NFSD: Refactor find_file() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 159/215] NFSD: Use rhashtable for managing nfs4_file objects Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 160/215] NFSD: Fix licensing header in filecache.c Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 161/215] filelock: add a new locks_inode_context accessor function Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 162/215] lockd: use locks_inode_context helper Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 163/215] nfsd: " Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 164/215] nfsd: fix up the filecache laundrette scheduling Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 165/215] NFSD: Use struct_size() helper in alloc_session() Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 166/215] lockd: set missing fl_flags field when retrieving args Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 167/215] lockd: ensure we use the correct file descriptor when unlocking Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 168/215] lockd: fix file selection in nlmsvc_cancel_blocked Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 169/215] trace: Relocate event helper files Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 170/215] NFSD: refactoring courtesy_client_reaper to a generic low memory shrinker Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 171/215] NFSD: add support for sending CB_RECALL_ANY Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 172/215] NFSD: add delegation reaper to react to low memory condition Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 173/215] NFSD: add CB_RECALL_ANY tracepoints Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 174/215] NFSD: Use only RQ_DROPME to signal the need to drop a reply Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 175/215] NFSD: Avoid clashing function prototypes Greg Kroah-Hartman
2024-03-04 21:23 ` [PATCH 6.1 176/215] NFSD: Use set_bit(RQ_DROPME) Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 177/215] NFSD: register/unregister of nfsd-client shrinker at nfsd startup/shutdown time Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 178/215] NFSD: replace delayed_work with work_struct for nfsd_client_shrinker Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 179/215] nfsd: dont destroy global nfs4_file table in per-net shutdown Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 180/215] arm64: efi: Limit allocations to 48-bit addressable physical region Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 181/215] efi: efivars: prevent double registration Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 182/215] x86/efistub: Simplify and clean up handover entry code Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 183/215] x86/decompressor: Avoid magic offsets for EFI handover entrypoint Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 184/215] x86/efistub: Clear BSS in EFI handover protocol entrypoint Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 185/215] efi/libstub: Add memory attribute protocol definitions Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 186/215] efi/libstub: Add limit argument to efi_random_alloc() Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 187/215] x86/efistub: Perform 4/5 level paging switch from the stub Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 188/215] x86/decompressor: Factor out kernel decompression and relocation Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 189/215] x86/efistub: Prefer EFI memory attributes protocol over DXE services Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 190/215] x86/efistub: Perform SNP feature test while running in the firmware Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 191/215] x86/efistub: Avoid legacy decompressor when doing EFI boot Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 192/215] efi/x86: Avoid physical KASLR on older Dell systems Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 193/215] x86/efistub: Avoid placing the kernel below LOAD_PHYSICAL_ADDR Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 194/215] x86/boot: Rename conflicting boot_params pointer to boot_params_ptr Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 195/215] x86/boot: efistub: Assign global boot_params variable Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 196/215] efi/x86: Fix the missing KASLR_FLAG bit in boot_params->hdr.loadflags Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 197/215] af_unix: Drop oob_skb ref before purging queue in GC Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 198/215] phy: freescale: phy-fsl-imx8-mipi-dphy: Fix alias name to use dashes Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 199/215] powerpc/pseries/iommu: IOMMU table is not initialized for kdump over SR-IOV Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 200/215] gpio: 74x164: Enable output pins after registers are reset Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 201/215] gpiolib: Fix the error path order in gpiochip_add_data_with_key() Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 202/215] gpio: fix resource unwinding order in error path Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 203/215] block: define bvec_iter as __packed __aligned(4) Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 204/215] Revert "interconnect: Fix locking for runpm vs reclaim" Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 205/215] Revert "interconnect: Teach lockdep about icc_bw_lock order" Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 206/215] x86/bugs: Add asm helpers for executing VERW Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 207/215] x86/entry_64: Add VERW just before userspace transition Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 208/215] x86/entry_32: " Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 209/215] x86/bugs: Use ALTERNATIVE() instead of mds_user_clear static key Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 210/215] KVM/VMX: Use BT+JNC, i.e. EFLAGS.CF to select VMRESUME vs. VMLAUNCH Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 211/215] KVM/VMX: Move VERW closer to VMentry for MDS mitigation Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 212/215] bpf: Add table ID to bpf_fib_lookup BPF helper Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 213/215] bpf: Derive source IP addr via bpf_*_fib_lookup() Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 214/215] x86/efistub: Give up if memory attribute protocol returns an error Greg Kroah-Hartman
2024-03-04 21:24 ` [PATCH 6.1 215/215] xen/events: close evtchn after mapping cleanup Greg Kroah-Hartman
2024-03-04 22:49 ` [PATCH 6.1 000/215] 6.1.81-rc1 review SeongJae Park
2024-03-05 4:33 ` Ron Economos
2024-03-05 10:58 ` Jon Hunter
2024-03-05 11:21 ` Pavel Machek
2024-03-05 19:01 ` Shuah Khan
2024-03-05 20:43 ` Mateusz Jończyk
2024-03-05 22:50 ` Florian Fainelli
2024-03-06 10:33 ` Naresh Kamboju
2024-03-06 14:27 ` Yann Sionneau
2024-03-06 19:10 ` Allen
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=20240304211558.821310303@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=fw@strlen.de \
--cc=pablo@netfilter.org \
--cc=patches@lists.linux.dev \
--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