patches.lists.linux.dev 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, "D. Wythe" <alibuda@linux.alibaba.com>,
	"David S. Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.1 008/194] net/smc: replace mutex rmbs_lock and sndbufs_lock with rw_semaphore
Date: Mon, 21 Aug 2023 21:39:47 +0200	[thread overview]
Message-ID: <20230821194123.083249090@linuxfoundation.org> (raw)
In-Reply-To: <20230821194122.695845670@linuxfoundation.org>

From: D. Wythe <alibuda@linux.alibaba.com>

[ Upstream commit aff7bfed9097435ea38de919befbe2d7771a3e87 ]

It's clear that rmbs_lock and sndbufs_lock are aims to protect the
rmbs list or the sndbufs list.

During connection establieshment, smc_buf_get_slot() will always
be invoked, and it only performs read semantics in rmbs list and
sndbufs list.

Based on the above considerations, we replace mutex with rw_semaphore.
Only smc_buf_get_slot() use down_read() to allow smc_buf_get_slot()
run concurrently, other part use down_write() to keep exclusive
semantics.

Signed-off-by: D. Wythe <alibuda@linux.alibaba.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: 833bac7ec392 ("net/smc: Fix setsockopt and sysctl to specify same buffer size again")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 net/smc/smc_core.c | 55 +++++++++++++++++++++++-----------------------
 net/smc/smc_core.h |  4 ++--
 net/smc/smc_llc.c  | 16 +++++++-------
 3 files changed, 38 insertions(+), 37 deletions(-)

diff --git a/net/smc/smc_core.c b/net/smc/smc_core.c
index f82f43573a159..f793101e0ecc3 100644
--- a/net/smc/smc_core.c
+++ b/net/smc/smc_core.c
@@ -852,8 +852,8 @@ static int smc_lgr_create(struct smc_sock *smc, struct smc_init_info *ini)
 	lgr->freeing = 0;
 	lgr->vlan_id = ini->vlan_id;
 	refcount_set(&lgr->refcnt, 1); /* set lgr refcnt to 1 */
