stable.vger.kernel.org archive mirror
 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,
	syzbot+9204e7399656300bf271@syzkaller.appspotmail.com,
	Jozsef Kadlecsik <kadlec@netfilter.org>,
	Pablo Neira Ayuso <pablo@netfilter.org>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.1 089/159] netfilter: ipset: Rework long task execution when adding/deleting entries
Date: Tue, 10 Jan 2023 19:03:57 +0100	[thread overview]
Message-ID: <20230110180021.136442646@linuxfoundation.org> (raw)
In-Reply-To: <20230110180018.288460217@linuxfoundation.org>

From: Jozsef Kadlecsik <kadlec@netfilter.org>

[ Upstream commit 5e29dc36bd5e2166b834ceb19990d9e68a734d7d ]

When adding/deleting large number of elements in one step in ipset, it can
take a reasonable amount of time and can result in soft lockup errors. The
patch 5f7b51bf09ba ("netfilter: ipset: Limit the maximal range of
consecutive elements to add/delete") tried to fix it by limiting the max
elements to process at all. However it was not enough, it is still possible
that we get hung tasks. Lowering the limit is not reasonable, so the
approach in this patch is as follows: rely on the method used at resizing
sets and save the state when we reach a smaller internal batch limit,
unlock/lock and proceed from the saved state. Thus we can avoid long
continuous tasks and at the same time removed the limit to add/delete large
number of elements in one step.

The nfnl mutex is held during the whole operation which prevents one to
issue other ipset commands in parallel.

Fixes: 5f7b51bf09ba ("netfilter: ipset: Limit the maximal range of consecutive elements to add/delete")
Reported-by: syzbot+9204e7399656300bf271@syzkaller.appspotmail.com
Signed-off-by: Jozsef Kadlecsik <kadlec@netfilter.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 include/linux/netfilter/ipset/ip_set.h      |  2 +-
 net/netfilter/ipset/ip_set_core.c           |  7 ++++---
 net/netfilter/ipset/ip_set_hash_ip.c        | 14 ++++++-------
 net/netfilter/ipset/ip_set_hash_ipmark.c    | 13 ++++++------
 net/netfilter/ipset/ip_set_hash_ipport.c    | 13 ++++++------
 net/netfilter/ipset/ip_set_hash_ipportip.c  | 13 ++++++------
 net/netfilter/ipset/ip_set_hash_ipportnet.c | 13 +++++++-----
 net/netfilter/ipset/ip_set_hash_net.c       | 17 +++++++--------
 net/netfilter/ipset/ip_set_hash_netiface.c  | 15 ++++++--------
 net/netfilter/ipset/ip_set_hash_netnet.c    | 23 +++++++--------------
 net/netfilter/ipset/ip_set_hash_netport.c   | 19 +++++++----------
 11 files changed, 68 insertions(+), 81 deletions(-)

diff --git a/include/linux/netfilter/ipset/ip_set.h b/include/linux/netfilter/ipset/ip_set.h
index ada1296c87d5..72f5ebc5c97a 100644
--- a/include/linux/netfilter/ipset/ip_set.h
+++ b/include/linux/netfilter/ipset/ip_set.h
@@ -197,7 +197,7 @@ struct ip_set_region {
 };
 
 /* Max range where every element is added/deleted in one step */
-#define IPSET_MAX_RANGE		(1<<20)
+#define IPSET_MAX_RANGE		(1<<14)
 
 /* The max revision number supported by any set type + 1 */
 #define IPSET_REVISION_MAX	9
diff --git a/net/netfilter/ipset/ip_set_core.c b/net/netfilter/ipset/ip_set_core.c
index e7ba5b6dd2b7..46ebee9400da 100644
--- a/net/netfilter/ipset/ip_set_core.c
+++ b/net/netfilter/ipset/ip_set_core.c
@@ -1698,9 +1698,10 @@ call_ad(struct net *net, struct sock *ctnl, struct sk_buff *skb,
 		ret = set->variant->uadt(set, tb, adt, &lineno, flags, retried);
 		ip_set_unlock(set);
 		retried = true;
-	} while (ret == -EAGAIN &&
-		 set->variant->resize &&
-		 (ret = set->variant->resize(set, retried)) == 0);
+	} while (ret == -ERANGE ||
+		 (ret == -EAGAIN &&
+		  set->variant->resize &&
+		  (ret = set->variant->resize(set, retried)) == 0));
 
 	if (!ret || (ret == -IPSET_ERR_EXIST && eexist))
 		return 0;
