public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Hyunwoo Kim <imv4bel@gmail.com>,
	Pablo Neira Ayuso <pablo@netfilter.org>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.12 068/242] netfilter: flowtable: strictly check for maximum number of actions
Date: Wed,  8 Apr 2026 20:01:48 +0200	[thread overview]
Message-ID: <20260408175929.629680758@linuxfoundation.org> (raw)
In-Reply-To: <20260408175927.064985309@linuxfoundation.org>

6.12-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Pablo Neira Ayuso <pablo@netfilter.org>

[ Upstream commit 76522fcdbc3a02b568f5d957f7e66fc194abb893 ]

The maximum number of flowtable hardware offload actions in IPv6 is:

* ethernet mangling (4 payload actions, 2 for each ethernet address)
* SNAT (4 payload actions)
* DNAT (4 payload actions)
* Double VLAN (4 vlan actions, 2 for popping vlan, and 2 for pushing)
  for QinQ.
* Redirect (1 action)

Which makes 17, while the maximum is 16. But act_ct supports for tunnels
actions too. Note that payload action operates at 32-bit word level, so
mangling an IPv6 address takes 4 payload actions.

Update flow_action_entry_next() calls to check for the maximum number of
supported actions.

While at it, rise the maximum number of actions per flow from 16 to 24
so this works fine with IPv6 setups.

Fixes: c29f74e0df7a ("netfilter: nf_flow_table: hardware offload support")
Reported-by: Hyunwoo Kim <imv4bel@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 net/netfilter/nf_flow_table_offload.c | 196 +++++++++++++++++---------
 1 file changed, 130 insertions(+), 66 deletions(-)

diff --git a/net/netfilter/nf_flow_table_offload.c b/net/netfilter/nf_flow_table_offload.c
index e06bc36f49fe7..4f346f51d7d74 100644
--- a/net/netfilter/nf_flow_table_offload.c
+++ b/net/netfilter/nf_flow_table_offload.c
@@ -13,6 +13,8 @@
 #include <net/netfilter/nf_conntrack_core.h>
 #include <net/netfilter/nf_conntrack_tuple.h>
 
+#define NF_FLOW_RULE_ACTION_MAX	24
+
 static struct workqueue_struct *nf_flow_offload_add_wq;
 static struct workqueue_struct *nf_flow_offload_del_wq;
 static struct workqueue_struct *nf_flow_offload_stats_wq;
