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, Wen Gu <guwen@linux.alibaba.com>,
	Alexandra Winter <wintera@linux.ibm.com>,
	"David S. Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.6 038/356] net/smc: compatible with 128-bits extended GID of virtual ISM device
Date: Thu, 12 Dec 2024 15:55:57 +0100	[thread overview]
Message-ID: <20241212144246.132397959@linuxfoundation.org> (raw)
In-Reply-To: <20241212144244.601729511@linuxfoundation.org>

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

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

From: Wen Gu <guwen@linux.alibaba.com>

[ Upstream commit b40584d145700addc70cc29e4f0850a4ed955b1c ]

According to virtual ISM support feature defined by SMCv2.1, GIDs of
virtual ISM device are UUIDs defined by RFC4122, which are 128-bits
long. So some adaptation work is required. And note that the GIDs of
existing platform firmware ISM devices still remain 64-bits long.

Signed-off-by: Wen Gu <guwen@linux.alibaba.com>
Reviewed-by: Alexandra Winter <wintera@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: 0541db8ee32c ("net/smc: initialize close_work early to avoid warning")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/s390/net/ism_drv.c | 19 ++++++-----
 include/net/smc.h          | 15 ++++++---
 net/smc/af_smc.c           | 66 ++++++++++++++++++++++++++++++--------
 net/smc/smc.h              |  3 --
 net/smc/smc_clc.c          | 43 ++++++++++++++++++-------
 net/smc/smc_clc.h          | 10 ++++--
 net/smc/smc_core.c         | 31 ++++++++++++------
 net/smc/smc_core.h         | 17 +++++++---
 net/smc/smc_diag.c         |  7 ++--
 net/smc/smc_ism.c          | 17 ++++++----
 net/smc/smc_ism.h          |  3 +-
 net/smc/smc_pnet.c         |  4 +--
 12 files changed, 167 insertions(+), 68 deletions(-)

diff --git a/drivers/s390/net/ism_drv.c b/drivers/s390/net/ism_drv.c
index 622a61f8a3b84..f6a0626a6b3ec 100644
--- a/drivers/s390/net/ism_drv.c
+++ b/drivers/s390/net/ism_drv.c
@@ -762,10 +762,10 @@ static int ism_query_rgid(struct ism_dev *ism, u64 rgid, u32 vid_valid,
 	return ism_cmd(ism, &cmd);
 }
 