diff --git a/net/netfilter/ipset/ip_set_hash_ip.c b/net/netfilter/ipset/ip_set_hash_ip.c
index 75d556d71652..24adcdd7a0b1 100644
--- a/net/netfilter/ipset/ip_set_hash_ip.c
+++ b/net/netfilter/ipset/ip_set_hash_ip.c
@@ -98,11 +98,11 @@ static int
 hash_ip4_uadt(struct ip_set *set, struct nlattr *tb[],
 	      enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_ip4 *h = set->data;
+	struct hash_ip4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_ip4_elem e = { 0 };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 ip = 0, ip_to = 0, hosts;
+	u32 ip = 0, ip_to = 0, hosts, i = 0;
 	int ret = 0;
 
 	if (tb[IPSET_ATTR_LINENO])
@@ -147,14 +147,14 @@ hash_ip4_uadt(struct ip_set *set, struct nlattr *tb[],
 
 	hosts = h->netmask == 32 ? 1 : 2 << (32 - h->netmask - 1);
 
-	/* 64bit division is not allowed on 32bit */
-	if (((u64)ip_to - ip + 1) >> (32 - h->netmask) > IPSET_MAX_RANGE)
-		return -ERANGE;
-
 	if (retried)
 		ip = ntohl(h->next.ip);
-	for (; ip <= ip_to;) {
+	for (; ip <= ip_to; i++) {
 		e.ip = htonl(ip);
+		if (i > IPSET_MAX_RANGE) {
+			hash_ip4_data_next(&h->next, &e);
+			return -ERANGE;
+		}
 		ret = adtfn(set, &e, &ext, &ext, flags);
 		if (ret && !ip_set_eexist(ret, flags))
 			return ret;
diff --git a/net/netfilter/ipset/ip_set_hash_ipmark.c b/net/netfilter/ipset/ip_set_hash_ipmark.c
index 153de3457423..a22ec1a6f6ec 100644
--- a/net/netfilter/ipset/ip_set_hash_ipmark.c
+++ b/net/netfilter/ipset/ip_set_hash_ipmark.c
@@ -97,11 +97,11 @@ static int
 hash_ipmark4_uadt(struct ip_set *set, struct nlattr *tb[],
 		  enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_ipmark4 *h = set->data;
+	struct hash_ipmark4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_ipmark4_elem e = { };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 ip, ip_to = 0;
+	u32 ip, ip_to = 0, i = 0;
 	int ret;
 
 	if (tb[IPSET_ATTR_LINENO])
@@ -148,13 +148,14 @@ hash_ipmark4_uadt(struct ip_set *set, struct nlattr *tb[],
 		ip_set_mask_from_to(ip, ip_to, cidr);
 	}
 
-	if (((u64)ip_to - ip + 1) > IPSET_MAX_RANGE)
-		return -ERANGE;
-
 	if (retried)
 		ip = ntohl(h->next.ip);
-	for (; ip <= ip_to; ip++) {
+	for (; ip <= ip_to; ip++, i++) {
 		e.ip = htonl(ip);
+		if (i > IPSET_MAX_RANGE) {
+			hash_ipmark4_data_next(&h->next, &e);
+			return -ERANGE;
+		}
 		ret = adtfn(set, &e, &ext, &ext, flags);
 
 		if (ret && !ip_set_eexist(ret, flags))
diff --git a/net/netfilter/ipset/ip_set_hash_ipport.c b/net/netfilter/ipset/ip_set_hash_ipport.c
index 7303138e46be..10481760a9b2 100644
--- a/net/netfilter/ipset/ip_set_hash_ipport.c
+++ b/net/netfilter/ipset/ip_set_hash_ipport.c
@@ -105,11 +105,11 @@ static int
 hash_ipport4_uadt(struct ip_set *set, struct nlattr *tb[],
 		  enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_ipport4 *h = set->data;
+	struct hash_ipport4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_ipport4_elem e = { .ip = 0 };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 ip, ip_to = 0, p = 0, port, port_to;
+	u32 ip, ip_to = 0, p = 0, port, port_to, i = 0;
 	bool with_ports = false;
 	int ret;
 
@@ -173,17 +173,18 @@ hash_ipport4_uadt(struct ip_set *set, struct nlattr *tb[],
 			swap(port, port_to);
 	}
 
-	if (((u64)ip_to - ip + 1)*(port_to - port + 1) > IPSET_MAX_RANGE)
-		return -ERANGE;
-
 	if (retried)
 		ip = ntohl(h->next.ip);
 	for (; ip <= ip_to; ip++) {
 		p = retried && ip == ntohl(h->next.ip) ? ntohs(h->next.port)
 						       : port;
-		for (; p <= port_to; p++) {
+		for (; p <= port_to; p++, i++) {
 			e.ip = htonl(ip);
 			e.port = htons(p);
+			if (i > IPSET_MAX_RANGE) {
+				hash_ipport4_data_next(&h->next, &e);
+				return -ERANGE;
+			}
 			ret = adtfn(set, &e, &ext, &ext, flags);
 
 			if (ret && !ip_set_eexist(ret, flags))
diff --git a/net/netfilter/ipset/ip_set_hash_ipportip.c b/net/netfilter/ipset/ip_set_hash_ipportip.c
index 334fb1ad0e86..39a01934b153 100644
--- a/net/netfilter/ipset/ip_set_hash_ipportip.c
+++ b/net/netfilter/ipset/ip_set_hash_ipportip.c
@@ -108,11 +108,11 @@ static int
 hash_ipportip4_uadt(struct ip_set *set, struct nlattr *tb[],
 		    enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_ipportip4 *h = set->data;
+	struct hash_ipportip4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_ipportip4_elem e = { .ip = 0 };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 ip, ip_to = 0, p = 0, port, port_to;
+	u32 ip, ip_to = 0, p = 0, port, port_to, i = 0;
 	bool with_ports = false;
 	int ret;
 
@@ -180,17 +180,18 @@ hash_ipportip4_uadt(struct ip_set *set, struct nlattr *tb[],
 			swap(port, port_to);
 	}
 
-	if (((u64)ip_to - ip + 1)*(port_to - port + 1) > IPSET_MAX_RANGE)
-		return -ERANGE;
-
 	if (retried)
 		ip = ntohl(h->next.ip);
 	for (; ip <= ip_to; ip++) {
 		p = retried && ip == ntohl(h->next.ip) ? ntohs(h->next.port)
 						       : port;
-		for (; p <= port_to; p++) {
+		for (; p <= port_to; p++, i++) {
 			e.ip = htonl(ip);
 			e.port = htons(p);
+			if (i > IPSET_MAX_RANGE) {
+				hash_ipportip4_data_next(&h->next, &e);
+				return -ERANGE;
+			}
 			ret = adtfn(set, &e, &ext, &ext, flags);
 
 			if (ret && !ip_set_eexist(ret, flags))
diff --git a/net/netfilter/ipset/ip_set_hash_ipportnet.c b/net/netfilter/ipset/ip_set_hash_ipportnet.c
index 7df94f437f60..5c6de605a9fb 100644
--- a/net/netfilter/ipset/ip_set_hash_ipportnet.c
+++ b/net/netfilter/ipset/ip_set_hash_ipportnet.c
@@ -160,12 +160,12 @@ static int
 hash_ipportnet4_uadt(struct ip_set *set, struct nlattr *tb[],
 		     enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_ipportnet4 *h = set->data;
+	struct hash_ipportnet4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_ipportnet4_elem e = { .cidr = HOST_MASK - 1 };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
 	u32 ip = 0, ip_to = 0, p = 0, port, port_to;
-	u32 ip2_from = 0, ip2_to = 0, ip2;
+	u32 ip2_from = 0, ip2_to = 0, ip2, i = 0;
 	bool with_ports = false;
 	u8 cidr;
 	int ret;
@@ -253,9 +253,6 @@ hash_ipportnet4_uadt(struct ip_set *set, struct nlattr *tb[],
 			swap(port, port_to);
 	}
 
-	if (((u64)ip_to - ip + 1)*(port_to - port + 1) > IPSET_MAX_RANGE)
-		return -ERANGE;
-
 	ip2_to = ip2_from;
 	if (tb[IPSET_ATTR_IP2_TO]) {
 		ret = ip_set_get_hostipaddr4(tb[IPSET_ATTR_IP2_TO], &ip2_to);
@@ -282,9 +279,15 @@ hash_ipportnet4_uadt(struct ip_set *set, struct nlattr *tb[],
 		for (; p <= port_to; p++) {
 			e.port = htons(p);
 			do {
+				i++;
 				e.ip2 = htonl(ip2);
 				ip2 = ip_set_range_to_cidr(ip2, ip2_to, &cidr);
 				e.cidr = cidr - 1;
+				if (i > IPSET_MAX_RANGE) {
+					hash_ipportnet4_data_next(&h->next,
+								  &e);
+					return -ERANGE;
+				}
 				ret = adtfn(set, &e, &ext, &ext, flags);
 
 				if (ret && !ip_set_eexist(ret, flags))
diff --git a/net/netfilter/ipset/ip_set_hash_net.c b/net/netfilter/ipset/ip_set_hash_net.c
index 1422739d9aa2..ce0a9ce5a91f 100644
--- a/net/netfilter/ipset/ip_set_hash_net.c
+++ b/net/netfilter/ipset/ip_set_hash_net.c
@@ -136,11 +136,11 @@ static int
 hash_net4_uadt(struct ip_set *set, struct nlattr *tb[],
 	       enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_net4 *h = set->data;
+	struct hash_net4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_net4_elem e = { .cidr = HOST_MASK };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 ip = 0, ip_to = 0, ipn, n = 0;
+	u32 ip = 0, ip_to = 0, i = 0;
 	int ret;
 
 	if (tb[IPSET_ATTR_LINENO])
@@ -188,19 +188,16 @@ hash_net4_uadt(struct ip_set *set, struct nlattr *tb[],
 		if (ip + UINT_MAX == ip_to)
 			return -IPSET_ERR_HASH_RANGE;
 	}
-	ipn = ip;
-	do {
-		ipn = ip_set_range_to_cidr(ipn, ip_to, &e.cidr);
-		n++;
-	} while (ipn++ < ip_to);
-
-	if (n > IPSET_MAX_RANGE)
-		return -ERANGE;
 
 	if (retried)
 		ip = ntohl(h->next.ip);
 	do {
+		i++;
 		e.ip = htonl(ip);
+		if (i > IPSET_MAX_RANGE) {
+			hash_net4_data_next(&h->next, &e);
+			return -ERANGE;
+		}
 		ip = ip_set_range_to_cidr(ip, ip_to, &e.cidr);
 		ret = adtfn(set, &e, &ext, &ext, flags);
 		if (ret && !ip_set_eexist(ret, flags))
diff --git a/net/netfilter/ipset/ip_set_hash_netiface.c b/net/netfilter/ipset/ip_set_hash_netiface.c
index 9810f5bf63f5..031073286236 100644
--- a/net/netfilter/ipset/ip_set_hash_netiface.c
+++ b/net/netfilter/ipset/ip_set_hash_netiface.c
@@ -202,7 +202,7 @@ hash_netiface4_uadt(struct ip_set *set, struct nlattr *tb[],
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_netiface4_elem e = { .cidr = HOST_MASK, .elem = 1 };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 ip = 0, ip_to = 0, ipn, n = 0;
+	u32 ip = 0, ip_to = 0, i = 0;
 	int ret;
 
 	if (tb[IPSET_ATTR_LINENO])
@@ -256,19 +256,16 @@ hash_netiface4_uadt(struct ip_set *set, struct nlattr *tb[],
 	} else {
 		ip_set_mask_from_to(ip, ip_to, e.cidr);
 	}
-	ipn = ip;
-	do {
-		ipn = ip_set_range_to_cidr(ipn, ip_to, &e.cidr);
-		n++;
-	} while (ipn++ < ip_to);
-
-	if (n > IPSET_MAX_RANGE)
-		return -ERANGE;
 
 	if (retried)
 		ip = ntohl(h->next.ip);
 	do {
+		i++;
 		e.ip = htonl(ip);
+		if (i > IPSET_MAX_RANGE) {
+			hash_netiface4_data_next(&h->next, &e);
+			return -ERANGE;
+		}
 		ip = ip_set_range_to_cidr(ip, ip_to, &e.cidr);
 		ret = adtfn(set, &e, &ext, &ext, flags);
 
diff --git a/net/netfilter/ipset/ip_set_hash_netnet.c b/net/netfilter/ipset/ip_set_hash_netnet.c
index 3d09eefe998a..c07b70bf32db 100644
--- a/net/netfilter/ipset/ip_set_hash_netnet.c
+++ b/net/netfilter/ipset/ip_set_hash_netnet.c
@@ -163,13 +163,12 @@ static int
 hash_netnet4_uadt(struct ip_set *set, struct nlattr *tb[],
 		  enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_netnet4 *h = set->data;
+	struct hash_netnet4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_netnet4_elem e = { };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
 	u32 ip = 0, ip_to = 0;
-	u32 ip2 = 0, ip2_from = 0, ip2_to = 0, ipn;
-	u64 n = 0, m = 0;
+	u32 ip2 = 0, ip2_from = 0, ip2_to = 0, i = 0;
 	int ret;
 
 	if (tb[IPSET_ATTR_LINENO])
@@ -245,19 +244,6 @@ hash_netnet4_uadt(struct ip_set *set, struct nlattr *tb[],
 	} else {
 		ip_set_mask_from_to(ip2_from, ip2_to, e.cidr[1]);
 	}
-	ipn = ip;
-	do {
-		ipn = ip_set_range_to_cidr(ipn, ip_to, &e.cidr[0]);
-		n++;
-	} while (ipn++ < ip_to);
-	ipn = ip2_from;
-	do {
-		ipn = ip_set_range_to_cidr(ipn, ip2_to, &e.cidr[1]);
-		m++;
-	} while (ipn++ < ip2_to);
-
-	if (n*m > IPSET_MAX_RANGE)
-		return -ERANGE;
 
 	if (retried) {
 		ip = ntohl(h->next.ip[0]);
@@ -270,7 +256,12 @@ hash_netnet4_uadt(struct ip_set *set, struct nlattr *tb[],
 		e.ip[0] = htonl(ip);
 		ip = ip_set_range_to_cidr(ip, ip_to, &e.cidr[0]);
 		do {
+			i++;
 			e.ip[1] = htonl(ip2);
+			if (i > IPSET_MAX_RANGE) {
+				hash_netnet4_data_next(&h->next, &e);
+				return -ERANGE;
+			}
 			ip2 = ip_set_range_to_cidr(ip2, ip2_to, &e.cidr[1]);
 			ret = adtfn(set, &e, &ext, &ext, flags);
 			if (ret && !ip_set_eexist(ret, flags))
diff --git a/net/netfilter/ipset/ip_set_hash_netport.c b/net/netfilter/ipset/ip_set_hash_netport.c
index 09cf72eb37f8..d1a0628df4ef 100644
--- a/net/netfilter/ipset/ip_set_hash_netport.c
+++ b/net/netfilter/ipset/ip_set_hash_netport.c
@@ -154,12 +154,11 @@ static int
 hash_netport4_uadt(struct ip_set *set, struct nlattr *tb[],
 		   enum ipset_adt adt, u32 *lineno, u32 flags, bool retried)
 {
-	const struct hash_netport4 *h = set->data;
+	struct hash_netport4 *h = set->data;
 	ipset_adtfn adtfn = set->variant->adt[adt];
 	struct hash_netport4_elem e = { .cidr = HOST_MASK - 1 };
 	struct ip_set_ext ext = IP_SET_INIT_UEXT(set);
-	u32 port, port_to, p = 0, ip = 0, ip_to = 0, ipn;
-	u64 n = 0;
+	u32 port, port_to, p = 0, ip = 0, ip_to = 0, i = 0;
 	bool with_ports = false;
 	u8 cidr;
 	int ret;
@@ -236,14 +235,6 @@ hash_netport4_uadt(struct ip_set *set, struct nlattr *tb[],
 	} else {
 		ip_set_mask_from_to(ip, ip_to, e.cidr + 1);
 	}
-	ipn = ip;
-	do {
-		ipn = ip_set_range_to_cidr(ipn, ip_to, &cidr);
-		n++;
-	} while (ipn++ < ip_to);
-
-	if (n*(port_to - port + 1) > IPSET_MAX_RANGE)
-		return -ERANGE;
 
 	if (retried) {
 		ip = ntohl(h->next.ip);
@@ -255,8 +246,12 @@ hash_netport4_uadt(struct ip_set *set, struct nlattr *tb[],
 		e.ip = htonl(ip);
 		ip = ip_set_range_to_cidr(ip, ip_to, &cidr);
 		e.cidr = cidr - 1;
-		for (; p <= port_to; p++) {
+		for (; p <= port_to; p++, i++) {
 			e.port = htons(p);
+			if (i > IPSET_MAX_RANGE) {
+				hash_netport4_data_next(&h->next, &e);
+				return -ERANGE;
+			}
 			ret = adtfn(set, &e, &ext, &ext, flags);
 			if (ret && !ip_set_eexist(ret, flags))
 				return ret;
-- 
2.35.1




  parent reply	other threads:[~2023-01-10 18:20 UTC|newest]

Thread overview: 176+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-10 18:02 [PATCH 6.1 000/159] 6.1.5-rc1 review Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 001/159] ARM: renumber bits related to _TIF_WORK_MASK Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 002/159] btrfs: replace strncpy() with strscpy() Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 003/159] cifs: fix interface count calculation during refresh Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 004/159] cifs: refcount only the selected iface during interface update Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 005/159] usb: dwc3: gadget: Ignore End Transfer delay on teardown Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 006/159] btrfs: fix off-by-one in delalloc search during lseek Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 007/159] btrfs: fix compat_ro checks against remount Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 008/159] perf probe: Use dwarf_attr_integrate as generic DWARF attr accessor Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 009/159] perf probe: Fix to get the DW_AT_decl_file and DW_AT_call_file as unsinged data Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 010/159] phy: qcom-qmp-combo: fix broken power on Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 011/159] btrfs: fix an error handling path in btrfs_defrag_leaves() Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 012/159] SUNRPC: ensure the matching upcall is in-flight upon downcall Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 013/159] wifi: ath9k: use proper statements in conditionals Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 014/159] bpf: pull before calling skb_postpull_rcsum() Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 015/159] drm/panfrost: Fix GEM handle creation ref-counting Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 016/159] netfilter: nf_tables: consolidate set description Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 017/159] netfilter: nf_tables: add function to create set stateful expressions Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 018/159] netfilter: nf_tables: perform type checking for existing sets Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 019/159] ice: xsk: do not use xdp_return_frame() on tx_buf->raw_buf Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 020/159] net: vrf: determine the dst using the original ifindex for multicast Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 021/159] vmxnet3: correctly report csum_level for encapsulated packet Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 022/159] mptcp: fix deadlock in fastopen error path Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 023/159] mptcp: fix lockdep false positive Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 024/159] netfilter: nf_tables: honor set timeout and garbage collection updates Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 025/159] bonding: fix lockdep splat in bond_miimon_commit() Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 026/159] net: lan966x: Fix configuration of the PCS Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 027/159] veth: Fix race with AF_XDP exposing old or uninitialized descriptors Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 028/159] nfsd: shut down the NFSv4 state objects before the filecache Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 029/159] net: hns3: add interrupts re-initialization while doing VF FLR Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 030/159] net: hns3: fix miss L3E checking for rx packet Greg Kroah-Hartman
2023-01-10 18:02 ` [PATCH 6.1 031/159] net: hns3: fix VF promisc mode not update when mac table full Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 032/159] net: sched: fix memory leak in tcindex_set_parms Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 033/159] qlcnic: prevent ->dcb use-after-free on qlcnic_dcb_enable() failure Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 034/159] net: dsa: mv88e6xxx: depend on PTP conditionally Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 035/159] nfc: Fix potential resource leaks Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 036/159] bnxt_en: Simplify bnxt_xdp_buff_init() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 037/159] bnxt_en: Fix XDP RX path Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 038/159] bnxt_en: Fix first buffer size calculations for XDP multi-buffer Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 039/159] bnxt_en: Fix HDS and jumbo thresholds for RX packets Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 040/159] vdpa/mlx5: Fix rule forwarding VLAN to TIR Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 041/159] vdpa/mlx5: Fix wrong mac address deletion Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 042/159] vdpa_sim: fix possible memory leak in vdpasim_net_init() and vdpasim_blk_init() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 043/159] vhost/vsock: Fix error handling in vhost_vsock_init() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 044/159] vringh: fix range used in iotlb_translate() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 045/159] vhost: fix range used in translate_desc() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 046/159] vhost-vdpa: fix an iotlb memory leak Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 047/159] vdpa_sim: fix vringh initialization in vdpasim_queue_ready() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 048/159] virtio-crypto: fix memory leak in virtio_crypto_alg_skcipher_close_session() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 049/159] vdpa/vp_vdpa: fix kfree a wrong pointer in vp_vdpa_remove Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 050/159] vdpasim: fix memory leak when freeing IOTLBs Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 051/159] net/mlx5: E-Switch, properly handle ingress tagged packets on VST Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 052/159] net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 053/159] net/mlx5: Fix io_eq_size and event_eq_size params validation Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 054/159] net/mlx5: Avoid recovery in probe flows Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 055/159] net/mlx5: Fix RoCE setting at HCA level Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 056/159] net/mlx5e: IPoIB, Dont allow CQE compression to be turned on by default Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 057/159] net/mlx5e: Fix RX reporter for XSK RQs Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 058/159] net/mlx5e: CT: Fix ct debugfs folder name Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 059/159] net/mlx5e: Always clear dest encap in neigh-update-del Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 060/159] net/mlx5e: Fix hw mtu initializing at XDP SQ allocation Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 061/159] net/mlx5e: Set geneve_tlv_option_0_exist when matching on geneve option Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 062/159] net/mlx5: Lag, fix failure to cancel delayed bond work Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 063/159] bpf: Always use maximal size for copy_array() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 064/159] tcp: Add TIME_WAIT sockets in bhash2 Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 065/159] net: hns3: refine the handling for VF heartbeat Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 066/159] net: amd-xgbe: add missed tasklet_kill Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 067/159] net: ena: Fix toeplitz initial hash value Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 068/159] net: ena: Dont register memory info on XDP exchange Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 069/159] net: ena: Account for the number of processed bytes in XDP Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 070/159] net: ena: Use bitmask to indicate packet redirection Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 071/159] net: ena: Fix rx_copybreak value update Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 072/159] net: ena: Set default value for RX interrupt moderation Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 073/159] net: ena: Update NUMA TPH hint register upon NUMA node update Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 074/159] net: phy: xgmiitorgmii: Fix refcount leak in xgmiitorgmii_probe Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 075/159] gpio: pca953x: avoid to use uninitialized value pinctrl Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 076/159] RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 077/159] RDMA/mlx5: Fix validation of max_rd_atomic caps for DC Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 078/159] selftests: net: fix cleanup_v6() for arp_ndisc_evict_nocarrier Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 079/159] selftests: net: return non-zero for failures reported in arp_ndisc_evict_nocarrier Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 080/159] drm/meson: Reduce the FIFO lines held when AFBC is not used Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 081/159] filelock: new helper: vfs_inode_has_locks Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 082/159] ceph: switch to vfs_inode_has_locks() to fix file lock bug Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 083/159] gpio: sifive: Fix refcount leak in sifive_gpio_probe Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 084/159] net: sched: atm: dont intepret cls results when asked to drop Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 085/159] net: sched: cbq: " Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 086/159] vxlan: Fix memory leaks in error path Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 087/159] net: sparx5: Fix reading of the MAC address Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 088/159] netfilter: ipset: fix hash:net,port,net hang with /0 subnet Greg Kroah-Hartman
2023-01-10 18:03 ` Greg Kroah-Hartman [this message]
2023-01-10 18:03 ` [PATCH 6.1 090/159] drm/virtio: Fix memory leak in virtio_gpu_object_create() Greg Kroah-Hartman
2023-01-10 18:03 ` [PATCH 6.1 091/159] perf tools: Fix resources leak in perf_data__open_dir() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 092/159] drm/imx: ipuv3-plane: Fix overlay plane width Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 093/159] fs/ntfs3: dont hold ni_lock when calling truncate_setsize() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 094/159] drivers/net/bonding/bond_3ad: return when theres no aggregator Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 095/159] octeontx2-pf: Fix lmtst ID used in aura free Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 096/159] usb: rndis_host: Secure rndis_query check against int overflow Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 097/159] perf lock contention: Fix core dump related to not finding the "__sched_text_end" symbol on s/390 Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 098/159] perf stat: Fix handling of unsupported cgroup events when using BPF counters Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 099/159] perf stat: Fix handling of --for-each-cgroup with --bpf-counters to match non BPF mode Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 100/159] drm/i915: unpin on error in intel_vgpu_shadow_mm_pin() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 101/159] drm/i915/gvt: fix double free bug in split_2MB_gtt_entry Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 102/159] ublk: honor IO_URING_F_NONBLOCK for handling control command Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 103/159] qed: allow sleep in qed_mcp_trace_dump() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 104/159] net/ulp: prevent ULP without clone op from entering the LISTEN status Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 105/159] caif: fix memory leak in cfctrl_linkup_request() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 106/159] udf: Fix extension of the last extent in the file Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 107/159] usb: dwc3: xilinx: include linux/gpio/consumer.h Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 108/159] hfs/hfsplus: avoid WARN_ON() for sanity check, use proper error handling Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 109/159] ASoC: SOF: Revert: "core: unregister clients and machine drivers in .shutdown" Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 110/159] 9p/client: fix data race on req->status Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 111/159] ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 112/159] ASoC: SOF: mediatek: initialize panic_info to zero Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 113/159] drm/amdgpu: Fix size validation for non-exclusive domains (v4) Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 114/159] drm/amdkfd: Fix kfd_process_device_init_vm error handling Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 115/159] drm/amdkfd: Fix double release compute pasid Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 116/159] io_uring/cancel: re-grab ctx mutex after finishing wait Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 117/159] nvme: fix multipath crash caused by flush request when blktrace is enabled Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 118/159] ACPI: video: Allow GPU drivers to report no panels Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 119/159] drm/amd/display: Report to ACPI video if no panels were found Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 120/159] ACPI: video: Dont enable fallback path for creating ACPI backlight by default Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 121/159] io_uring: check for valid register opcode earlier Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 122/159] kunit: alloc_string_stream_fragment error handling bug fix Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 123/159] nvmet: use NVME_CMD_EFFECTS_CSUPP instead of open coding it Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 124/159] nvme: also return I/O command effects from nvme_command_effects Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 125/159] ASoC: SOF: Intel: pci-tgl: unblock S5 entry if DMA stop has failed" Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 126/159] x86/kexec: Fix double-free of elf header buffer Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 127/159] x86/bugs: Flush IBP in ib_prctl_set() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 128/159] nfsd: fix handling of readdir in v4root vs. mount upcall timeout Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 129/159] fbdev: matroxfb: G200eW: Increase max memory from 1 MB to 16 MB Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 130/159] bpf: Fix panic due to wrong pageattr of im->image Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 131/159] Revert "drm/amd/display: Enable Freesync Video Mode by default" Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 132/159] Revert "net: dsa: qca8k: cache lo and hi for mdio write" Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 133/159] net: dsa: qca8k: fix wrong length value for mgmt eth packet Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 134/159] net: dsa: tag_qca: fix wrong MGMT_DATA2 size Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 135/159] block: dont allow splitting of a REQ_NOWAIT bio Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 136/159] io_uring: pin context while queueing deferred tw Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 137/159] io_uring: fix CQ waiting timeout handling Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 138/159] tpm: Allow system suspend to continue when TPM suspend fails Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 139/159] vhost_vdpa: fix the crash in unmap a large memory Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 140/159] thermal: int340x: Add missing attribute for data rate base Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 141/159] riscv: uaccess: fix type of 0 variable on error in get_user() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 142/159] riscv, kprobes: Stricter c.jr/c.jalr decoding Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 143/159] of/fdt: run soc memory setup when early_init_dt_scan_memory fails Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 144/159] drm/plane-helper: Add the missing declaration of drm_atomic_state Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 145/159] drm/amdkfd: Fix kernel warning during topology setup Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 146/159] drm/i915/gvt: fix gvt debugfs destroy Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 147/159] drm/i915/gvt: fix vgpu debugfs clean in remove Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 148/159] virtio-blk: use a helper to handle request queuing errors Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 149/159] virtio_blk: Fix signedness bug in virtblk_prep_rq() Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 150/159] drm/amd/display: Add check for DET fetch latency hiding for dcn32 Greg Kroah-Hartman
2023-01-10 18:04 ` [PATCH 6.1 151/159] drm/amd/display: Uninitialized variables causing 4k60 UCLK to stay at DPM1 and not DPM0 Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 152/159] btrfs: handle case when repair happens with dev-replace Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 153/159] ksmbd: fix infinite loop in ksmbd_conn_handler_loop() Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 154/159] ksmbd: send proper error response in smb2_tree_connect() Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 155/159] ksmbd: check nt_len to be at least CIFS_ENCPWD_SIZE in ksmbd_decode_ntlmssp_auth_blob Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 156/159] drm/i915/dsi: add support for ICL+ native MIPI GPIO sequence Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 157/159] drm/i915/dsi: fix MIPI_BKLT_EN_1 native GPIO index Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 158/159] efi: random: combine bootloader provided RNG seed with RNG protocol output Greg Kroah-Hartman
2023-01-10 18:05 ` [PATCH 6.1 159/159] wifi: ath11k: Send PME message during wakeup from D3cold Greg Kroah-Hartman
2023-01-10 19:34 ` [PATCH 6.1 000/159] 6.1.5-rc1 review Holger Hoffstätte
2023-01-10 19:38 ` Florian Fainelli
2023-01-11  0:35 ` Shuah Khan
2023-01-11  0:59 ` ogasawara takeshi
2023-01-11  6:55 ` Naresh Kamboju
2023-01-11 14:18   ` Arnd Bergmann
2023-01-11 10:58 ` Rudi Heitbaum
2023-01-11 11:24 ` Ron Economos
2023-01-11 12:58 ` Sudip Mukherjee
2023-01-11 16:49 ` Naresh Kamboju
2023-01-11 17:28 ` Allen Pais
2023-01-11 17:28 ` Justin Forbes
2023-01-11 18:55 ` Conor Dooley
2023-01-12  0:40 ` Guenter Roeck
2023-01-12  2:04 ` Bagas Sanjaya
2023-01-12  3:02 ` Kelsey Steele

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=20230110180021.136442646@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=kadlec@netfilter.org \
    --cc=pablo@netfilter.org \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=syzbot+9204e7399656300bf271@syzkaller.appspotmail.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).