-	mutex_init(&lgr->sndbufs_lock);
-	mutex_init(&lgr->rmbs_lock);
+	init_rwsem(&lgr->sndbufs_lock);
+	init_rwsem(&lgr->rmbs_lock);
 	rwlock_init(&lgr->conns_lock);
 	for (i = 0; i < SMC_RMBE_SIZES; i++) {
 		INIT_LIST_HEAD(&lgr->sndbufs[i]);
@@ -1095,7 +1095,7 @@ struct smc_link *smc_switch_conns(struct smc_link_group *lgr,
 static void smcr_buf_unuse(struct smc_buf_desc *buf_desc, bool is_rmb,
 			   struct smc_link_group *lgr)
 {
-	struct mutex *lock;	/* lock buffer list */
+	struct rw_semaphore *lock;	/* lock buffer list */
 	int rc;
 
 	if (is_rmb && buf_desc->is_conf_rkey && !list_empty(&lgr->list)) {
@@ -1115,9 +1115,9 @@ static void smcr_buf_unuse(struct smc_buf_desc *buf_desc, bool is_rmb,
 		/* buf registration failed, reuse not possible */
 		lock = is_rmb ? &lgr->rmbs_lock :
 				&lgr->sndbufs_lock;
-		mutex_lock(lock);
+		down_write(lock);
 		list_del(&buf_desc->list);
-		mutex_unlock(lock);
+		up_write(lock);
 
 		smc_buf_free(lgr, is_rmb, buf_desc);
 	} else {
@@ -1220,15 +1220,16 @@ static void smcr_buf_unmap_lgr(struct smc_link *lnk)
 	int i;
 
 	for (i = 0; i < SMC_RMBE_SIZES; i++) {
-		mutex_lock(&lgr->rmbs_lock);
+		down_write(&lgr->rmbs_lock);
 		list_for_each_entry_safe(buf_desc, bf, &lgr->rmbs[i], list)
 			smcr_buf_unmap_link(buf_desc, true, lnk);
-		mutex_unlock(&lgr->rmbs_lock);
-		mutex_lock(&lgr->sndbufs_lock);
+		up_write(&lgr->rmbs_lock);
+
+		down_write(&lgr->sndbufs_lock);
 		list_for_each_entry_safe(buf_desc, bf, &lgr->sndbufs[i],
 					 list)
 			smcr_buf_unmap_link(buf_desc, false, lnk);
-		mutex_unlock(&lgr->sndbufs_lock);
+		up_write(&lgr->sndbufs_lock);
 	}
 }
 
@@ -1986,19 +1987,19 @@ int smc_uncompress_bufsize(u8 compressed)
  * buffer size; if not available, return NULL
  */
 static struct smc_buf_desc *smc_buf_get_slot(int compressed_bufsize,
-					     struct mutex *lock,
+					     struct rw_semaphore *lock,
 					     struct list_head *buf_list)
 {
 	struct smc_buf_desc *buf_slot;
 
-	mutex_lock(lock);
+	down_read(lock);
 	list_for_each_entry(buf_slot, buf_list, list) {
 		if (cmpxchg(&buf_slot->used, 0, 1) == 0) {
-			mutex_unlock(lock);
+			up_read(lock);
 			return buf_slot;
 		}
 	}
-	mutex_unlock(lock);
+	up_read(lock);
 	return NULL;
 }
 
@@ -2107,13 +2108,13 @@ int smcr_link_reg_buf(struct smc_link *link, struct smc_buf_desc *buf_desc)
 	return 0;
 }
 
-static int _smcr_buf_map_lgr(struct smc_link *lnk, struct mutex *lock,
+static int _smcr_buf_map_lgr(struct smc_link *lnk, struct rw_semaphore *lock,
 			     struct list_head *lst, bool is_rmb)
 {
 	struct smc_buf_desc *buf_desc, *bf;
 	int rc = 0;
 
-	mutex_lock(lock);
+	down_write(lock);
 	list_for_each_entry_safe(buf_desc, bf, lst, list) {
 		if (!buf_desc->used)
 			continue;
@@ -2122,7 +2123,7 @@ static int _smcr_buf_map_lgr(struct smc_link *lnk, struct mutex *lock,
 			goto out;
 	}
 out:
-	mutex_unlock(lock);
+	up_write(lock);
 	return rc;
 }
 
@@ -2155,37 +2156,37 @@ int smcr_buf_reg_lgr(struct smc_link *lnk)
 	int i, rc = 0;
 
 	/* reg all RMBs for a new link */
-	mutex_lock(&lgr->rmbs_lock);
+	down_write(&lgr->rmbs_lock);
 	for (i = 0; i < SMC_RMBE_SIZES; i++) {
 		list_for_each_entry_safe(buf_desc, bf, &lgr->rmbs[i], list) {
 			if (!buf_desc->used)
 				continue;
 			rc = smcr_link_reg_buf(lnk, buf_desc);
 			if (rc) {
-				mutex_unlock(&lgr->rmbs_lock);
+				up_write(&lgr->rmbs_lock);
 				return rc;
 			}
 		}
 	}
-	mutex_unlock(&lgr->rmbs_lock);
+	up_write(&lgr->rmbs_lock);
 
 	if (lgr->buf_type == SMCR_PHYS_CONT_BUFS)
 		return rc;
 
 	/* reg all vzalloced sndbufs for a new link */
-	mutex_lock(&lgr->sndbufs_lock);
+	down_write(&lgr->sndbufs_lock);
 	for (i = 0; i < SMC_RMBE_SIZES; i++) {
 		list_for_each_entry_safe(buf_desc, bf, &lgr->sndbufs[i], list) {
 			if (!buf_desc->used || !buf_desc->is_vm)
 				continue;
 			rc = smcr_link_reg_buf(lnk, buf_desc);
 			if (rc) {
-				mutex_unlock(&lgr->sndbufs_lock);
+				up_write(&lgr->sndbufs_lock);
 				return rc;
 			}
 		}
 	}
-	mutex_unlock(&lgr->sndbufs_lock);
+	up_write(&lgr->sndbufs_lock);
 	return rc;
 }
 
@@ -2305,8 +2306,8 @@ static int __smc_buf_create(struct smc_sock *smc, bool is_smcd, bool is_rmb)
 	struct smc_link_group *lgr = conn->lgr;
 	struct list_head *buf_list;
 	int bufsize, bufsize_short;
+	struct rw_semaphore *lock;	/* lock buffer list */
 	bool is_dgraded = false;
-	struct mutex *lock;	/* lock buffer list */
 	int sk_buf_size;
 
 	if (is_rmb)
@@ -2354,9 +2355,9 @@ static int __smc_buf_create(struct smc_sock *smc, bool is_smcd, bool is_rmb)
 		SMC_STAT_RMB_ALLOC(smc, is_smcd, is_rmb);
 		SMC_STAT_RMB_SIZE(smc, is_smcd, is_rmb, bufsize);
 		buf_desc->used = 1;
-		mutex_lock(lock);
+		down_write(lock);
 		list_add(&buf_desc->list, buf_list);
-		mutex_unlock(lock);
+		up_write(lock);
 		break; /* found */
 	}
 
@@ -2430,9 +2431,9 @@ int smc_buf_create(struct smc_sock *smc, bool is_smcd)
 	/* create rmb */
 	rc = __smc_buf_create(smc, is_smcd, true);
 	if (rc) {
-		mutex_lock(&smc->conn.lgr->sndbufs_lock);
+		down_write(&smc->conn.lgr->sndbufs_lock);
 		list_del(&smc->conn.sndbuf_desc->list);
-		mutex_unlock(&smc->conn.lgr->sndbufs_lock);
+		up_write(&smc->conn.lgr->sndbufs_lock);
 		smc_buf_free(smc->conn.lgr, false, smc->conn.sndbuf_desc);
 		smc->conn.sndbuf_desc = NULL;
 	}
diff --git a/net/smc/smc_core.h b/net/smc/smc_core.h
index 285f9bd8e232e..6051d92270130 100644
--- a/net/smc/smc_core.h
+++ b/net/smc/smc_core.h
@@ -252,9 +252,9 @@ struct smc_link_group {
 	unsigned short		vlan_id;	/* vlan id of link group */
 
 	struct list_head	sndbufs[SMC_RMBE_SIZES];/* tx buffers */
-	struct mutex		sndbufs_lock;	/* protects tx buffers */
+	struct rw_semaphore	sndbufs_lock;	/* protects tx buffers */
 	struct list_head	rmbs[SMC_RMBE_SIZES];	/* rx buffers */
-	struct mutex		rmbs_lock;	/* protects rx buffers */
+	struct rw_semaphore	rmbs_lock;	/* protects rx buffers */
 
 	u8			id[SMC_LGR_ID_SIZE];	/* unique lgr id */
 	struct delayed_work	free_work;	/* delayed freeing of an lgr */
diff --git a/net/smc/smc_llc.c b/net/smc/smc_llc.c
index 760f8bbff822e..fcb24a0ccf761 100644
--- a/net/smc/smc_llc.c
+++ b/net/smc/smc_llc.c
@@ -611,7 +611,7 @@ static int smc_llc_fill_ext_v2(struct smc_llc_msg_add_link_v2_ext *ext,
 
 	prim_lnk_idx = link->link_idx;
 	lnk_idx = link_new->link_idx;
-	mutex_lock(&lgr->rmbs_lock);
+	down_write(&lgr->rmbs_lock);
 	ext->num_rkeys = lgr->conns_num;
 	if (!ext->num_rkeys)
 		goto out;
@@ -631,7 +631,7 @@ static int smc_llc_fill_ext_v2(struct smc_llc_msg_add_link_v2_ext *ext,
 	}
 	len += i * sizeof(ext->rt[0]);
 out:
-	mutex_unlock(&lgr->rmbs_lock);
+	up_write(&lgr->rmbs_lock);
 	return len;
 }
 
@@ -892,7 +892,7 @@ static int smc_llc_cli_rkey_exchange(struct smc_link *link,
 	int rc = 0;
 	int i;
 
-	mutex_lock(&lgr->rmbs_lock);
+	down_write(&lgr->rmbs_lock);
 	num_rkeys_send = lgr->conns_num;
 	buf_pos = smc_llc_get_first_rmb(lgr, &buf_lst);
 	do {
@@ -919,7 +919,7 @@ static int smc_llc_cli_rkey_exchange(struct smc_link *link,
 			break;
 	} while (num_rkeys_send || num_rkeys_recv);
 
-	mutex_unlock(&lgr->rmbs_lock);
+	up_write(&lgr->rmbs_lock);
 	return rc;
 }
 
@@ -1002,14 +1002,14 @@ static void smc_llc_save_add_link_rkeys(struct smc_link *link,
 	ext = (struct smc_llc_msg_add_link_v2_ext *)((u8 *)lgr->wr_rx_buf_v2 +
 						     SMC_WR_TX_SIZE);
 	max = min_t(u8, ext->num_rkeys, SMC_LLC_RKEYS_PER_MSG_V2);
-	mutex_lock(&lgr->rmbs_lock);
+	down_write(&lgr->rmbs_lock);
 	for (i = 0; i < max; i++) {
 		smc_rtoken_set(lgr, link->link_idx, link_new->link_idx,
 			       ext->rt[i].rmb_key,
 			       ext->rt[i].rmb_vaddr_new,
 			       ext->rt[i].rmb_key_new);
 	}
-	mutex_unlock(&lgr->rmbs_lock);
+	up_write(&lgr->rmbs_lock);
 }
 
 static void smc_llc_save_add_link_info(struct smc_link *link,
@@ -1316,7 +1316,7 @@ static int smc_llc_srv_rkey_exchange(struct smc_link *link,
 	int rc = 0;
 	int i;
 
-	mutex_lock(&lgr->rmbs_lock);
+	down_write(&lgr->rmbs_lock);
 	num_rkeys_send = lgr->conns_num;
 	buf_pos = smc_llc_get_first_rmb(lgr, &buf_lst);
 	do {
@@ -1341,7 +1341,7 @@ static int smc_llc_srv_rkey_exchange(struct smc_link *link,
 		smc_llc_flow_qentry_del(&lgr->llc_flow_lcl);
 	} while (num_rkeys_send || num_rkeys_recv);
 out:
-	mutex_unlock(&lgr->rmbs_lock);
+	up_write(&lgr->rmbs_lock);
 	return rc;
 }
 
-- 
2.40.1




  parent reply	other threads:[~2023-08-21 19:51 UTC|newest]

Thread overview: 227+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-21 19:39 [PATCH 6.1 000/194] 6.1.47-rc1 review Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 001/194] mmc: sdhci-f-sdh30: Replace with sdhci_pltfm Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 002/194] cpuidle: psci: Extend information in log about OSI/PC mode Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 003/194] cpuidle: psci: Move enabling OSI mode after power domains creation Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 004/194] zsmalloc: consolidate zs_pools migrate_lock and size_classs locks Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 005/194] zsmalloc: fix races between modifications of fullness and isolated Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 006/194] selftests: forwarding: tc_actions: cleanup temporary files when test is aborted Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 007/194] selftests: forwarding: tc_actions: Use ncat instead of nc Greg Kroah-Hartman
2023-08-21 19:39 ` Greg Kroah-Hartman [this message]
2023-08-21 19:39 ` [PATCH 6.1 009/194] net/smc: Fix setsockopt and sysctl to specify same buffer size again Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 010/194] net: phy: at803x: Use devm_regulator_get_enable_optional() Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 011/194] net: phy: at803x: fix the wol setting functions Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 012/194] drm/amdgpu: fix calltrace warning in amddrm_buddy_fini Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 013/194] drm/amdgpu: Fix integer overflow in amdgpu_cs_pass1 Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 014/194] drm/amdgpu: fix memory leak in mes self test Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 015/194] ASoC: Intel: sof_sdw: add quirk for MTL RVP Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 016/194] ASoC: Intel: sof_sdw: add quirk for LNL RVP Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 017/194] PCI: tegra194: Fix possible array out of bounds access Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 018/194] ASoC: SOF: amd: Add pci revision id check Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 019/194] drm/stm: ltdc: fix late dereference check Greg Kroah-Hartman
2023-08-21 19:39 ` [PATCH 6.1 020/194] drm: rcar-du: remove R-Car H3 ES1.* workarounds Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 021/194] ASoC: amd: vangogh: Add check for acp config flags in vangogh platform Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 022/194] ARM: dts: imx6dl: prtrvt, prtvt7, prti6q, prtwd2: fix USB related warnings Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 023/194] ASoC: Intel: sof_sdw_rt_sdca_jack_common: test SOF_JACK_JDSRC in _exit Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 024/194] ASoC: Intel: sof_sdw: Add support for Rex soundwire Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 025/194] iopoll: Call cpu_relax() in busy loops Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 026/194] ASoC: SOF: Intel: fix SoundWire/HDaudio mutual exclusion Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 027/194] dma-remap: use kvmalloc_array/kvfree for larger dma memory remap Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 028/194] accel/habanalabs: add pci health check during heartbeat Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 029/194] HID: logitech-hidpp: Add USB and Bluetooth IDs for the Logitech G915 TKL Keyboard Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 030/194] iommu/amd: Introduce Disable IRTE Caching Support Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 031/194] drm/amdgpu: install stub fence into potential unused fence pointers Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 032/194] drm/amd/display: Apply 60us prefetch for DCFCLK <= 300Mhz Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 033/194] RDMA/mlx5: Return the firmware result upon destroying QP/RQ Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 034/194] drm/amd/display: Skip DPP DTO update if root clock is gated Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 035/194] drm/amd/display: Enable dcn314 DPP RCO Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 036/194] ASoC: SOF: core: Free the firmware trace before calling snd_sof_shutdown() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 037/194] HID: intel-ish-hid: ipc: Add Arrow Lake PCI device ID Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 038/194] ALSA: hda/realtek: Add quirks for ROG ALLY CS35l41 audio Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 039/194] smb: client: fix warning in cifs_smb3_do_mount() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 040/194] cifs: fix session state check in reconnect to avoid use-after-free issue Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 041/194] serial: stm32: Ignore return value of uart_remove_one_port() in .remove() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 042/194] led: qcom-lpg: Fix resource leaks in for_each_available_child_of_node() loops Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 043/194] media: v4l2-mem2mem: add lock to protect parameter num_rdy Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 044/194] media: camss: set VFE bpl_alignment to 16 for sdm845 and sm8250 Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 045/194] usb: gadget: u_serial: Avoid spinlock recursion in __gs_console_push Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 046/194] usb: gadget: uvc: queue empty isoc requests if no video buffer is available Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 047/194] media: platform: mediatek: vpu: fix NULL ptr dereference Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 048/194] thunderbolt: Read retimer NVM authentication status prior tb_retimer_set_inbound_sbtx() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 049/194] usb: chipidea: imx: dont request QoS for imx8ulp Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 050/194] usb: chipidea: imx: add missing USB PHY DPDM wakeup setting Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 051/194] gfs2: Fix possible data races in gfs2_show_options() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 052/194] pcmcia: rsrc_nonstatic: Fix memory leak in nonstatic_release_resource_db() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 053/194] thunderbolt: Add Intel Barlow Ridge PCI ID Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 054/194] thunderbolt: Limit Intel Barlow Ridge USB3 bandwidth Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 055/194] firewire: net: fix use after free in fwnet_finish_incoming_packet() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 056/194] watchdog: sp5100_tco: support Hygon FCH/SCH (Server Controller Hub) Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 057/194] Bluetooth: L2CAP: Fix use-after-free Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 058/194] Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 059/194] ceph: try to dump the msgs when decoding fails Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 060/194] drm/amdgpu: Fix potential fence use-after-free v2 Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 061/194] fs/ntfs3: Enhance sanity check while generating attr_list Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 062/194] fs: ntfs3: Fix possible null-pointer dereferences in mi_read() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 063/194] fs/ntfs3: Mark ntfs dirty when on-disk struct is corrupted Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 064/194] ALSA: hda/realtek: Add quirks for Unis H3C Desktop B760 & Q760 Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 065/194] ALSA: hda: fix a possible null-pointer dereference due to data race in snd_hdac_regmap_sync() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 066/194] ALSA: hda/realtek: Add quirk for ASUS ROG GX650P Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 067/194] ALSA: hda/realtek: Add quirk for ASUS ROG GA402X Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 068/194] ALSA: hda/realtek: Add quirk for ASUS ROG GZ301V Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 069/194] powerpc/kasan: Disable KCOV in KASAN code Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 070/194] Bluetooth: MGMT: Use correct address for memcpy() Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 071/194] ring-buffer: Do not swap cpu_buffer during resize process Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 072/194] igc: read before write to SRRCTL register Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 073/194] drm/amd/display: save restore hdcp state when display is unplugged from mst hub Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 074/194] drm/amd/display: phase3 mst hdcp for multiple displays Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 075/194] drm/amd/display: fix access hdcp_workqueue assert Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 076/194] KVM: arm64: vgic-v4: Make the doorbell request robust w.r.t preemption Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 077/194] ARM: dts: nxp/imx6sll: fix wrong property name in usbphy node Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 078/194] fbdev/hyperv-fb: Do not set struct fb_info.apertures Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 079/194] video/aperture: Only remove sysfb on the default vga pci device Greg Kroah-Hartman
2023-08-21 19:40 ` [PATCH 6.1 080/194] btrfs: move out now unused BG from the reclaim list Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 081/194] btrfs: convert btrfs_block_group::needs_free_space to runtime flag Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 082/194] btrfs: convert btrfs_block_group::seq_zone " Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 083/194] btrfs: fix use-after-free of new block group that became unused Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 084/194] virtio-mmio: dont break lifecycle of vm_dev Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 085/194] vduse: Use proper spinlock for IRQ injection Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 086/194] vdpa/mlx5: Fix mr->initialized semantics Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 087/194] vdpa/mlx5: Delete control vq iotlb in destroy_mr only when necessary Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 088/194] cifs: fix potential oops in cifs_oplock_break Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 089/194] i2c: bcm-iproc: Fix bcm_iproc_i2c_isr deadlock issue Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 090/194] i2c: hisi: Only handle the interrupt of the drivers transfer Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 091/194] i2c: tegra: Fix i2c-tegra DMA config option processing Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 092/194] fbdev: mmp: fix value check in mmphw_probe() Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 093/194] powerpc/rtas_flash: allow user copy to flash block cache objects Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 094/194] vdpa: Add features attr to vdpa_nl_policy for nlattr length check Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 095/194] vdpa: Add queue index " Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 096/194] vdpa: Add max vqp " Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 097/194] vdpa: Enable strict validation for netlinks ops Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 098/194] tty: n_gsm: fix the UAF caused by race condition in gsm_cleanup_mux Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 099/194] tty: serial: fsl_lpuart: Clear the error flags by writing 1 for lpuart32 platforms Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 100/194] btrfs: fix incorrect splitting in btrfs_drop_extent_map_range Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 101/194] btrfs: fix BUG_ON condition in btrfs_cancel_balance Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 102/194] i2c: designware: Correct length byte validation logic Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 103/194] i2c: designware: Handle invalid SMBus block data response length value Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 104/194] net: xfrm: Fix xfrm_address_filter OOB read Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 105/194] net: af_key: fix sadb_x_filter validation Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 106/194] net: xfrm: Amend XFRMA_SEC_CTX nla_policy structure Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 107/194] xfrm: fix slab-use-after-free in decode_session6 Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 108/194] ip6_vti: " Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 109/194] ip_vti: fix potential " Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 110/194] xfrm: add NULL check in xfrm_update_ae_params Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 111/194] xfrm: add forgotten nla_policy for XFRMA_MTIMER_THRESH Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 112/194] virtio_net: notify MAC address change on device initialization Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 113/194] virtio-net: set queues after driver_ok Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 114/194] net: pcs: Add missing put_device call in miic_create Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 115/194] net: phy: fix IRQ-based wake-on-lan over hibernate / power off Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 116/194] selftests: mirror_gre_changes: Tighten up the TTL test match Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 117/194] drm/panel: simple: Fix AUO G121EAN01 panel timings according to the docs Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 118/194] net: macb: In ZynqMP resume always configure PS GTR for non-wakeup source Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 119/194] octeon_ep: cancel tx_timeout_task later in remove sequence Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 120/194] netfilter: nf_tables: fix false-positive lockdep splat Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 121/194] netfilter: nf_tables: deactivate catchall elements in next generation Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 122/194] ipvs: fix racy memcpy in proc_do_sync_threshold Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 123/194] netfilter: nft_dynset: disallow object maps Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 124/194] net: phy: broadcom: stub c45 read/write for 54810 Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 125/194] team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 126/194] net: openvswitch: reject negative ifindex Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 127/194] iavf: fix FDIR rule fields masks validation Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 128/194] i40e: fix misleading debug logs Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 129/194] net: dsa: mv88e6xxx: Wait for EEPROM done before HW reset Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 130/194] sfc: dont unregister flow_indr if it was never registered Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 131/194] sock: Fix misuse of sk_under_memory_pressure() Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 132/194] net: do not allow gso_size to be set to GSO_BY_FRAGS Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 133/194] qede: fix firmware halt over suspend and resume Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 134/194] ice: Block switchdev mode when ADQ is active and vice versa Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 135/194] bus: ti-sysc: Flush posted write on enable before reset Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 136/194] arm64: dts: qcom: qrb5165-rb5: fix thermal zone conflict Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 137/194] arm64: dts: rockchip: Disable HS400 for eMMC on ROCK Pi 4 Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 138/194] arm64: dts: rockchip: Disable HS400 for eMMC on ROCK 4C+ Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 139/194] ARM: dts: imx: align LED node names with dtschema Greg Kroah-Hartman
2023-08-21 19:41 ` [PATCH 6.1 140/194] ARM: dts: imx6: phytec: fix RTC interrupt level Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 141/194] arm64: dts: imx8mm: Drop CSI1 PHY reference clock configuration Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 142/194] ARM: dts: imx: Set default tuning step for imx6sx usdhc Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 143/194] arm64: dts: imx93: Fix anatop node size Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 144/194] ASoC: rt5665: add missed regulator_bulk_disable Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 145/194] ASoC: meson: axg-tdm-formatter: fix channel slot allocation Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 146/194] ALSA: hda/realtek: Add quirks for HP G11 Laptops Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 147/194] soc: aspeed: uart-routing: Use __sysfs_match_string Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 148/194] soc: aspeed: socinfo: Add kfree for kstrdup Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 149/194] ALSA: hda/realtek - Remodified 3k pull low procedure Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 150/194] riscv: uaccess: Return the number of bytes effectively not copied Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 151/194] serial: 8250: Fix oops for port->pm on uart_change_pm() Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 152/194] ALSA: usb-audio: Add support for Mythware XA001AU capture and playback interfaces Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 153/194] cifs: Release folio lock on fscache read hit Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 154/194] riscv: Handle zicsr/zifencei issue between gcc and binutils Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 155/194] virtio-net: Zero max_tx_vq field for VIRTIO_NET_CTRL_MQ_HASH_CONFIG case Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 156/194] arm64: dts: rockchip: Fix Wifi/Bluetooth on ROCK Pi 4 boards Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 157/194] blk-crypto: dynamically allocate fallback profile Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 158/194] mmc: wbsd: fix double mmc_free_host() in wbsd_init() Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 159/194] mmc: block: Fix in_flight[issue_type] value error Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 160/194] drm/qxl: fix UAF on handle creation Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 161/194] drm/i915/sdvo: fix panel_type initialization Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 162/194] drm/amd: flush any delayed gfxoff on suspend entry Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 163/194] drm/amdgpu: skip fence GFX interrupts disable/enable for S0ix Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 164/194] drm/amdgpu/pm: fix throttle_status for other than MP1 11.0.7 Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 165/194] ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 166/194] drm/amd/display: disable RCO for DCN314 Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 167/194] zsmalloc: allow only one active pool compaction context Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 168/194] sched/fair: unlink misfit task from cpu overutilized Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 169/194] sched/fair: Remove capacity inversion detection Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 170/194] drm/amd/display: Implement workaround for writing to OTG_PIXEL_RATE_DIV register Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 171/194] hugetlb: do not clear hugetlb dtor until allocating vmemmap Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 172/194] netfilter: set default timeout to 3 secs for sctp shutdown send and recv state Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 173/194] x86/cpu: Fix __x86_return_thunk symbol type Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 174/194] x86/cpu: Fix up srso_safe_ret() and __x86_return_thunk() Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 175/194] x86/alternative: Make custom return thunk unconditional Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 176/194] x86/cpu: Clean up SRSO return thunk mess Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 177/194] x86/cpu: Rename original retbleed methods Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 178/194] x86/cpu: Rename srso_(.*)_alias to srso_alias_\1 Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 179/194] x86/cpu: Cleanup the untrain mess Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 180/194] x86/srso: Explain the untraining sequences a bit more Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 181/194] x86/static_call: Fix __static_call_fixup() Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 182/194] x86/retpoline: Dont clobber RFLAGS during srso_safe_ret() Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 183/194] x86/CPU/AMD: Fix the DIV(0) initial fix attempt Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 184/194] x86/srso: Disable the mitigation on unaffected configurations Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 185/194] x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANG Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 186/194] objtool/x86: Fixup frame-pointer vs rethunk Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 187/194] x86/srso: Correct the mitigation status when SMT is disabled Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 188/194] arm64/ptrace: Ensure that SME is set up for target when writing SSVE state Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 189/194] drm/amd/pm: skip the RLC stop when S0i3 suspend for SMU v13.0.4/11 Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 190/194] drm/amdgpu: keep irq count in amdgpu_irq_disable_all Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 191/194] af_unix: Fix null-ptr-deref in unix_stream_sendpage() Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 192/194] drm/nouveau/disp: fix use-after-free in error handling of nouveau_connector_create Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 193/194] net: fix the RTO timer retransmitting skb every 1ms if linear option is enabled Greg Kroah-Hartman
2023-08-21 19:42 ` [PATCH 6.1 194/194] mmc: f-sdh30: fix order of function calls in sdhci_f_sdh30_remove Greg Kroah-Hartman
2023-08-21 22:58 ` [PATCH 6.1 000/194] 6.1.47-rc1 review Joel Fernandes
2023-08-22 15:41   ` Joel Fernandes
2023-08-21 23:35 ` Takeshi Ogasawara
2023-08-22  3:00 ` Bagas Sanjaya
2023-08-22 10:55 ` Naresh Kamboju
2023-08-22 15:27   ` Salvatore Bonaccorso
2023-08-22 15:51     ` Greg Kroah-Hartman
2023-08-22 17:27       ` Greg Kroah-Hartman
2023-08-22 11:01 ` SeongJae Park
2023-08-22 14:08 ` Shuah Khan
2023-08-22 20:23 ` Florian Fainelli
2023-08-22 23:55 ` Ron Economos
2023-08-23  0:49 ` Guenter Roeck
2023-08-23  7:03   ` Greg Kroah-Hartman
2023-08-23  8:17     ` Naresh Kamboju
2023-08-23  8:27       ` Greg Kroah-Hartman
2023-08-23 13:30       ` Guenter Roeck
2023-08-23 15:50         ` Greg Kroah-Hartman
2023-08-24 13:35           ` Greg Kroah-Hartman
2023-08-24 15:08             ` Guenter Roeck
2023-08-24 15:15               ` Greg Kroah-Hartman
2023-08-24 15:58                 ` Guenter Roeck
2023-08-24 16:40                   ` Greg Kroah-Hartman
2023-08-23 13:28     ` Guenter Roeck
2023-08-23  8:54 ` Sudip Mukherjee (Codethink)
2023-08-23  9:26   ` Greg Kroah-Hartman
2023-08-23 10:32     ` Naresh Kamboju
2023-08-23 13:30       ` Guenter Roeck
2023-08-23 14:37     ` Sudip Mukherjee
2023-08-23  9:35 ` Conor Dooley
2023-08-23 13:37   ` Guenter Roeck
2023-08-23 15:24   ` Greg Kroah-Hartman

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=20230821194123.083249090@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=alibuda@linux.alibaba.com \
    --cc=davem@davemloft.net \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).