-static int smcd_query_rgid(struct smcd_dev *smcd, u64 rgid, u32 vid_valid,
-			   u32 vid)
+static int smcd_query_rgid(struct smcd_dev *smcd, struct smcd_gid *rgid,
+			   u32 vid_valid, u32 vid)
 {
-	return ism_query_rgid(smcd->priv, rgid, vid_valid, vid);
+	return ism_query_rgid(smcd->priv, rgid->gid, vid_valid, vid);
 }
 
 static int smcd_register_dmb(struct smcd_dev *smcd, struct smcd_dmb *dmb,
@@ -816,10 +816,11 @@ static int ism_signal_ieq(struct ism_dev *ism, u64 rgid, u32 trigger_irq,
 	return ism_cmd(ism, &cmd);
 }
 
-static int smcd_signal_ieq(struct smcd_dev *smcd, u64 rgid, u32 trigger_irq,
-			   u32 event_code, u64 info)
+static int smcd_signal_ieq(struct smcd_dev *smcd, struct smcd_gid *rgid,
+			   u32 trigger_irq, u32 event_code, u64 info)
 {
-	return ism_signal_ieq(smcd->priv, rgid, trigger_irq, event_code, info);
+	return ism_signal_ieq(smcd->priv, rgid->gid,
+			      trigger_irq, event_code, info);
 }
 
 static int smcd_move(struct smcd_dev *smcd, u64 dmb_tok, unsigned int idx,
@@ -840,9 +841,11 @@ static u64 ism_get_local_gid(struct ism_dev *ism)
 	return ism->local_gid;
 }
 
-static u64 smcd_get_local_gid(struct smcd_dev *smcd)
+static void smcd_get_local_gid(struct smcd_dev *smcd,
+			       struct smcd_gid *smcd_gid)
 {
-	return ism_get_local_gid(smcd->priv);
+	smcd_gid->gid = ism_get_local_gid(smcd->priv);
+	smcd_gid->gid_ext = 0;
 }
 
 static u16 ism_get_chid(struct ism_dev *ism)
diff --git a/include/net/smc.h b/include/net/smc.h
index a002552be29c3..a0dc1187e96ed 100644
--- a/include/net/smc.h
+++ b/include/net/smc.h
@@ -52,9 +52,14 @@ struct smcd_dmb {
 struct smcd_dev;
 struct ism_client;
 
+struct smcd_gid {
+	u64	gid;
+	u64	gid_ext;
+};
+
 struct smcd_ops {
-	int (*query_remote_gid)(struct smcd_dev *dev, u64 rgid, u32 vid_valid,
-				u32 vid);
+	int (*query_remote_gid)(struct smcd_dev *dev, struct smcd_gid *rgid,
+				u32 vid_valid, u32 vid);
 	int (*register_dmb)(struct smcd_dev *dev, struct smcd_dmb *dmb,
 			    struct ism_client *client);
 	int (*unregister_dmb)(struct smcd_dev *dev, struct smcd_dmb *dmb);
@@ -62,14 +67,14 @@ struct smcd_ops {
 	int (*del_vlan_id)(struct smcd_dev *dev, u64 vlan_id);
 	int (*set_vlan_required)(struct smcd_dev *dev);
 	int (*reset_vlan_required)(struct smcd_dev *dev);
-	int (*signal_event)(struct smcd_dev *dev, u64 rgid, u32 trigger_irq,
-			    u32 event_code, u64 info);
+	int (*signal_event)(struct smcd_dev *dev, struct smcd_gid *rgid,
+			    u32 trigger_irq, u32 event_code, u64 info);
 	int (*move_data)(struct smcd_dev *dev, u64 dmb_tok, unsigned int idx,
 			 bool sf, unsigned int offset, void *data,
 			 unsigned int size);
 	int (*supports_v2)(void);
 	u8* (*get_system_eid)(void);
-	u64 (*get_local_gid)(struct smcd_dev *dev);
+	void (*get_local_gid)(struct smcd_dev *dev, struct smcd_gid *gid);
 	u16 (*get_chid)(struct smcd_dev *dev);
 	struct device* (*get_dev)(struct smcd_dev *dev);
 };
diff --git a/net/smc/af_smc.c b/net/smc/af_smc.c
index ea24fb4dae0df..f3ed53ae849d3 100644
--- a/net/smc/af_smc.c
+++ b/net/smc/af_smc.c
@@ -1026,7 +1026,8 @@ static int smc_find_ism_v2_device_clnt(struct smc_sock *smc,
 {
 	int rc = SMC_CLC_DECL_NOSMCDDEV;
 	struct smcd_dev *smcd;
-	int i = 1;
+	int i = 1, entry = 1;
+	bool is_virtual;
 	u16 chid;
 
 	if (smcd_indicated(ini->smc_type_v1))
@@ -1038,14 +1039,23 @@ static int smc_find_ism_v2_device_clnt(struct smc_sock *smc,
 		chid = smc_ism_get_chid(smcd);
 		if (!smc_find_ism_v2_is_unique_chid(chid, ini, i))
 			continue;
+		is_virtual = __smc_ism_is_virtual(chid);
 		if (!smc_pnet_is_pnetid_set(smcd->pnetid) ||
 		    smc_pnet_is_ndev_pnetid(sock_net(&smc->sk), smcd->pnetid)) {
+			if (is_virtual && entry == SMCD_CLC_MAX_V2_GID_ENTRIES)
+				/* It's the last GID-CHID entry left in CLC
+				 * Proposal SMC-Dv2 extension, but a virtual
+				 * ISM device will take two entries. So give
+				 * up it and try the next potential ISM device.
+				 */
+				continue;
 			ini->ism_dev[i] = smcd;
 			ini->ism_chid[i] = chid;
 			ini->is_smcd = true;
 			rc = 0;
 			i++;
-			if (i > SMC_MAX_ISM_DEVS)
+			entry = is_virtual ? entry + 2 : entry + 1;
+			if (entry > SMCD_CLC_MAX_V2_GID_ENTRIES)
 				break;
 		}
 	}
@@ -1384,8 +1394,13 @@ static int smc_connect_ism(struct smc_sock *smc,
 		rc = smc_v2_determine_accepted_chid(aclc, ini);
 		if (rc)
 			return rc;
+
+		if (__smc_ism_is_virtual(ini->ism_chid[ini->ism_selected]))
+			ini->ism_peer_gid[ini->ism_selected].gid_ext =
+						ntohll(aclc->d1.gid_ext);
+		/* for non-virtual ISM devices, peer gid_ext remains 0. */
 	}
-	ini->ism_peer_gid[ini->ism_selected] = ntohll(aclc->d0.gid);
+	ini->ism_peer_gid[ini->ism_selected].gid = ntohll(aclc->d0.gid);
 
 	/* there is only one lgr role for SMC-D; use server lock */
 	mutex_lock(&smc_server_lgr_pending);
@@ -2070,7 +2085,8 @@ static bool smc_is_already_selected(struct smcd_dev *smcd,
 
 /* check for ISM devices matching proposed ISM devices */
 static void smc_check_ism_v2_match(struct smc_init_info *ini,
-				   u16 proposed_chid, u64 proposed_gid,
+				   u16 proposed_chid,
+				   struct smcd_gid *proposed_gid,
 				   unsigned int *matches)
 {
 	struct smcd_dev *smcd;
@@ -2082,7 +2098,11 @@ static void smc_check_ism_v2_match(struct smc_init_info *ini,
 			continue;
 		if (smc_ism_get_chid(smcd) == proposed_chid &&
 		    !smc_ism_cantalk(proposed_gid, ISM_RESERVED_VLANID, smcd)) {
-			ini->ism_peer_gid[*matches] = proposed_gid;
+			ini->ism_peer_gid[*matches].gid = proposed_gid->gid;
+			if (__smc_ism_is_virtual(proposed_chid))
+				ini->ism_peer_gid[*matches].gid_ext =
+							proposed_gid->gid_ext;
+				/* non-virtual ISM's peer gid_ext remains 0. */
 			ini->ism_dev[*matches] = smcd;
 			(*matches)++;
 			break;
@@ -2104,9 +2124,11 @@ static void smc_find_ism_v2_device_serv(struct smc_sock *new_smc,
 	struct smc_clc_v2_extension *smc_v2_ext;
 	struct smc_clc_msg_smcd *pclc_smcd;
 	unsigned int matches = 0;
+	struct smcd_gid smcd_gid;
 	u8 smcd_version;
 	u8 *eid = NULL;
 	int i, rc;
+	u16 chid;
 
 	if (!(ini->smcd_version & SMC_V2) || !smcd_indicated(ini->smc_type_v2))
 		goto not_found;
@@ -2116,18 +2138,35 @@ static void smc_find_ism_v2_device_serv(struct smc_sock *new_smc,
 	smcd_v2_ext = smc_get_clc_smcd_v2_ext(smc_v2_ext);
 
 	mutex_lock(&smcd_dev_list.mutex);
-	if (pclc_smcd->ism.chid)
+	if (pclc_smcd->ism.chid) {
 		/* check for ISM device matching proposed native ISM device */
+		smcd_gid.gid = ntohll(pclc_smcd->ism.gid);
+		smcd_gid.gid_ext = 0;
 		smc_check_ism_v2_match(ini, ntohs(pclc_smcd->ism.chid),
-				       ntohll(pclc_smcd->ism.gid), &matches);
-	for (i = 1; i <= smc_v2_ext->hdr.ism_gid_cnt; i++) {
+				       &smcd_gid, &matches);
+	}
+	for (i = 0; i < smc_v2_ext->hdr.ism_gid_cnt; i++) {
 		/* check for ISM devices matching proposed non-native ISM
 		 * devices
 		 */
-		smc_check_ism_v2_match(ini,
-				       ntohs(smcd_v2_ext->gidchid[i - 1].chid),
-				       ntohll(smcd_v2_ext->gidchid[i - 1].gid),
-				       &matches);
+		smcd_gid.gid = ntohll(smcd_v2_ext->gidchid[i].gid);
+		smcd_gid.gid_ext = 0;
+		chid = ntohs(smcd_v2_ext->gidchid[i].chid);
+		if (__smc_ism_is_virtual(chid)) {
+			if ((i + 1) == smc_v2_ext->hdr.ism_gid_cnt ||
+			    chid != ntohs(smcd_v2_ext->gidchid[i + 1].chid))
+				/* each virtual ISM device takes two GID-CHID
+				 * entries and CHID of the second entry repeats
+				 * that of the first entry.
+				 *
+				 * So check if the next GID-CHID entry exists
+				 * and both two entries' CHIDs are the same.
+				 */
+				continue;
+			smcd_gid.gid_ext =
+				ntohll(smcd_v2_ext->gidchid[++i].gid);
+		}
+		smc_check_ism_v2_match(ini, chid, &smcd_gid, &matches);
 	}
 	mutex_unlock(&smcd_dev_list.mutex);
 
@@ -2176,7 +2215,8 @@ static void smc_find_ism_v1_device_serv(struct smc_sock *new_smc,
 	if (!(ini->smcd_version & SMC_V1) || !smcd_indicated(ini->smc_type_v1))
 		goto not_found;
 	ini->is_smcd = true; /* prepare ISM check */
-	ini->ism_peer_gid[0] = ntohll(pclc_smcd->ism.gid);
+	ini->ism_peer_gid[0].gid = ntohll(pclc_smcd->ism.gid);
+	ini->ism_peer_gid[0].gid_ext = 0;
 	rc = smc_find_ism_device(new_smc, ini);
 	if (rc)
 		goto not_found;
diff --git a/net/smc/smc.h b/net/smc/smc.h
index e377980b84145..e0afef7a786f8 100644
--- a/net/smc/smc.h
+++ b/net/smc/smc.h
@@ -29,9 +29,6 @@
 #define SMCPROTO_SMC		0	/* SMC protocol, IPv4 */
 #define SMCPROTO_SMC6		1	/* SMC protocol, IPv6 */
 
-#define SMC_MAX_ISM_DEVS	8	/* max # of proposed non-native ISM
-					 * devices
-					 */
 #define SMC_AUTOCORKING_DEFAULT_SIZE	0x10000	/* 64K by default */
 
 extern struct proto smc_proto;
diff --git a/net/smc/smc_clc.c b/net/smc/smc_clc.c
index a28dee81d6fa4..0084960a203dc 100644
--- a/net/smc/smc_clc.c
+++ b/net/smc/smc_clc.c
@@ -891,11 +891,13 @@ int smc_clc_send_proposal(struct smc_sock *smc, struct smc_init_info *ini)
 		       ETH_ALEN);
 	}
 	if (smcd_indicated(ini->smc_type_v1)) {
+		struct smcd_gid smcd_gid;
+
 		/* add SMC-D specifics */
 		if (ini->ism_dev[0]) {
 			smcd = ini->ism_dev[0];
-			pclc_smcd->ism.gid =
-				htonll(smcd->ops->get_local_gid(smcd));
+			smcd->ops->get_local_gid(smcd, &smcd_gid);
+			pclc_smcd->ism.gid = htonll(smcd_gid.gid);
 			pclc_smcd->ism.chid =
 				htons(smc_ism_get_chid(ini->ism_dev[0]));
 		}
@@ -927,10 +929,11 @@ int smc_clc_send_proposal(struct smc_sock *smc, struct smc_init_info *ini)
 		read_unlock(&smc_clc_eid_table.lock);
 	}
 	if (smcd_indicated(ini->smc_type_v2)) {
+		struct smcd_gid smcd_gid;
 		u8 *eid = NULL;
+		int entry = 0;
 
 		v2_ext->hdr.flag.seid = smc_clc_eid_table.seid_enabled;
-		v2_ext->hdr.ism_gid_cnt = ini->ism_offered_cnt;
 		v2_ext->hdr.smcd_v2_ext_offset = htons(sizeof(*v2_ext) -
 				offsetofend(struct smc_clnt_opts_area_hdr,
 					    smcd_v2_ext_offset) +
@@ -942,14 +945,26 @@ int smc_clc_send_proposal(struct smc_sock *smc, struct smc_init_info *ini)
 		if (ini->ism_offered_cnt) {
 			for (i = 1; i <= ini->ism_offered_cnt; i++) {
 				smcd = ini->ism_dev[i];
-				gidchids[i - 1].gid =
-					htonll(smcd->ops->get_local_gid(smcd));
-				gidchids[i - 1].chid =
+				smcd->ops->get_local_gid(smcd, &smcd_gid);
+				gidchids[entry].chid =
 					htons(smc_ism_get_chid(ini->ism_dev[i]));
+				gidchids[entry].gid = htonll(smcd_gid.gid);
+				if (smc_ism_is_virtual(smcd)) {
+					/* a virtual ISM device takes two
+					 * entries. CHID of the second entry
+					 * repeats that of the first entry.
+					 */
+					gidchids[entry + 1].chid =
+						gidchids[entry].chid;
+					gidchids[entry + 1].gid =
+						htonll(smcd_gid.gid_ext);
+					entry++;
+				}
+				entry++;
 			}
-			plen += ini->ism_offered_cnt *
-				sizeof(struct smc_clc_smcd_gid_chid);
+			plen += entry * sizeof(struct smc_clc_smcd_gid_chid);
 		}
+		v2_ext->hdr.ism_gid_cnt = entry;
 	}
 	if (smcr_indicated(ini->smc_type_v2)) {
 		memcpy(v2_ext->roce, ini->smcrv2.ib_gid_v2, SMC_GID_SIZE);
@@ -985,7 +1000,7 @@ int smc_clc_send_proposal(struct smc_sock *smc, struct smc_init_info *ini)
 			vec[i++].iov_len = sizeof(*smcd_v2_ext);
 			if (ini->ism_offered_cnt) {
 				vec[i].iov_base = gidchids;
-				vec[i++].iov_len = ini->ism_offered_cnt *
+				vec[i++].iov_len = v2_ext->hdr.ism_gid_cnt *
 					sizeof(struct smc_clc_smcd_gid_chid);
 			}
 		}
@@ -1016,13 +1031,16 @@ smcd_clc_prep_confirm_accept(struct smc_connection *conn,
 			     struct smc_clc_msg_trail *trl)
 {
 	struct smcd_dev *smcd = conn->lgr->smcd;
+	struct smcd_gid smcd_gid;
+	u16 chid;
 	int len;
 
 	/* SMC-D specific settings */
 	memcpy(clc->hdr.eyecatcher, SMCD_EYECATCHER,
 	       sizeof(SMCD_EYECATCHER));
+	smcd->ops->get_local_gid(smcd, &smcd_gid);
 	clc->hdr.typev1 = SMC_TYPE_D;
-	clc->d0.gid = htonll(smcd->ops->get_local_gid(smcd));
+	clc->d0.gid = htonll(smcd_gid.gid);
 	clc->d0.token = htonll(conn->rmb_desc->token);
 	clc->d0.dmbe_size = conn->rmbe_size_comp;
 	clc->d0.dmbe_idx = 0;
@@ -1030,9 +1048,12 @@ smcd_clc_prep_confirm_accept(struct smc_connection *conn,
 	if (version == SMC_V1) {
 		clc->hdr.length = htons(SMCD_CLC_ACCEPT_CONFIRM_LEN);
 	} else {
-		clc->d1.chid = htons(smc_ism_get_chid(smcd));
+		chid = smc_ism_get_chid(smcd);
+		clc->d1.chid = htons(chid);
 		if (eid && eid[0])
 			memcpy(clc->d1.eid, eid, SMC_MAX_EID_LEN);
+		if (__smc_ism_is_virtual(chid))
+			clc->d1.gid_ext = htonll(smcd_gid.gid_ext);
 		len = SMCD_CLC_ACCEPT_CONFIRM_LEN_V2;
 		if (first_contact) {
 			*fce_len = smc_clc_fill_fce_v2x(fce_v2x, ini);
diff --git a/net/smc/smc_clc.h b/net/smc/smc_clc.h
index d7b1716cfb0fd..c8d6282ec9c04 100644
--- a/net/smc/smc_clc.h
+++ b/net/smc/smc_clc.h
@@ -171,6 +171,11 @@ struct smc_clc_msg_proposal {	/* clc proposal message sent by Linux */
 
 #define SMC_CLC_MAX_V6_PREFIX		8
 #define SMC_CLC_MAX_UEID		8
+#define SMCD_CLC_MAX_V2_GID_ENTRIES	8 /* max # of CHID-GID entries in CLC
+					   * proposal SMC-Dv2 extension.
+					   * each ISM device takes one entry and
+					   * each virtual ISM takes two entries.
+					   */
 
 struct smc_clc_msg_proposal_area {
 	struct smc_clc_msg_proposal		pclc_base;
@@ -180,7 +185,8 @@ struct smc_clc_msg_proposal_area {
 	struct smc_clc_v2_extension		pclc_v2_ext;
 	u8			user_eids[SMC_CLC_MAX_UEID][SMC_MAX_EID_LEN];
 	struct smc_clc_smcd_v2_extension	pclc_smcd_v2_ext;
-	struct smc_clc_smcd_gid_chid		pclc_gidchids[SMC_MAX_ISM_DEVS];
+	struct smc_clc_smcd_gid_chid
+				pclc_gidchids[SMCD_CLC_MAX_V2_GID_ENTRIES];
 	struct smc_clc_msg_trail		pclc_trl;
 };
 
@@ -271,7 +277,7 @@ struct smc_clc_msg_accept_confirm {	/* clc accept / confirm message */
 			struct { /* v2 only, but 12 bytes reserved in v1 */
 				__be16 chid;
 				u8 eid[SMC_MAX_EID_LEN];
-				u8 reserved5[8];
+				__be64 gid_ext;
 			} __packed d1;
 		};
 	};
diff --git a/net/smc/smc_core.c b/net/smc/smc_core.c
index f99bb9d0adcc6..605cdff671d65 100644
--- a/net/smc/smc_core.c
+++ b/net/smc/smc_core.c
@@ -506,6 +506,7 @@ static int smc_nl_fill_smcd_lgr(struct smc_link_group *lgr,
 {
 	char smc_pnet[SMC_MAX_PNETID_LEN + 1];
 	struct smcd_dev *smcd = lgr->smcd;
+	struct smcd_gid smcd_gid;
 	struct nlattr *attrs;
 	void *nlh;
 
@@ -521,11 +522,11 @@ static int smc_nl_fill_smcd_lgr(struct smc_link_group *lgr,
 
 	if (nla_put_u32(skb, SMC_NLA_LGR_D_ID, *((u32 *)&lgr->id)))
 		goto errattr;
+	smcd->ops->get_local_gid(smcd, &smcd_gid);
 	if (nla_put_u64_64bit(skb, SMC_NLA_LGR_D_GID,
-			      smcd->ops->get_local_gid(smcd),
-				  SMC_NLA_LGR_D_PAD))
+			      smcd_gid.gid, SMC_NLA_LGR_D_PAD))
 		goto errattr;
-	if (nla_put_u64_64bit(skb, SMC_NLA_LGR_D_PEER_GID, lgr->peer_gid,
+	if (nla_put_u64_64bit(skb, SMC_NLA_LGR_D_PEER_GID, lgr->peer_gid.gid,
 			      SMC_NLA_LGR_D_PAD))
 		goto errattr;
 	if (nla_put_u8(skb, SMC_NLA_LGR_D_VLAN_ID, lgr->vlan_id))
@@ -876,7 +877,10 @@ static int smc_lgr_create(struct smc_sock *smc, struct smc_init_info *ini)
 		/* SMC-D specific settings */
 		smcd = ini->ism_dev[ini->ism_selected];
 		get_device(smcd->ops->get_dev(smcd));
-		lgr->peer_gid = ini->ism_peer_gid[ini->ism_selected];
+		lgr->peer_gid.gid =
+			ini->ism_peer_gid[ini->ism_selected].gid;
+		lgr->peer_gid.gid_ext =
+			ini->ism_peer_gid[ini->ism_selected].gid_ext;
 		lgr->smcd = ini->ism_dev[ini->ism_selected];
 		lgr_list = &ini->ism_dev[ini->ism_selected]->lgr_list;
 		lgr_lock = &lgr->smcd->lgr_lock;
@@ -1514,7 +1518,8 @@ void smc_lgr_terminate_sched(struct smc_link_group *lgr)
 }
 
 /* Called when peer lgr shutdown (regularly or abnormally) is received */
-void smc_smcd_terminate(struct smcd_dev *dev, u64 peer_gid, unsigned short vlan)
+void smc_smcd_terminate(struct smcd_dev *dev, struct smcd_gid *peer_gid,
+			unsigned short vlan)
 {
 	struct smc_link_group *lgr, *l;
 	LIST_HEAD(lgr_free_list);
@@ -1522,9 +1527,12 @@ void smc_smcd_terminate(struct smcd_dev *dev, u64 peer_gid, unsigned short vlan)
 	/* run common cleanup function and build free list */
 	spin_lock_bh(&dev->lgr_lock);
 	list_for_each_entry_safe(lgr, l, &dev->lgr_list, list) {
-		if ((!peer_gid || lgr->peer_gid == peer_gid) &&
+		if ((!peer_gid->gid ||
+		     (lgr->peer_gid.gid == peer_gid->gid &&
+		      !smc_ism_is_virtual(dev) ? 1 :
+		      lgr->peer_gid.gid_ext == peer_gid->gid_ext)) &&
 		    (vlan == VLAN_VID_MASK || lgr->vlan_id == vlan)) {
-			if (peer_gid) /* peer triggered termination */
+			if (peer_gid->gid) /* peer triggered termination */
 				lgr->peer_shutdown = 1;
 			list_move(&lgr->list, &lgr_free_list);
 			lgr->freeing = 1;
@@ -1860,9 +1868,12 @@ static bool smcr_lgr_match(struct smc_link_group *lgr, u8 smcr_version,
 }
 
 static bool smcd_lgr_match(struct smc_link_group *lgr,
-			   struct smcd_dev *smcismdev, u64 peer_gid)
+			   struct smcd_dev *smcismdev,
+			   struct smcd_gid *peer_gid)
 {
-	return lgr->peer_gid == peer_gid && lgr->smcd == smcismdev;
+	return lgr->peer_gid.gid == peer_gid->gid && lgr->smcd == smcismdev &&
+		smc_ism_is_virtual(smcismdev) ?
+		(lgr->peer_gid.gid_ext == peer_gid->gid_ext) : 1;
 }
 
 /* create a new SMC connection (and a new link group if necessary) */
@@ -1892,7 +1903,7 @@ int smc_conn_create(struct smc_sock *smc, struct smc_init_info *ini)
 		write_lock_bh(&lgr->conns_lock);
 		if ((ini->is_smcd ?
 		     smcd_lgr_match(lgr, ini->ism_dev[ini->ism_selected],
-				    ini->ism_peer_gid[ini->ism_selected]) :
+				    &ini->ism_peer_gid[ini->ism_selected]) :
 		     smcr_lgr_match(lgr, ini->smcr_version,
 				    ini->peer_systemid,
 				    ini->peer_gid, ini->peer_mac, role,
diff --git a/net/smc/smc_core.h b/net/smc/smc_core.h
index 120027d404692..670f8359da558 100644
--- a/net/smc/smc_core.h
+++ b/net/smc/smc_core.h
@@ -17,9 +17,11 @@
 #include <linux/pci.h>
 #include <rdma/ib_verbs.h>
 #include <net/genetlink.h>
+#include <net/smc.h>
 
 #include "smc.h"
 #include "smc_ib.h"
+#include "smc_clc.h"
 
 #define SMC_RMBS_PER_LGR_MAX	255	/* max. # of RMBs per link group */
 #define SMC_CONN_PER_LGR_MIN	16	/* min. # of connections per link group */
@@ -355,7 +357,7 @@ struct smc_link_group {
 						/* max links can be added in lgr */
 		};
 		struct { /* SMC-D */
-			u64			peer_gid;
+			struct smcd_gid		peer_gid;
 						/* Peer GID (remote) */
 			struct smcd_dev		*smcd;
 						/* ISM device for VLAN reg. */
@@ -392,6 +394,11 @@ struct smc_init_info_smcrv2 {
 	struct smc_gidlist	gidlist;
 };
 
+#define SMC_MAX_V2_ISM_DEVS	SMCD_CLC_MAX_V2_GID_ENTRIES
+				/* max # of proposed non-native ISM devices,
+				 * which can't exceed the max # of CHID-GID
+				 * entries in CLC proposal SMC-Dv2 extension.
+				 */
 struct smc_init_info {
 	u8			is_smcd;
 	u8			smc_type_v1;
@@ -416,9 +423,9 @@ struct smc_init_info {
 	u32			ib_clcqpn;
 	struct smc_init_info_smcrv2 smcrv2;
 	/* SMC-D */
-	u64			ism_peer_gid[SMC_MAX_ISM_DEVS + 1];
-	struct smcd_dev		*ism_dev[SMC_MAX_ISM_DEVS + 1];
-	u16			ism_chid[SMC_MAX_ISM_DEVS + 1];
+	struct smcd_gid		ism_peer_gid[SMC_MAX_V2_ISM_DEVS + 1];
+	struct smcd_dev		*ism_dev[SMC_MAX_V2_ISM_DEVS + 1];
+	u16			ism_chid[SMC_MAX_V2_ISM_DEVS + 1];
 	u8			ism_offered_cnt; /* # of ISM devices offered */
 	u8			ism_selected;    /* index of selected ISM dev*/
 	u8			smcd_version;
@@ -544,7 +551,7 @@ void smc_lgr_hold(struct smc_link_group *lgr);
 void smc_lgr_put(struct smc_link_group *lgr);
 void smcr_port_add(struct smc_ib_device *smcibdev, u8 ibport);
 void smcr_port_err(struct smc_ib_device *smcibdev, u8 ibport);
-void smc_smcd_terminate(struct smcd_dev *dev, u64 peer_gid,
+void smc_smcd_terminate(struct smcd_dev *dev, struct smcd_gid *peer_gid,
 			unsigned short vlan);
 void smc_smcd_terminate_all(struct smcd_dev *dev);
 void smc_smcr_terminate_all(struct smc_ib_device *smcibdev);
diff --git a/net/smc/smc_diag.c b/net/smc/smc_diag.c
index d58c699b5328a..086e48b3cdea6 100644
--- a/net/smc/smc_diag.c
+++ b/net/smc/smc_diag.c
@@ -21,6 +21,7 @@
 
 #include "smc.h"
 #include "smc_core.h"
+#include "smc_ism.h"
 
 struct smc_diag_dump_ctx {
 	int pos[2];
@@ -167,12 +168,14 @@ static int __smc_diag_dump(struct sock *sk, struct sk_buff *skb,
 		struct smc_connection *conn = &smc->conn;
 		struct smcd_diag_dmbinfo dinfo;
 		struct smcd_dev *smcd = conn->lgr->smcd;
+		struct smcd_gid smcd_gid;
 
 		memset(&dinfo, 0, sizeof(dinfo));
 
 		dinfo.linkid = *((u32 *)conn->lgr->id);
-		dinfo.peer_gid = conn->lgr->peer_gid;
-		dinfo.my_gid = smcd->ops->get_local_gid(smcd);
+		dinfo.peer_gid = conn->lgr->peer_gid.gid;
+		smcd->ops->get_local_gid(smcd, &smcd_gid);
+		dinfo.my_gid = smcd_gid.gid;
 		dinfo.token = conn->rmb_desc->token;
 		dinfo.peer_token = conn->peer_token;
 
diff --git a/net/smc/smc_ism.c b/net/smc/smc_ism.c
index fbee2493091f1..a33f861cf7c19 100644
--- a/net/smc/smc_ism.c
+++ b/net/smc/smc_ism.c
@@ -44,7 +44,8 @@ static struct ism_client smc_ism_client = {
 #endif
 
 /* Test if an ISM communication is possible - same CPC */
-int smc_ism_cantalk(u64 peer_gid, unsigned short vlan_id, struct smcd_dev *smcd)
+int smc_ism_cantalk(struct smcd_gid *peer_gid, unsigned short vlan_id,
+		    struct smcd_dev *smcd)
 {
 	return smcd->ops->query_remote_gid(smcd, peer_gid, vlan_id ? 1 : 0,
 					   vlan_id);
@@ -208,7 +209,7 @@ int smc_ism_register_dmb(struct smc_link_group *lgr, int dmb_len,
 	dmb.dmb_len = dmb_len;
 	dmb.sba_idx = dmb_desc->sba_idx;
 	dmb.vlan_id = lgr->vlan_id;
-	dmb.rgid = lgr->peer_gid;
+	dmb.rgid = lgr->peer_gid.gid;
 	rc = lgr->smcd->ops->register_dmb(lgr->smcd, &dmb, &smc_ism_client);
 	if (!rc) {
 		dmb_desc->sba_idx = dmb.sba_idx;
@@ -340,18 +341,20 @@ union smcd_sw_event_info {
 
 static void smcd_handle_sw_event(struct smc_ism_event_work *wrk)
 {
+	struct smcd_gid peer_gid = { .gid = wrk->event.tok,
+				     .gid_ext = 0 };
 	union smcd_sw_event_info ev_info;
 
 	ev_info.info = wrk->event.info;
 	switch (wrk->event.code) {
 	case ISM_EVENT_CODE_SHUTDOWN:	/* Peer shut down DMBs */
-		smc_smcd_terminate(wrk->smcd, wrk->event.tok, ev_info.vlan_id);
+		smc_smcd_terminate(wrk->smcd, &peer_gid, ev_info.vlan_id);
 		break;
 	case ISM_EVENT_CODE_TESTLINK:	/* Activity timer */
 		if (ev_info.code == ISM_EVENT_REQUEST) {
 			ev_info.code = ISM_EVENT_RESPONSE;
 			wrk->smcd->ops->signal_event(wrk->smcd,
-						     wrk->event.tok,
+						     &peer_gid,
 						     ISM_EVENT_REQUEST_IR,
 						     ISM_EVENT_CODE_TESTLINK,
 						     ev_info.info);
@@ -365,10 +368,12 @@ static void smc_ism_event_work(struct work_struct *work)
 {
 	struct smc_ism_event_work *wrk =
 		container_of(work, struct smc_ism_event_work, work);
+	struct smcd_gid smcd_gid = { .gid = wrk->event.tok,
+				     .gid_ext = 0 };
 
 	switch (wrk->event.type) {
 	case ISM_EVENT_GID:	/* GID event, token is peer GID */
-		smc_smcd_terminate(wrk->smcd, wrk->event.tok, VLAN_VID_MASK);
+		smc_smcd_terminate(wrk->smcd, &smcd_gid, VLAN_VID_MASK);
 		break;
 	case ISM_EVENT_DMB:
 		break;
@@ -525,7 +530,7 @@ int smc_ism_signal_shutdown(struct smc_link_group *lgr)
 	memcpy(ev_info.uid, lgr->id, SMC_LGR_ID_SIZE);
 	ev_info.vlan_id = lgr->vlan_id;
 	ev_info.code = ISM_EVENT_REQUEST;
-	rc = lgr->smcd->ops->signal_event(lgr->smcd, lgr->peer_gid,
+	rc = lgr->smcd->ops->signal_event(lgr->smcd, &lgr->peer_gid,
 					  ISM_EVENT_REQUEST_IR,
 					  ISM_EVENT_CODE_SHUTDOWN,
 					  ev_info.info);
diff --git a/net/smc/smc_ism.h b/net/smc/smc_ism.h
index d1228a615f23c..0e5e563099ec3 100644
--- a/net/smc/smc_ism.h
+++ b/net/smc/smc_ism.h
@@ -32,7 +32,8 @@ struct smc_ism_vlanid {			/* VLAN id set on ISM device */
 
 struct smcd_dev;
 
-int smc_ism_cantalk(u64 peer_gid, unsigned short vlan_id, struct smcd_dev *dev);
+int smc_ism_cantalk(struct smcd_gid *peer_gid, unsigned short vlan_id,
+		    struct smcd_dev *dev);
 void smc_ism_set_conn(struct smc_connection *conn);
 void smc_ism_unset_conn(struct smc_connection *conn);
 int smc_ism_get_vlan(struct smcd_dev *dev, unsigned short vlan_id);
diff --git a/net/smc/smc_pnet.c b/net/smc/smc_pnet.c
index 284cec1e20ec1..dbcc72b43d0c0 100644
--- a/net/smc/smc_pnet.c
+++ b/net/smc/smc_pnet.c
@@ -1113,8 +1113,8 @@ static void smc_pnet_find_ism_by_pnetid(struct net_device *ndev,
 	list_for_each_entry(ismdev, &smcd_dev_list.list, list) {
 		if (smc_pnet_match(ismdev->pnetid, ndev_pnetid) &&
 		    !ismdev->going_away &&
-		    (!ini->ism_peer_gid[0] ||
-		     !smc_ism_cantalk(ini->ism_peer_gid[0], ini->vlan_id,
+		    (!ini->ism_peer_gid[0].gid ||
+		     !smc_ism_cantalk(&ini->ism_peer_gid[0], ini->vlan_id,
 				      ismdev))) {
 			ini->ism_dev[0] = ismdev;
 			break;
-- 
2.43.0




  parent reply	other threads:[~2024-12-12 15:32 UTC|newest]

Thread overview: 370+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-12 14:55 [PATCH 6.6 000/356] 6.6.66-rc1 review Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 001/356] iTCO_wdt: mask NMI_NOW bit for update_no_reboot_bit() call Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 002/356] watchdog: xilinx_wwdt: Calculate max_hw_heartbeat_ms using clock frequency Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 003/356] watchdog: apple: Actually flush writes after requesting watchdog restart Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 004/356] watchdog: mediatek: Make sure system reset gets asserted in mtk_wdt_restart() Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 005/356] can: gs_usb: add VID/PID for Xylanta SAINT3 product family Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 006/356] can: gs_usb: add usb endpoint address detection at driver probe step Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 007/356] can: c_can: c_can_handle_bus_err(): update statistics if skb allocation fails Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 008/356] can: sun4i_can: sun4i_can_err(): call can_change_state() even if cf is NULL Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 009/356] can: hi311x: hi3110_can_ist(): fix potential use-after-free Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 010/356] can: m_can: m_can_handle_lec_err(): fix {rx,tx}_errors statistics Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 011/356] can: ifi_canfd: ifi_canfd_handle_lec_err(): " Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 012/356] can: hi311x: hi3110_can_ist(): " Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 013/356] can: sja1000: sja1000_err(): " Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 014/356] can: sun4i_can: sun4i_can_err(): " Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 015/356] can: ems_usb: ems_usb_rx_err(): " Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 016/356] can: f81604: f81604_handle_can_bus_errors(): " Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 017/356] ipvs: fix UB due to uninitialized stack access in ip_vs_protocol_init() Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 018/356] netfilter: x_tables: fix LED ID check in led_tg_check() Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 019/356] netfilter: nft_socket: remove WARN_ON_ONCE on maximum cgroup level Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 020/356] selftests: hid: fix typo and exit code Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 021/356] net: enetc: Do not configure preemptible TCs if SIs do not support Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 022/356] ptp: Add error handling for adjfine callback in ptp_clock_adjtime Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 023/356] net/sched: tbf: correct backlog statistic for GSO packets Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 024/356] net: hsr: avoid potential out-of-bound access in fill_frame_info() Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 025/356] can: j1939: j1939_session_new(): fix skb reference counting Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 026/356] platform/x86: asus-wmi: add support for vivobook fan profiles Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 027/356] platform/x86: asus-wmi: Fix inconsistent use of thermal policies Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 028/356] platform/x86: asus-wmi: Ignore return value when writing thermal policy Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 029/356] net-timestamp: make sk_tskey more predictable in error path Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 030/356] ipv6: introduce dst_rt6_info() helper Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 031/356] net/ipv6: release expired exception dst cached in socket Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 032/356] dccp: Fix memory leak in dccp_feat_change_recv Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 033/356] tipc: Fix use-after-free of kernel socket in cleanup_bearer() Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 034/356] net/smc: rename some fce to fce_v2x for clarity Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 035/356] net/smc: introduce sub-functions for smc_clc_send_confirm_accept() Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 036/356] net/smc: unify the structs of accept or confirm message for v1 and v2 Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 037/356] net/smc: define a reserved CHID range for virtual ISM devices Greg Kroah-Hartman
2024-12-12 14:55 ` Greg Kroah-Hartman [this message]
2024-12-12 14:55 ` [PATCH 6.6 039/356] net/smc: mark optional smcd_ops and check for support when called Greg Kroah-Hartman
2024-12-12 14:55 ` [PATCH 6.6 040/356] net/smc: add operations to merge sndbuf with peer DMB Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 041/356] net/smc: {at|de}tach sndbuf to peer DMB if supported Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 042/356] net/smc: refactoring initialization of smc sock Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 043/356] net/smc: initialize close_work early to avoid warning Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 044/356] net/smc: fix LGR and link use-after-free issue Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 045/356] net/qed: allow old cards not supporting "num_images" to work Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 046/356] ixgbevf: stop attempting IPSEC offload on Mailbox API 1.5 Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 047/356] ixgbe: downgrade logging of unsupported VF API version to debug Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 048/356] igb: Fix potential invalid memory access in igb_init_module() Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 049/356] netfilter: nft_inner: incorrect percpu area handling under softirq Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 050/356] net: sched: fix erspan_opt settings in cls_flower Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 051/356] netfilter: ipset: Hold module reference while requesting a module Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 052/356] netfilter: nft_set_hash: skip duplicated elements pending gc run Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 053/356] ethtool: Fix wrong mod state in case of verbose and no_mask bitset Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 054/356] mlxsw: Add ipv4_5 flex key Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 055/356] mlxsw: spectrum_acl_flex_keys: Add ipv4_5b " Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 056/356] mlxsw: Edit IPv6 key blocks to use one less block for multicast forwarding Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 057/356] mlxsw: Mark high entropy key blocks Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 058/356] mlxsw: spectrum_acl_flex_keys: Constify struct mlxsw_afk_element_inst Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 059/356] mlxsw: spectrum_acl_flex_keys: Use correct key block on Spectrum-4 Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 060/356] geneve: do not assume mac header is set in geneve_xmit_skb() Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 061/356] net/mlx5e: Remove workaround to avoid syndrome for internal port Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 062/356] net: avoid potential UAF in default_operstate() Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 063/356] KVM: arm64: Change kvm_handle_mmio_return() return polarity Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 064/356] KVM: arm64: Dont retire aborted MMIO instruction Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 065/356] xhci: Allow RPM on the USB controller (1022:43f7) by default Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 066/356] xhci: remove XHCI_TRUST_TX_LENGTH quirk Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 067/356] xhci: Combine two if statements for Etron xHCI host Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 068/356] xhci: Dont issue Reset Device command to " Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 069/356] xhci: Fix control transfer error on " Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 070/356] gpio: grgpio: use a helper variable to store the address of ofdev->dev Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 071/356] gpio: grgpio: Add NULL check in grgpio_probe Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 072/356] serial: amba-pl011: Use port lock wrappers Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 073/356] serial: amba-pl011: Fix RX stall when DMA is used Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 074/356] soc/fsl: cpm: qmc: Convert to platform remove callback returning void Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 075/356] soc: fsl: cpm1: qmc: Fix blank line and spaces Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 076/356] soc: fsl: cpm1: qmc: Re-order probe() operations Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 077/356] soc: fsl: cpm1: qmc: Introduce qmc_init_resource() and its CPM1 version Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 078/356] soc: fsl: cpm1: qmc: Introduce qmc_{init,exit}_xcc() and their " Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 079/356] soc: fsl: cpm1: qmc: Set the ret error code on platform_get_irq() failure Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 080/356] usb: dwc3: gadget: Rewrite endpoint allocation flow Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 081/356] usb: dwc3: ep0: Dont reset resource alloc flag (including ep0) Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 082/356] usb: dwc3: ep0: Dont clear ep0 DWC3_EP_TRANSFER_STARTED Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 083/356] mmc: mtk-sd: use devm_mmc_alloc_host Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 084/356] mmc: mtk-sd: Fix error handle of probe function Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 085/356] mmc: mtk-sd: fix devm_clk_get_optional usage Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 086/356] mmc: mtk-sd: Fix MMC_CAP2_CRYPTO flag setting Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 087/356] zram: split memory-tracking and ac-time tracking Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 088/356] zram: do not mark idle slots that cannot be idle Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 089/356] zram: clear IDLE flag in mark_idle() Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 090/356] iommu/arm-smmu: Defer probe of clients after smmu device bound Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 091/356] powerpc/vdso: Refactor CFLAGS for CVDSO build Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 092/356] powerpc/vdso: Drop -mstack-protector-guard flags in 32-bit files with clang Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 093/356] ntp: Remove invalid cast in time offset math Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 094/356] driver core: fw_devlink: Improve logs for cycle detection Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 095/356] driver core: Add FWLINK_FLAG_IGNORE to completely ignore a fwnode link Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 096/356] driver core: fw_devlink: Stop trying to optimize cycle detection logic Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 097/356] f2fs: fix to drop all discards after creating snapshot on lvm device Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 098/356] i3c: master: add enable(disable) hot join in sys entry Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 099/356] i3c: master: svc: add hot join support Greg Kroah-Hartman
2024-12-12 14:56 ` [PATCH 6.6 100/356] i3c: master: fix kernel-doc check warning Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 101/356] i3c: master: support to adjust first broadcast address speed Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 102/356] i3c: master: svc: use slow speed for first broadcast address Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 103/356] i3c: master: svc: Modify enabled_events bit 7:0 to act as IBI enable counter Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 104/356] i3c: master: Replace hard code 2 with macro I3C_ADDR_SLOT_STATUS_BITS Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 105/356] i3c: master: Extend address status bit to 4 and add I3C_ADDR_SLOT_EXT_DESIRED Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 106/356] i3c: master: Fix dynamic address leak when assigned-address is present Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 107/356] drm/bridge: it6505: update usleep_range for RC circuit charge time Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 108/356] drm/bridge: it6505: Fix inverted reset polarity Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 109/356] scsi: ufs: core: Always initialize the UIC done completion Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 110/356] scsi: ufs: core: Add ufshcd_send_bsg_uic_cmd() for UFS BSG Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 111/356] bpf, vsock: Fix poll() missing a queue Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 112/356] bpf, vsock: Invoke proto::close on close() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 113/356] xsk: always clear DMA mapping information when unmapping the pool Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 114/356] bpftool: fix potential NULL pointer dereferencing in prog_dump() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 115/356] drm/sti: Add __iomem for mixer_dbg_mxns parameter Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 116/356] tcp_bpf: Fix the sk_mem_uncharge logic in tcp_bpf_sendmsg Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 117/356] ALSA: seq: ump: Use automatic cleanup of kfree() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 118/356] ALSA: ump: Update substream name from assigned FB names Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 119/356] ALSA: seq: ump: Fix seq port updates per FB info notify Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 120/356] ALSA: usb-audio: Notify xrun for low-latency mode Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 121/356] tools: Override makefile ARCH variable if defined, but empty Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 122/356] spi: mpc52xx: Add cancel_work_sync before module remove Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 123/356] ASoC: SOF: ipc3-topology: Convert the topology pin index to ALH dai index Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 124/356] ASoC: SOF: ipc3-topology: fix resource leaks in sof_ipc3_widget_setup_comp_dai() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 125/356] bpf: Fix narrow scalar spill onto 64-bit spilled scalar slots Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 126/356] scsi: sg: Fix slab-use-after-free read in sg_release() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 127/356] scsi: scsi_debug: Fix hrtimer support for ndelay Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 128/356] ASoC: mediatek: mt8188-mt6359: Remove hardcoded dmic codec Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 129/356] drm/v3d: Enable Performance Counters before clearing them Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 130/356] ocfs2: free inode when ocfs2_get_init_inode() fails Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 131/356] scatterlist: fix incorrect func name in kernel-doc Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 132/356] iio: magnetometer: yas530: use signed integer type for clamp limits Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 133/356] bpf: Handle BPF_EXIST and BPF_NOEXIST for LPM trie Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 134/356] bpf: Remove unnecessary kfree(im_node) in lpm_trie_update_elem Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 135/356] bpf: Handle in-place update for full LPM trie correctly Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 136/356] bpf: Fix exact match conditions in trie_get_next_key() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 137/356] x86/CPU/AMD: WARN when setting EFER.AUTOIBRS if and only if the WRMSR fails Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 138/356] mm: page_alloc: move mlocked flag clearance into free_pages_prepare() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 139/356] HID: wacom: fix when get product name maybe null pointer Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 140/356] LoongArch: Add architecture specific huge_pte_clear() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 141/356] ksmbd: fix Out-of-Bounds Read in ksmbd_vfs_stream_read Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 142/356] ksmbd: fix Out-of-Bounds Write in ksmbd_vfs_stream_write Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 143/356] watchdog: rti: of: honor timeout-sec property Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 144/356] can: dev: can_set_termination(): allow sleeping GPIOs Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 145/356] can: mcp251xfd: mcp251xfd_get_tef_len(): work around erratum DS80000789E 6 Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 146/356] tracing: Fix cmp_entries_dup() to respect sort() comparison rules Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 147/356] arm64: Ensure bits ASID[15:8] are masked out when the kernel uses 8-bit ASIDs Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 148/356] arm64: ptrace: fix partial SETREGSET for NT_ARM_TAGGED_ADDR_CTRL Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 149/356] ALSA: usb-audio: add mixer mapping for Corsair HS80 Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 150/356] ALSA: hda/realtek: Enable mute and micmute LED on HP ProBook 430 G8 Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 151/356] ALSA: hda/realtek: Add support for Samsung Galaxy Book3 360 (NP730QFG) Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 152/356] scsi: qla2xxx: Fix abort in bsg timeout Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 153/356] scsi: qla2xxx: Fix NVMe and NPIV connect issue Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 154/356] scsi: qla2xxx: Supported speed displayed incorrectly for VPorts Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 155/356] scsi: qla2xxx: Fix use after free on unload Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 156/356] scsi: qla2xxx: Remove check req_sg_cnt should be equal to rsp_sg_cnt Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 157/356] scsi: ufs: core: sysfs: Prevent div by zero Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 158/356] scsi: ufs: core: Add missing post notify for power mode change Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 159/356] nilfs2: fix potential out-of-bounds memory access in nilfs_find_entry() Greg Kroah-Hartman
2024-12-12 14:57 ` [PATCH 6.6 160/356] fs/smb/client: avoid querying SMB2_OP_QUERY_WSL_EA for SMB3 POSIX Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 161/356] fs/smb/client: Implement new SMB3 POSIX type Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 162/356] fs/smb/client: cifs_prime_dcache() for SMB3 POSIX reparse points Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 163/356] smb3.1.1: fix posix mounts to older servers Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 164/356] bcache: revert replacing IS_ERR_OR_NULL with IS_ERR again Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 165/356] cacheinfo: Allocate memory during CPU hotplug if not done from the primary CPU Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 166/356] drm/dp_mst: Fix MST sideband message body length check Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 167/356] drm/dp_mst: Verify request type in the corresponding down message reply Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 168/356] drm/dp_mst: Fix resetting msg rx state after topology removal Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 169/356] drm/amdgpu/hdp5.2: do a posting read when flushing HDP Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 170/356] modpost: Add .irqentry.text to OTHER_SECTIONS Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 171/356] x86/kexec: Restore GDT on return from ::preserve_context kexec Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 172/356] bpf: fix OOB devmap writes when deleting elements Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 173/356] dma-buf: fix dma_fence_array_signaled v4 Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 174/356] dma-fence: Fix reference leak on fence merge failure path Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 175/356] dma-fence: Use kernels sort for merging fences Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 176/356] xsk: fix OOB map writes when deleting elements Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 177/356] regmap: detach regmap from dev on regmap_exit Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 178/356] mmc: sdhci-pci: Add DMI quirk for missing CD GPIO on Vexia Edu Atla 10 tablet Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 179/356] mmc: core: Further prevent card detect during shutdown Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 180/356] ocfs2: update seq_file index in ocfs2_dlm_seq_next Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 181/356] lib: stackinit: hide never-taken branch from compiler Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 182/356] kasan: make report_lock a raw spinlock Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 183/356] x86/mm: Add _PAGE_NOPTISHADOW bit to avoid updating userspace page tables Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 184/356] epoll: annotate racy check Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 185/356] kselftest/arm64: Log fp-stress child startup errors to stdout Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 186/356] s390/cpum_sf: Handle CPU hotplug remove during sampling Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 187/356] btrfs: dont take dev_replace rwsem on task already holding it Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 188/356] btrfs: avoid unnecessary device path update for the same device Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 189/356] btrfs: do not clear read-only when adding sprout device Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 190/356] kselftest/arm64: Dont leak pipe fds in pac.exec_sign_all() Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 191/356] kcsan: Turn report_filterlist_lock into a raw_spinlock Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 192/356] hwmon: (nct6775) Add 665-ACE/600M-CL to ASUS WMI monitoring list Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 193/356] ACPI: x86: Make UART skip quirks work on PCI UARTs without an UID Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 194/356] perf/x86/amd: Warn only on new bits set Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 195/356] spi: spi-fsl-lpspi: Adjust type of scldiv Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 196/356] HID: add per device quirk to force bind to hid-generic Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 197/356] media: uvcvideo: RealSense D421 Depth module metadata Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 198/356] media: uvcvideo: Add a quirk for the Kaiweets KTI-W02 infrared camera Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 199/356] media: cx231xx: Add support for Dexatek USB Video Grabber 1d19:6108 Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 200/356] mmc: core: Add SD card quirk for broken poweroff notification Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 201/356] mmc: sdhci-esdhc-imx: enable quirks SDHCI_QUIRK_NO_LED Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 202/356] soc: imx8m: Probe the SoC driver as platform driver Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 203/356] regmap: maple: Provide lockdep (sub)class for maple trees internal lock Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 204/356] selftests/resctrl: Protect against array overflow when reading strings Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 205/356] HID: magicmouse: Apple Magic Trackpad 2 USB-C driver support Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 206/356] drm/vc4: hdmi: Avoid log spam for audio start failure Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 207/356] drm/vc4: hvs: Set AXI panic modes for the HVS Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 208/356] drm: panel-orientation-quirks: Add quirk for AYA NEO 2 model Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 209/356] drm: panel-orientation-quirks: Add quirk for AYA NEO Founder edition Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 210/356] drm: panel-orientation-quirks: Add quirk for AYA NEO GEEK Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 211/356] drm/bridge: it6505: Enable module autoloading Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 212/356] drm/mcde: " Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 213/356] wifi: rtw89: check return value of ieee80211_probereq_get() for RNR Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 214/356] drm/radeon/r600_cs: Fix possible int overflow in r600_packet3_check() Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 215/356] dlm: fix possible lkb_resource null dereference Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 216/356] drm/display: Fix building with GCC 15 Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 217/356] ALSA: hda: Use own quirk lookup helper Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 218/356] ALSA: hda/conexant: Use the new codec SSID matching Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 219/356] r8169: dont apply UDP padding quirk on RTL8126A Greg Kroah-Hartman
2024-12-12 14:58 ` [PATCH 6.6 220/356] samples/bpf: Fix a resource leak Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 221/356] net: fec_mpc52xx_phy: Use %pa to format resource_size_t Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 222/356] net: ethernet: fs_enet: " Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 223/356] net/sched: cbs: Fix integer overflow in cbs_set_port_rate() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 224/356] af_packet: avoid erroring out after sock_init_data() in packet_create() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 225/356] Bluetooth: L2CAP: do not leave dangling sk pointer on error in l2cap_sock_create() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 226/356] Bluetooth: RFCOMM: avoid leaving dangling sk pointer in rfcomm_sock_alloc() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 227/356] net: af_can: do not leave a dangling sk pointer in can_create() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 228/356] net: ieee802154: do not leave a dangling sk pointer in ieee802154_create() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 229/356] net: inet: do not leave a dangling sk pointer in inet_create() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 230/356] net: inet6: do not leave a dangling sk pointer in inet6_create() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 231/356] wifi: ath5k: add PCI ID for SX76X Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 232/356] wifi: ath5k: add PCI ID for Arcadyan devices Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 233/356] fanotify: allow reporting errors on failure to open fd Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 234/356] drm/panel: simple: Add Microchip AC69T88A LVDS Display panel Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 235/356] net: sfp: change quirks for Alcatel Lucent G-010S-P Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 236/356] net: stmmac: Programming sequence for VLAN packets with split header Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 237/356] drm/sched: memset() job in drm_sched_job_init() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 238/356] drm/amdgpu: clear RB_OVERFLOW bit when enabling interrupts for vega20_ih Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 239/356] drm/amdgpu: Dereference the ATCS ACPI buffer Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 240/356] netlink: specs: Add missing bitset attrs to ethtool spec Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 241/356] drm/amdgpu: refine error handling in amdgpu_ttm_tt_pin_userptr Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 242/356] dma-debug: fix a possible deadlock on radix_lock Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 243/356] jfs: array-index-out-of-bounds fix in dtReadFirst Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 244/356] jfs: fix shift-out-of-bounds in dbSplit Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 245/356] jfs: fix array-index-out-of-bounds in jfs_readdir Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 246/356] jfs: add a check to prevent array-index-out-of-bounds in dbAdjTree Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 247/356] fsl/fman: Validate cell-index value obtained from Device Tree Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 248/356] drm/amdgpu: skip amdgpu_device_cache_pci_state under sriov Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 249/356] virtio-net: fix overflow inside virtnet_rq_alloc Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 250/356] ALSA: usb-audio: Make mic volume workarounds globally applicable Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 251/356] drm/amdgpu: set the right AMDGPU sg segment limitation Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 252/356] wifi: ipw2x00: libipw_rx_any(): fix bad alignment Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 253/356] wifi: brcmfmac: Fix oops due to NULL pointer dereference in brcmf_sdiod_sglist_rw() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 254/356] bpf: Call free_htab_elem() after htab_unlock_bucket() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 255/356] dsa: qca8k: Use nested lock to avoid splat Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 256/356] Bluetooth: btusb: Add RTL8852BE device 0489:e123 to device tables Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 257/356] Bluetooth: hci_core: Fix not checking skb length on hci_acldata_packet Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 258/356] Bluetooth: Add new quirks for ATS2851 Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 259/356] Bluetooth: Support " Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 260/356] Bluetooth: Set " Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 261/356] ASoC: hdmi-codec: reorder channel allocation list Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 262/356] rocker: fix link status detection in rocker_carrier_init() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 263/356] net/neighbor: clear error in case strict check is not set Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 264/356] netpoll: Use rcu_access_pointer() in __netpoll_setup Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 265/356] pinctrl: freescale: fix COMPILE_TEST error with PINCTRL_IMX_SCU Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 266/356] tracing/ftrace: disable preemption in syscall probe Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 267/356] tracing: Use atomic64_inc_return() in trace_clock_counter() Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 268/356] tools/rtla: fix collision with glibc sched_attr/sched_set_attr Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 269/356] rtla/timerlat: Make timerlat_top_cpu->*_count unsigned long long Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 270/356] scsi: hisi_sas: Add cond_resched() for no forced preemption model Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 271/356] pinmux: Use sequential access to access desc->pinmux data Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 272/356] scsi: ufs: core: Make DMA mask configuration more flexible Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 273/356] bpf: put bpf_links program when link is safe to be deallocated Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 274/356] scsi: lpfc: Call lpfc_sli4_queue_unset() in restart and rmmod paths Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 275/356] clk: qcom: rcg2: add clk_rcg2_shared_floor_ops Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 276/356] clk: qcom: rpmh: add support for SAR2130P Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 277/356] clk: qcom: tcsrcc-sm8550: add SAR2130P support Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 278/356] leds: class: Protect brightness_show() with led_cdev->led_access mutex Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 279/356] scsi: st: Dont modify unknown block number in MTIOCGET Greg Kroah-Hartman
2024-12-12 14:59 ` [PATCH 6.6 280/356] scsi: st: Add MTIOCGET and MTLOAD to ioctls allowed after device reset Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 281/356] pinctrl: qcom-pmic-gpio: add support for PM8937 Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 282/356] pinctrl: qcom: spmi-mpp: Add PM8937 compatible Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 283/356] thermal/drivers/qcom/tsens-v1: Add support for MSM8937 tsens Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 284/356] nvdimm: rectify the illogical code within nd_dax_probe() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 285/356] smb: client: memcpy() with surrounding object base address Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 286/356] verification/dot2: Improve dot parser robustness Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 287/356] f2fs: fix f2fs_bug_on when uninstalling filesystem call f2fs_evict_inode Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 288/356] KMSAN: uninit-value in inode_go_dump (5) Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 289/356] i3c: mipi-i3c-hci: Mask ring interrupts before ring stop request Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 290/356] PCI: qcom: Add support for IPQ9574 Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 291/356] PCI: vmd: Add DID 8086:B06F and 8086:B60B for Intel client SKUs Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 292/356] PCI: vmd: Set devices to D0 before enabling PM L1 Substates Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 293/356] PCI: Detect and trust built-in Thunderbolt chips Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 294/356] PCI: Add reset_subordinate to reset hierarchy below bridge Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 295/356] PCI: Add ACS quirk for Wangxun FF5xxx NICs Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 296/356] i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 297/356] f2fs: print message if fscorrupted was found in f2fs_new_node_page() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 298/356] f2fs: fix to shrink read extent node in batches Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 299/356] ACPI: x86: Add skip i2c clients quirk for Acer Iconia One 8 A1-840 Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 300/356] ACPI: x86: Clean up Asus entries in acpi_quirk_skip_dmi_ids[] Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 301/356] LoongArch: Fix sleeping in atomic context for PREEMPT_RT Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 302/356] fs/ntfs3: Fix case when unmarked clusters intersect with zone Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 303/356] usb: chipidea: udc: handle USB Error Interrupt if IOC not set Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 304/356] iio: light: ltr501: Add LTER0303 to the supported devices Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 305/356] ASoC: amd: yc: fix internal mic on Redmi G 2022 Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 306/356] drm/amdgpu/vcn: reset fw_shared when VCPU buffers corrupted on vcn v4.0.3 Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 307/356] MIPS: Loongson64: DTS: Really fix PCIe port nodes for ls7a Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 308/356] ASoC: amd: yc: Add quirk for microphone on Lenovo Thinkpad T14s Gen 6 21M1CTO1WW Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 309/356] powerpc/prom_init: Fixup missing powermac #size-cells Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 310/356] misc: eeprom: eeprom_93cx6: Add quirk for extra read clock cycle Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 311/356] rtc: cmos: avoid taking rtc_lock for extended period of time Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 312/356] serial: 8250_dw: Add Sophgo SG2044 quirk Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 313/356] smb: client: dont try following DFS links in cifs_tree_connect() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 314/356] setlocalversion: work around "git describe" performance Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 315/356] io_uring/tctx: work around xa_store() allocation error issue Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 316/356] sched/numa: Fix mm numa_scan_seq based unconditional scan Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 317/356] sched/numa: fix memory leak due to the overwritten vma->numab_state Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 318/356] mempolicy: fix migrate_pages(2) syscall return nr_failed Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 319/356] mm/mempolicy: fix migrate_to_node() assuming there is at least one VMA in a MM Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 320/356] sched/core: Remove the unnecessary need_resched() check in nohz_csd_func() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 321/356] sched/fair: Check idle_cpu() before need_resched() to detect ilb CPU turning busy Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 322/356] sched/core: Prevent wakeup of ksoftirqd during idle load balance Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 323/356] sched/fair: Rename check_preempt_wakeup() to check_preempt_wakeup_fair() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 324/356] sched/fair: Rename check_preempt_curr() to wakeup_preempt() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 325/356] sched/headers: Move struct sched_param out of uapi, to work around glibc/musl breakage Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 326/356] sched: Unify runtime accounting across classes Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 327/356] sched: Remove vruntime from trace_sched_stat_runtime() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 328/356] sched: Unify more update_curr*() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 329/356] sched/deadline: Collect sched_dl_entity initialization Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 330/356] sched/deadline: Move bandwidth accounting into {en,de}queue_dl_entity Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 331/356] sched/deadline: Fix warning in migrate_enable for boosted tasks Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 332/356] btrfs: fix missing snapshot drew unlock when root is dead during swap activation Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 333/356] clk: en7523: Initialize num before accessing hws in en7523_register_clocks() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 334/356] tracing/eprobe: Fix to release eprobe when failed to add dyn_event Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 335/356] x86: Fix build regression with CONFIG_KEXEC_JUMP enabled Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 336/356] Revert "unicode: Dont special case ignorable code points" Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 337/356] vfio/mlx5: Align the page tracking max message size with the device capability Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 338/356] selftests/ftrace: adjust offset for kprobe syntax error test Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 339/356] KVM: x86/mmu: Ensure that kvm_release_pfn_clean() takes exact pfn from kvm_faultin_pfn() Greg Kroah-Hartman
2024-12-12 15:00 ` [PATCH 6.6 340/356] jffs2: Prevent rtime decompress memory corruption Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 341/356] jffs2: Fix rtime decompressor Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 342/356] mm/damon/vaddr: fix issue in damon_va_evenly_split_region() Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 343/356] xhci: dbc: Fix STALL transfer event handling Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 344/356] iio: invensense: fix multiple odr switch when FIFO is off Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 345/356] btrfs: add cancellation points to trim loops Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 346/356] ocfs2: Revert "ocfs2: fix the la space leak when unmounting an ocfs2 volume" Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 347/356] ASoC: Intel: avs: Fix return status of avs_pcm_hw_constraints_init() Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 348/356] drm/amdgpu: rework resume handling for display (v2) Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 349/356] ALSA: hda: Fix build error without CONFIG_SND_DEBUG Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 350/356] net/smc: fix incorrect SMC-D link group matching logic Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 351/356] usb: dwc3: ep0: Dont reset resource alloc flag Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 352/356] ALSA: usb-audio: Update UMP group attributes for GTB blocks, too Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 353/356] platform/x86: asus-wmi: Fix thermal profile initialization Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 354/356] serial: amba-pl011: fix build regression Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 355/356] i3c: master: Remove i3c_dev_disable_ibi_locked(olddev) on device hotjoin Greg Kroah-Hartman
2024-12-12 15:01 ` [PATCH 6.6 356/356] i3c: master: svc: fix possible assignment of the same address to two devices Greg Kroah-Hartman
2024-12-12 21:51 ` [PATCH 6.6 000/356] 6.6.66-rc1 review Florian Fainelli
2024-12-13  1:41 ` Peter Schneider
2024-12-13 10:09 ` Jon Hunter
2024-12-13 10:17   ` Greg Kroah-Hartman
2024-12-13 13:18 ` Mark Brown
2024-12-13 14:49 ` Naresh Kamboju
2024-12-13 15:33 ` [PATCH 6.6] " Hardik Garg
2024-12-13 16:34 ` Hardik Garg
2024-12-13 16:51 ` [PATCH 6.6 000/356] " Shuah Khan
2024-12-13 18:51 ` SeongJae Park
2024-12-13 23:16 ` Ron Economos
2024-12-14  8:42 ` Muhammad Usama Anjum
2024-12-14 12:45 ` Harshit Mogalapalli

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=20241212144246.132397959@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=davem@davemloft.net \
    --cc=guwen@linux.alibaba.com \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=wintera@linux.ibm.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