@@ -215,7 +217,12 @@ static void flow_offload_mangle(struct flow_action_entry *entry,
 static inline struct flow_action_entry *
 flow_action_entry_next(struct nf_flow_rule *flow_rule)
 {
-	int i = flow_rule->rule->action.num_entries++;
+	int i;
+
+	if (unlikely(flow_rule->rule->action.num_entries >= NF_FLOW_RULE_ACTION_MAX))
+		return NULL;
+
+	i = flow_rule->rule->action.num_entries++;
 
 	return &flow_rule->rule->action.entries[i];
 }
@@ -233,6 +240,9 @@ static int flow_offload_eth_src(struct net *net,
 	u32 mask, val;
 	u16 val16;
 
+	if (!entry0 || !entry1)
+		return -E2BIG;
+
 	this_tuple = &flow->tuplehash[dir].tuple;
 
 	switch (this_tuple->xmit_type) {
@@ -283,6 +293,9 @@ static int flow_offload_eth_dst(struct net *net,
 	u8 nud_state;
 	u16 val16;
 
+	if (!entry0 || !entry1)
+		return -E2BIG;
+
 	this_tuple = &flow->tuplehash[dir].tuple;
 
 	switch (this_tuple->xmit_type) {
@@ -324,16 +337,19 @@ static int flow_offload_eth_dst(struct net *net,
 	return 0;
 }
 
-static void flow_offload_ipv4_snat(struct net *net,
-				   const struct flow_offload *flow,
-				   enum flow_offload_tuple_dir dir,
-				   struct nf_flow_rule *flow_rule)
+static int flow_offload_ipv4_snat(struct net *net,
+				  const struct flow_offload *flow,
+				  enum flow_offload_tuple_dir dir,
+				  struct nf_flow_rule *flow_rule)
 {
 	struct flow_action_entry *entry = flow_action_entry_next(flow_rule);
 	u32 mask = ~htonl(0xffffffff);
 	__be32 addr;
 	u32 offset;
 
+	if (!entry)
+		return -E2BIG;
+
 	switch (dir) {
 	case FLOW_OFFLOAD_DIR_ORIGINAL:
 		addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.dst_v4.s_addr;
@@ -344,23 +360,27 @@ static void flow_offload_ipv4_snat(struct net *net,
 		offset = offsetof(struct iphdr, daddr);
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
 	flow_offload_mangle(entry, FLOW_ACT_MANGLE_HDR_TYPE_IP4, offset,
 			    &addr, &mask);
+	return 0;
 }
 
-static void flow_offload_ipv4_dnat(struct net *net,
-				   const struct flow_offload *flow,
-				   enum flow_offload_tuple_dir dir,
-				   struct nf_flow_rule *flow_rule)
+static int flow_offload_ipv4_dnat(struct net *net,
+				  const struct flow_offload *flow,
+				  enum flow_offload_tuple_dir dir,
+				  struct nf_flow_rule *flow_rule)
 {
 	struct flow_action_entry *entry = flow_action_entry_next(flow_rule);
 	u32 mask = ~htonl(0xffffffff);
 	__be32 addr;
 	u32 offset;
 
+	if (!entry)
+		return -E2BIG;
+
 	switch (dir) {
 	case FLOW_OFFLOAD_DIR_ORIGINAL:
 		addr = flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.src_v4.s_addr;
@@ -371,14 +391,15 @@ static void flow_offload_ipv4_dnat(struct net *net,
 		offset = offsetof(struct iphdr, saddr);
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
 	flow_offload_mangle(entry, FLOW_ACT_MANGLE_HDR_TYPE_IP4, offset,
 			    &addr, &mask);
+	return 0;
 }
 
-static void flow_offload_ipv6_mangle(struct nf_flow_rule *flow_rule,
+static int flow_offload_ipv6_mangle(struct nf_flow_rule *flow_rule,
 				     unsigned int offset,
 				     const __be32 *addr, const __be32 *mask)
 {
@@ -387,15 +408,20 @@ static void flow_offload_ipv6_mangle(struct nf_flow_rule *flow_rule,
 
 	for (i = 0; i < sizeof(struct in6_addr) / sizeof(u32); i++) {
 		entry = flow_action_entry_next(flow_rule);
+		if (!entry)
+			return -E2BIG;
+
 		flow_offload_mangle(entry, FLOW_ACT_MANGLE_HDR_TYPE_IP6,
 				    offset + i * sizeof(u32), &addr[i], mask);
 	}
+
+	return 0;
 }
 
-static void flow_offload_ipv6_snat(struct net *net,
-				   const struct flow_offload *flow,
-				   enum flow_offload_tuple_dir dir,
-				   struct nf_flow_rule *flow_rule)
+static int flow_offload_ipv6_snat(struct net *net,
+				  const struct flow_offload *flow,
+				  enum flow_offload_tuple_dir dir,
+				  struct nf_flow_rule *flow_rule)
 {
 	u32 mask = ~htonl(0xffffffff);
 	const __be32 *addr;
@@ -411,16 +437,16 @@ static void flow_offload_ipv6_snat(struct net *net,
 		offset = offsetof(struct ipv6hdr, daddr);
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
-	flow_offload_ipv6_mangle(flow_rule, offset, addr, &mask);
+	return flow_offload_ipv6_mangle(flow_rule, offset, addr, &mask);
 }
 
-static void flow_offload_ipv6_dnat(struct net *net,
-				   const struct flow_offload *flow,
-				   enum flow_offload_tuple_dir dir,
-				   struct nf_flow_rule *flow_rule)
+static int flow_offload_ipv6_dnat(struct net *net,
+				  const struct flow_offload *flow,
+				  enum flow_offload_tuple_dir dir,
+				  struct nf_flow_rule *flow_rule)
 {
 	u32 mask = ~htonl(0xffffffff);
 	const __be32 *addr;
@@ -436,10 +462,10 @@ static void flow_offload_ipv6_dnat(struct net *net,
 		offset = offsetof(struct ipv6hdr, saddr);
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
-	flow_offload_ipv6_mangle(flow_rule, offset, addr, &mask);
+	return flow_offload_ipv6_mangle(flow_rule, offset, addr, &mask);
 }
 
 static int flow_offload_l4proto(const struct flow_offload *flow)
@@ -461,15 +487,18 @@ static int flow_offload_l4proto(const struct flow_offload *flow)
 	return type;
 }
 
-static void flow_offload_port_snat(struct net *net,
-				   const struct flow_offload *flow,
-				   enum flow_offload_tuple_dir dir,
-				   struct nf_flow_rule *flow_rule)
+static int flow_offload_port_snat(struct net *net,
+				  const struct flow_offload *flow,
+				  enum flow_offload_tuple_dir dir,
+				  struct nf_flow_rule *flow_rule)
 {
 	struct flow_action_entry *entry = flow_action_entry_next(flow_rule);
 	u32 mask, port;
 	u32 offset;
 
+	if (!entry)
+		return -E2BIG;
+
 	switch (dir) {
 	case FLOW_OFFLOAD_DIR_ORIGINAL:
 		port = ntohs(flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.dst_port);
@@ -484,22 +513,26 @@ static void flow_offload_port_snat(struct net *net,
 		mask = ~htonl(0xffff);
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
 	flow_offload_mangle(entry, flow_offload_l4proto(flow), offset,
 			    &port, &mask);
+	return 0;
 }
 
-static void flow_offload_port_dnat(struct net *net,
-				   const struct flow_offload *flow,
-				   enum flow_offload_tuple_dir dir,
-				   struct nf_flow_rule *flow_rule)
+static int flow_offload_port_dnat(struct net *net,
+				  const struct flow_offload *flow,
+				  enum flow_offload_tuple_dir dir,
+				  struct nf_flow_rule *flow_rule)
 {
 	struct flow_action_entry *entry = flow_action_entry_next(flow_rule);
 	u32 mask, port;
 	u32 offset;
 
+	if (!entry)
+		return -E2BIG;
+
 	switch (dir) {
 	case FLOW_OFFLOAD_DIR_ORIGINAL:
 		port = ntohs(flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.src_port);
@@ -514,20 +547,24 @@ static void flow_offload_port_dnat(struct net *net,
 		mask = ~htonl(0xffff0000);
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
 	flow_offload_mangle(entry, flow_offload_l4proto(flow), offset,
 			    &port, &mask);
+	return 0;
 }
 
-static void flow_offload_ipv4_checksum(struct net *net,
-				       const struct flow_offload *flow,
-				       struct nf_flow_rule *flow_rule)
+static int flow_offload_ipv4_checksum(struct net *net,
+				      const struct flow_offload *flow,
+				      struct nf_flow_rule *flow_rule)
 {
 	u8 protonum = flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.l4proto;
 	struct flow_action_entry *entry = flow_action_entry_next(flow_rule);
 
+	if (!entry)
+		return -E2BIG;
+
 	entry->id = FLOW_ACTION_CSUM;
 	entry->csum_flags = TCA_CSUM_UPDATE_FLAG_IPV4HDR;
 
@@ -539,12 +576,14 @@ static void flow_offload_ipv4_checksum(struct net *net,
 		entry->csum_flags |= TCA_CSUM_UPDATE_FLAG_UDP;
 		break;
 	}
+
+	return 0;
 }
 
-static void flow_offload_redirect(struct net *net,
-				  const struct flow_offload *flow,
-				  enum flow_offload_tuple_dir dir,
-				  struct nf_flow_rule *flow_rule)
+static int flow_offload_redirect(struct net *net,
+				 const struct flow_offload *flow,
+				 enum flow_offload_tuple_dir dir,
+				 struct nf_flow_rule *flow_rule)
 {
 	const struct flow_offload_tuple *this_tuple, *other_tuple;
 	struct flow_action_entry *entry;
@@ -562,21 +601,28 @@ static void flow_offload_redirect(struct net *net,
 		ifindex = other_tuple->iifidx;
 		break;
 	default:
-		return;
+		return -EOPNOTSUPP;
 	}
 
 	dev = dev_get_by_index(net, ifindex);
 	if (!dev)
-		return;
+		return -ENODEV;
 
 	entry = flow_action_entry_next(flow_rule);
+	if (!entry) {
+		dev_put(dev);
+		return -E2BIG;
+	}
+
 	entry->id = FLOW_ACTION_REDIRECT;
 	entry->dev = dev;
+
+	return 0;
 }
 
-static void flow_offload_encap_tunnel(const struct flow_offload *flow,
-				      enum flow_offload_tuple_dir dir,
-				      struct nf_flow_rule *flow_rule)
+static int flow_offload_encap_tunnel(const struct flow_offload *flow,
+				     enum flow_offload_tuple_dir dir,
+				     struct nf_flow_rule *flow_rule)
 {
 	const struct flow_offload_tuple *this_tuple;
 	struct flow_action_entry *entry;
@@ -584,7 +630,7 @@ static void flow_offload_encap_tunnel(const struct flow_offload *flow,
 
 	this_tuple = &flow->tuplehash[dir].tuple;
 	if (this_tuple->xmit_type == FLOW_OFFLOAD_XMIT_DIRECT)
-		return;
+		return 0;
 
 	dst = this_tuple->dst_cache;
 	if (dst && dst->lwtstate) {
@@ -593,15 +639,19 @@ static void flow_offload_encap_tunnel(const struct flow_offload *flow,
 		tun_info = lwt_tun_info(dst->lwtstate);
 		if (tun_info && (tun_info->mode & IP_TUNNEL_INFO_TX)) {
 			entry = flow_action_entry_next(flow_rule);
+			if (!entry)
+				return -E2BIG;
 			entry->id = FLOW_ACTION_TUNNEL_ENCAP;
 			entry->tunnel = tun_info;
 		}
 	}
+
+	return 0;
 }
 
-static void flow_offload_decap_tunnel(const struct flow_offload *flow,
-				      enum flow_offload_tuple_dir dir,
-				      struct nf_flow_rule *flow_rule)
+static int flow_offload_decap_tunnel(const struct flow_offload *flow,
+				     enum flow_offload_tuple_dir dir,
+				     struct nf_flow_rule *flow_rule)
 {
 	const struct flow_offload_tuple *other_tuple;
 	struct flow_action_entry *entry;
@@ -609,7 +659,7 @@ static void flow_offload_decap_tunnel(const struct flow_offload *flow,
 
 	other_tuple = &flow->tuplehash[!dir].tuple;
 	if (other_tuple->xmit_type == FLOW_OFFLOAD_XMIT_DIRECT)
-		return;
+		return 0;
 
 	dst = other_tuple->dst_cache;
 	if (dst && dst->lwtstate) {
@@ -618,9 +668,13 @@ static void flow_offload_decap_tunnel(const struct flow_offload *flow,
 		tun_info = lwt_tun_info(dst->lwtstate);
 		if (tun_info && (tun_info->mode & IP_TUNNEL_INFO_TX)) {
 			entry = flow_action_entry_next(flow_rule);
+			if (!entry)
+				return -E2BIG;
 			entry->id = FLOW_ACTION_TUNNEL_DECAP;
 		}
 	}
+
+	return 0;
 }
 
 static int
@@ -632,8 +686,9 @@ nf_flow_rule_route_common(struct net *net, const struct flow_offload *flow,
 	const struct flow_offload_tuple *tuple;
 	int i;
 
-	flow_offload_decap_tunnel(flow, dir, flow_rule);
-	flow_offload_encap_tunnel(flow, dir, flow_rule);
+	if (flow_offload_decap_tunnel(flow, dir, flow_rule) < 0 ||
+	    flow_offload_encap_tunnel(flow, dir, flow_rule) < 0)
+		return -1;
 
 	if (flow_offload_eth_src(net, flow, dir, flow_rule) < 0 ||
 	    flow_offload_eth_dst(net, flow, dir, flow_rule) < 0)
@@ -649,6 +704,8 @@ nf_flow_rule_route_common(struct net *net, const struct flow_offload *flow,
 
 		if (tuple->encap[i].proto == htons(ETH_P_8021Q)) {
 			entry = flow_action_entry_next(flow_rule);
+			if (!entry)
+				return -1;
 			entry->id = FLOW_ACTION_VLAN_POP;
 		}
 	}
@@ -662,6 +719,8 @@ nf_flow_rule_route_common(struct net *net, const struct flow_offload *flow,
 			continue;
 
 		entry = flow_action_entry_next(flow_rule);
+		if (!entry)
+			return -1;
 
 		switch (other_tuple->encap[i].proto) {
 		case htons(ETH_P_PPP_SES):
@@ -687,18 +746,22 @@ int nf_flow_rule_route_ipv4(struct net *net, struct flow_offload *flow,
 		return -1;
 
 	if (test_bit(NF_FLOW_SNAT, &flow->flags)) {
-		flow_offload_ipv4_snat(net, flow, dir, flow_rule);
-		flow_offload_port_snat(net, flow, dir, flow_rule);
+		if (flow_offload_ipv4_snat(net, flow, dir, flow_rule) < 0 ||
+		    flow_offload_port_snat(net, flow, dir, flow_rule) < 0)
+			return -1;
 	}
 	if (test_bit(NF_FLOW_DNAT, &flow->flags)) {
-		flow_offload_ipv4_dnat(net, flow, dir, flow_rule);
-		flow_offload_port_dnat(net, flow, dir, flow_rule);
+		if (flow_offload_ipv4_dnat(net, flow, dir, flow_rule) < 0 ||
+		    flow_offload_port_dnat(net, flow, dir, flow_rule) < 0)
+			return -1;
 	}
 	if (test_bit(NF_FLOW_SNAT, &flow->flags) ||
 	    test_bit(NF_FLOW_DNAT, &flow->flags))
-		flow_offload_ipv4_checksum(net, flow, flow_rule);
+		if (flow_offload_ipv4_checksum(net, flow, flow_rule) < 0)
+			return -1;
 
-	flow_offload_redirect(net, flow, dir, flow_rule);
+	if (flow_offload_redirect(net, flow, dir, flow_rule) < 0)
+		return -1;
 
 	return 0;
 }
@@ -712,22 +775,23 @@ int nf_flow_rule_route_ipv6(struct net *net, struct flow_offload *flow,
 		return -1;
 
 	if (test_bit(NF_FLOW_SNAT, &flow->flags)) {
-		flow_offload_ipv6_snat(net, flow, dir, flow_rule);
-		flow_offload_port_snat(net, flow, dir, flow_rule);
+		if (flow_offload_ipv6_snat(net, flow, dir, flow_rule) < 0 ||
+		    flow_offload_port_snat(net, flow, dir, flow_rule) < 0)
+			return -1;
 	}
 	if (test_bit(NF_FLOW_DNAT, &flow->flags)) {
-		flow_offload_ipv6_dnat(net, flow, dir, flow_rule);
-		flow_offload_port_dnat(net, flow, dir, flow_rule);
+		if (flow_offload_ipv6_dnat(net, flow, dir, flow_rule) < 0 ||
+		    flow_offload_port_dnat(net, flow, dir, flow_rule) < 0)
+			return -1;
 	}
 
-	flow_offload_redirect(net, flow, dir, flow_rule);
+	if (flow_offload_redirect(net, flow, dir, flow_rule) < 0)
+		return -1;
 
 	return 0;
 }
 EXPORT_SYMBOL_GPL(nf_flow_rule_route_ipv6);
 
-#define NF_FLOW_RULE_ACTION_MAX	16
-
 static struct nf_flow_rule *
 nf_flow_offload_rule_alloc(struct net *net,
 			   const struct flow_offload_work *offload,
-- 
2.53.0




  parent reply	other threads:[~2026-04-08 18:42 UTC|newest]

Thread overview: 249+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-08 18:00 [PATCH 6.12 000/242] 6.12.81-rc1 review Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 001/242] io_uring/kbuf: remove legacy kbuf bulk allocation Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 002/242] io_uring/kbuf: remove legacy kbuf kmem cache Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 003/242] io_uring/kbuf: simplify __io_put_kbuf Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 004/242] io_uring/kbuf: remove legacy kbuf caching Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 005/242] io_uring/kbuf: open code __io_put_kbuf() Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 006/242] io_uring/kbuf: introduce io_kbuf_drop_legacy() Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 007/242] io_uring/kbuf: uninline __io_put_kbufs Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 008/242] io_uring/kbuf: drop issue_flags from io_put_kbuf(s)() arguments Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 009/242] io_uring/net: dont use io_net_kbuf_recyle() for non-provided cases Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 010/242] io_uring/net: clarify io_recv_buf_select() return value Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 011/242] io_uring/kbuf: pass in struct io_buffer_list to commit/recycle helpers Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 012/242] io_uring/kbuf: introduce struct io_br_sel Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 013/242] io_uring/kbuf: use struct io_br_sel for multiple buffers picking Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 014/242] io_uring/net: use struct io_br_sel->val as the recv finish value Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 015/242] io_uring/net: use struct io_br_sel->val as the send " Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 016/242] io_uring/kbuf: switch to storing struct io_buffer_list locally Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 017/242] io_uring: remove async/poll related provided buffer recycles Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 018/242] io_uring/net: correct type for min_not_zero() cast Greg Kroah-Hartman
2026-04-08 18:00 ` [PATCH 6.12 019/242] io_uring/rw: check for NULL io_br_sel when putting a buffer Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 020/242] io_uring/kbuf: enable bundles for incrementally consumed buffers Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 021/242] io_uring/kbuf: always use READ_ONCE() to read ring provided buffer lengths Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 022/242] io_uring/kbuf: use READ_ONCE() for userspace-mapped memory Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 023/242] io_uring/kbuf: use WRITE_ONCE() for userspace-shared buffer ring fields Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 024/242] io_uring/kbuf: fix missing BUF_MORE for incremental buffers at EOF Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 025/242] io_uring/kbuf: propagate BUF_MORE through early buffer commit path Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 026/242] arm64/scs: Fix handling of advance_loc4 Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 027/242] HID: logitech-hidpp: Enable MX Master 4 over bluetooth Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 028/242] wifi: mac80211: check tdls flag in ieee80211_tdls_oper Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 029/242] HID: wacom: fix out-of-bounds read in wacom_intuos_bt_irq Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 030/242] atm: lec: fix use-after-free in sock_def_readable() Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 031/242] btrfs: dont take device_list_mutex when querying zone info Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 032/242] tg3: replace placeholder MAC address with device property Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 033/242] objtool: Fix Clang jump table detection Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 034/242] HID: logitech-hidpp: Prevent use-after-free on force feedback initialisation failure Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 035/242] HID: multitouch: Check to ensure report responses match the request Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 036/242] btrfs: reserve enough transaction items for qgroup ioctls Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 037/242] i2c: tegra: Dont mark devices with pins as IRQ safe Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 038/242] btrfs: reject root items with drop_progress and zero drop_level Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 039/242] spi: geni-qcom: Check DMA interrupts early in ISR Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 040/242] dt-bindings: auxdisplay: ht16k33: Use unevaluatedProperties to fix common property warning Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 041/242] wifi: ath11k: Pass the correct value of each TID during a stop AMPDU session Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 042/242] crypto: caam - fix DMA corruption on long hmac keys Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 043/242] crypto: caam - fix overflow " Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 044/242] crypto: af-alg - fix NULL pointer dereference in scatterwalk Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 045/242] net: fec: fix the PTP periodic output sysfs interface Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 046/242] net: qrtr: replace qrtr_tx_flow radix_tree with xarray to fix memory leak Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 047/242] net: ipv6: ndisc: fix ndisc_ra_useropt to initialize nduseropt_padX fields to zero to prevent an info-leak Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 048/242] net/ipv6: ioam6: prevent schema length wraparound in trace fill Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 049/242] tg3: Fix race for querying speed/duplex Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 050/242] ipv6: icmp: clear skb2->cb[] in ip6_err_gen_icmpv6_unreach() Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 051/242] ip6_tunnel: clear skb2->cb[] in ip4ip6_err() Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 052/242] eth: fbnic: Account for page fragments when updating BDQ tail Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 053/242] bridge: br_nd_send: linearize skb before parsing ND options Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 054/242] net/sched: sch_hfsc: fix divide-by-zero in rtsc_min() Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 055/242] net: sfp: Fix Ubiquiti U-Fiber Instant SFP module on mvneta Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 056/242] net: enetc: check whether the RSS algorithm is Toeplitz Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 057/242] ASoC: ep93xx: Fix unchecked clk_prepare_enable() and add rollback on failure Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 058/242] ipv6: prevent possible UaF in addrconf_permanent_addr() Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 059/242] net: airoha: Add missing cleanup bits in airoha_qdma_cleanup_rx_queue() Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 060/242] net: introduce mangleid_features Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 061/242] net: use skb_header_pointer() for TCPv4 GSO frag_off check Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 062/242] net: sched: cls_api: fix tc_chain_fill_node to initialize tcm_info to zero to prevent an info-leak Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 063/242] NFC: pn533: bound the UART receive buffer Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 064/242] net: xilinx: axienet: Correct BD length masks to match AXIDMA IP spec Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 065/242] ASoC: Intel: boards: fix unmet dependency on PINCTRL Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 066/242] bpf: Fix regsafe() for pointers to packet Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 067/242] net: ipv6: flowlabel: defer exclusive option free until RCU teardown Greg Kroah-Hartman
2026-04-08 18:01 ` Greg Kroah-Hartman [this message]
2026-04-08 18:01 ` [PATCH 6.12 069/242] netfilter: nfnetlink_log: account for netlink header size Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 070/242] netfilter: x_tables: ensure names are nul-terminated Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 071/242] netfilter: ipset: use nla_strcmp for IPSET_ATTR_NAME attr Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 072/242] netfilter: nf_conntrack_helper: pass helper to expect cleanup Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 073/242] netfilter: ctnetlink: zero expect NAT fields when CTA_EXPECT_NAT absent Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 074/242] netfilter: nf_conntrack_expect: honor expectation helper field Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 075/242] netfilter: nf_conntrack_expect: use expect->helper Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 076/242] netfilter: nf_conntrack_expect: store netns and zone in expectation Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 077/242] netfilter: ctnetlink: ignore explicit helper on new expectations Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 078/242] netfilter: x_tables: restrict xt_check_match/xt_check_target extensions for NFPROTO_ARP Greg Kroah-Hartman
2026-04-08 18:01 ` [PATCH 6.12 079/242] netfilter: nf_tables: reject immediate NF_QUEUE verdict Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 080/242] Bluetooth: hci_sync: call destroy in hci_cmd_sync_run if immediate Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 081/242] Bluetooth: SCO: fix race conditions in sco_sock_connect() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 082/242] Bluetooth: MGMT: validate LTK enc_size on load Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 083/242] Bluetooth: hci_conn: fix potential UAF in set_cig_params_sync Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 084/242] Bluetooth: hci_event: fix potential UAF in hci_le_remote_conn_param_req_evt Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 085/242] Bluetooth: MGMT: validate mesh send advertising payload length Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 086/242] rds: ib: reject FRMR registration before IB connection is established Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 087/242] bpf: sockmap: Fix use-after-free of sk->sk_socket in sk_psock_verdict_data_ready() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 088/242] net/sched: sch_netem: fix out-of-bounds access in packet corruption Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 089/242] net: macb: fix clk handling on PCI glue driver removal Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 090/242] net: macb: properly unregister fixed rate clocks Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 091/242] net/mlx5: lag: Check for LAG device before creating debugfs Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 092/242] net/mlx5: Avoid "No data available" when FW version queries fail Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 093/242] net/mlx5: Fix switchdev mode rollback in case of failure Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 094/242] bnxt_en: Restore default stat ctxs for ULP when resource is available Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 095/242] net/x25: Fix potential double free of skb Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 096/242] net/x25: Fix overflow when accumulating packets Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 097/242] net/sched: cls_fw: fix NULL pointer dereference on shared blocks Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 098/242] net/sched: cls_flow: " Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 099/242] net: hsr: fix VLAN add unwind on slave errors Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 100/242] ipv6: avoid overflows in ip6_datagram_send_ctl() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 101/242] bpf: reject direct access to nullable PTR_TO_BUF pointers Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 102/242] Revert "drm: Fix use-after-free on framebuffers and property blobs when calling drm_dev_unplug" Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 103/242] iio: imu: bno055: fix BNO055_SCAN_CH_COUNT off by one Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 104/242] accel/qaic: Handle DBC deactivation if the owner went away Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 105/242] hwmon: (pxe1610) Check return value of page-select write in probe Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 106/242] hwmon: (ltc4286) Add missing MODULE_IMPORT_NS("PMBUS") Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 107/242] dt-bindings: gpio: fix microchip #interrupt-cells Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 108/242] hwmon: (tps53679) Fix device ID comparison and printing in tps53676_identify() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 109/242] hwmon: (occ) Fix missing newline in occ_show_extended() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 110/242] mips: ralink: update CPU clock index Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 111/242] sched/fair: Use protect_slice() instead of direct comparison Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 112/242] sched/fair: Fix zero_vruntime tracking fix Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 113/242] riscv: kgdb: fix several debug register assignment bugs Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 114/242] drm/ioc32: stop speculation on the drm_compat_ioctl path Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 115/242] wifi: wilc1000: fix u8 overflow in SSID scan buffer size calculation Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 116/242] wifi: iwlwifi: mvm: fix potential out-of-bounds read in iwl_mvm_nd_match_info_handler() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 117/242] USB: serial: option: add MeiG Smart SRM825WN Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 118/242] ALSA: caiaq: fix stack out-of-bounds read in init_card Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 119/242] ALSA: ctxfi: Fix missing SPDIFI1 index handling Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 120/242] io_uring/net: fix slab-out-of-bounds read in io_bundle_nbufs() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 121/242] Bluetooth: SMP: derive legacy responder STK authentication from MITM state Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 122/242] Bluetooth: SMP: force responder MITM requirements before building the pairing response Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 123/242] Bluetooth: hci_sync: fix stack buffer overflow in hci_le_big_create_sync Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 124/242] ksmbd: fix OOB write in QUERY_INFO for compound requests Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 125/242] MIPS: SiByte: Bring back cache initialisation Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 126/242] MIPS: Fix the GCC version check for `__multi3 workaround Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 127/242] hwmon: (occ) Fix division by zero in occ_show_power_1() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 128/242] mips: mm: Allocate tlb_vpn array atomically Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 129/242] drm/amdgpu: fix the idr allocation flags Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 130/242] iio: adc: ti-adc161s626: fix buffer read on big-endian Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 131/242] iio: adc: ti-adc161s626: use DMA-safe memory for spi_read() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 132/242] iio: adc: ti-ads1119: Fix unbalanced pm reference count in ds1119_single_conversion() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 133/242] iio: adc: ti-ads1119: Reinit completion before wait_for_completion_timeout() Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 134/242] iio: adc: ti-ads1119: Replace IRQF_ONESHOT with IRQF_NO_THREAD Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 135/242] drm/ast: dp501: Fix initialization of SCU2C Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 136/242] drm/i915/dsi: Dont do DSC horizontal timing adjustments in command mode Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 137/242] drm/i915/dp: Use crtc_state->enhanced_framing properly on ivb/hsw CPU eDP Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 138/242] drm/amdgpu: Change AMDGPU_VA_RESERVED_TRAP_SIZE to 64KB Greg Kroah-Hartman
2026-04-08 18:02 ` [PATCH 6.12 139/242] drm/amdgpu/pm: drop SMU driver if version not matched messages Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 140/242] USB: serial: io_edgeport: add support for Blackbox IC135A Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 141/242] USB: serial: option: add support for Rolling Wireless RW135R-GL Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 142/242] USB: core: add NO_LPM quirk for Razer Kiyo Pro webcam Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 143/242] Input: synaptics-rmi4 - fix a locking bug in an error path Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 144/242] Input: i8042 - add TUXEDO InfinityBook Max 16 Gen10 AMD to i8042 quirk table Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 145/242] Input: bcm5974 - recover from failed mode switch Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 146/242] Input: xpad - add support for BETOP BTP-KP50B/C controllers wireless mode Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 147/242] Input: xpad - add support for Razer Wolverine V3 Pro Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 148/242] iio: adc: aspeed: clear reference voltage bits before configuring vref Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 149/242] iio: accel: fix ADXL355 temperature signature value Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 150/242] iio: accel: adxl380: fix FIFO watermark bit 8 always written as 0 Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 151/242] iio: dac: ad5770r: fix error return in ad5770r_read_raw() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 152/242] iio: light: vcnl4035: fix scan buffer on big-endian Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 153/242] iio: imu: bmi160: Remove potential undefined behavior in bmi160_config_pin() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 154/242] iio: imu: st_lsm6dsx: Set FIFO ODR for accelerometer and gyroscope only Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 155/242] iio: gyro: mpu3050: Fix incorrect free_irq() variable Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 156/242] iio: gyro: mpu3050: Fix irq resource leak Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 157/242] iio: gyro: mpu3050: Move iio_device_register() to correct location Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 158/242] iio: gyro: mpu3050: Fix out-of-sequence free_irq() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 159/242] usb: quirks: add DELAY_INIT quirk for another Silicon Motion flash drive Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 160/242] usb: ulpi: fix double free in ulpi_register_interface() error path Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 161/242] usb: usbtmc: Flush anchored URBs in usbtmc_release Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 162/242] usb: ehci-brcm: fix sleep during atomic Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 163/242] usb: dwc2: gadget: Fix spin_lock/unlock mismatch in dwc2_hsotg_udc_stop() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 164/242] usb: core: phy: avoid double use of usb3-phy Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 165/242] usb: cdns3: gadget: fix NULL pointer dereference in ep_queue Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 166/242] usb: cdns3: gadget: fix state inconsistency on gadget init failure Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 167/242] x86/platform/geode: Fix on-stack property data use-after-return bug Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 168/242] Revert "LoongArch: Handle percpu handler address for ORC unwinder" Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 169/242] Revert "LoongArch: Remove unnecessary checks " Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 170/242] Revert "LoongArch/orc: Use RCU in all users of __module_address()." Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 171/242] bridge: br_nd_send: validate ND option lengths Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 172/242] cdc-acm: new quirk for EPSON HMD Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 173/242] comedi: dt2815: add hardware detection to prevent crash Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 174/242] comedi: Reinit dev->spinlock between attachments to low-level drivers Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 175/242] comedi: ni_atmio16d: Fix invalid clean-up after failed attach Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 176/242] comedi: me_daq: Fix potential overrun of firmware buffer Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 177/242] comedi: me4000: " Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 178/242] firmware: microchip: fail auto-update probe if no flash found Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 179/242] dt-bindings: connector: add pd-disable dependency Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 180/242] nvmem: imx: assign nvmem_cell_info::raw_len Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 181/242] nvmem: zynqmp_nvmem: Fix buffer size in DMA and memcpy Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 182/242] netfilter: ipset: drop logically empty buckets in mtype_del Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 183/242] counter: rz-mtu3-cnt: prevent counter from being toggled multiple times Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 184/242] counter: rz-mtu3-cnt: do not use struct rz_mtu3_channels dev member Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 185/242] crypto: tegra - Add missing CRYPTO_ALG_ASYNC Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 186/242] vxlan: validate ND option lengths in vxlan_na_create Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 187/242] net: ftgmac100: fix ring allocation unwind on open failure Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 188/242] net: ethernet: mtk_ppe: avoid NULL deref when gmac0 is disabled Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 189/242] cpufreq: governor: fix double free in cpufreq_dbs_governor_init() error path Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 190/242] gpio: mxc: map Both Edge pad wakeup to Rising Edge Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 191/242] thermal: core: Fix thermal zone device registration error path Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 192/242] misc: fastrpc: possible double-free of cctx->remote_heap Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 193/242] thunderbolt: Fix property read in nhi_wake_supported() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 194/242] USB: dummy-hcd: Fix locking/synchronization error Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 195/242] USB: dummy-hcd: Fix interrupt synchronization error Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 196/242] usb: gadget: dummy_hcd: fix premature URB completion when ZLP follows partial transfer Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 197/242] usb: typec: ucsi: validate connector number in ucsi_notify_common() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 198/242] ice: Fix memory leak in ice_set_ringparam() Greg Kroah-Hartman
2026-04-08 18:03 ` [PATCH 6.12 199/242] btrfs: fix the qgroup data free range for inline data extents Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 200/242] btrfs: do not free data reservation in fallback from inline due to -ENOSPC Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 201/242] usb: gadget: u_ether: Fix race between gether_disconnect and eth_stop Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 202/242] usb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 203/242] usb: gadget: uvc: fix NULL pointer dereference during unbind race Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 204/242] usb: gadget: f_subset: Fix unbalanced refcnt in geth_free Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 205/242] usb: gadget: f_rndis: Protect RNDIS options with mutex Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 206/242] usb: gadget: f_ecm: Fix net_device lifecycle with device_move Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 207/242] usb: gadget: f_eem: " Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 208/242] usb: gadget: f_subset: " Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 209/242] usb: gadget: f_rndis: " Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 210/242] usb: gadget: f_hid: move list and spinlock inits from bind to alloc Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 211/242] usb: gadget: f_uac1_legacy: validate control request size Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 212/242] wifi: virt_wifi: remove SET_NETDEV_DEV to avoid use-after-free Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 213/242] spi: cadence-qspi: Fix exec_mem_op error handling Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 214/242] net: correctly handle tunneled traffic on IPV6_CSUM GSO fallback Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 215/242] net: mana: fix use-after-free in add_adev() error path Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 216/242] scsi: target: tcm_loop: Drain commands in target_reset handler Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 217/242] x86/fred: Fix early boot failures on SEV-ES/SNP guests Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 218/242] mm/huge_memory: fix folio isnt locked in softleaf_to_folio() Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 219/242] mm: replace READ_ONCE() with standard page table accessors Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 220/242] mm/memory: fix PMD/PUD checks in follow_pfnmap_start() Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 221/242] drm/amd/pm: disable OD_FAN_CURVE if temp or pwm range invalid for smu v13 Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 222/242] ext4: publish jinode after initialization Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 223/242] s390/perf_cpum_sf: Convert to use try_cmpxchg128() Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 224/242] s390/cpum_sf: Cap sampling rate to prevent lsctl exception Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 225/242] MPTCP: fix lock class name family in pm_nl_create_listen_socket Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 226/242] x86/CPU/AMD: Add additional fixed RDSEED microcode revisions Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 227/242] drm/amd/amdgpu: decouple ASPM with pcie dpm Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 228/242] drm/amd/amdgpu: disable ASPM in some situations Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 229/242] drm/amd/display: Disable fastboot on DCE 6 too Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 230/242] drm/amd/display: Reject modes with too high pixel clock on DCE6-10 Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 231/242] drm/amd/display: Keep PLL0 running on DCE 6.0 and 6.4 Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 232/242] drm/amd/display: Fix DCE 6.0 and 6.4 PLL programming Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 233/242] drm/amd/display: Adjust DCE 8-10 clock, dont overclock by 15% Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 234/242] drm/amd/display: Disable scaling on DCE6 for now Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 235/242] drm/amd: Disable ASPM on SI Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 236/242] drm/amd/display: Correct logic check error for fastboot Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 237/242] bpf: Improve bounds when s64 crosses sign boundary Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 238/242] selftests/bpf: Test cross-sign 64bits range refinement Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 239/242] selftests/bpf: Test invariants on JSLT crossing sign Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 240/242] bpf: Add third round of bounds deduction Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 241/242] bpf: Fix u32/s32 bounds when ranges cross min/max boundary Greg Kroah-Hartman
2026-04-08 18:04 ` [PATCH 6.12 242/242] selftests/bpf: test refining " Greg Kroah-Hartman
2026-04-08 22:32 ` [PATCH 6.12 000/242] 6.12.81-rc1 review Dileep malepu
2026-04-09  6:17 ` Shung-Hsi Yu
2026-04-09  7:21 ` Pavel Machek
2026-04-09  7:37 ` Francesco Dolcini
2026-04-09  8:04 ` Ron Economos
2026-04-09  9:04 ` Jon Hunter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260408175929.629680758@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=imv4bel@gmail.com \
    --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