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, Shay Drory <shayd@nvidia.com>,
	Moshe Shemesh <moshe@nvidia.com>,
	Saeed Mahameed <saeedm@nvidia.com>,
	Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.1 019/112] net/mlx5: Re-organize mlx5_cmd struct
Date: Sat, 30 Dec 2023 11:58:52 +0000	[thread overview]
Message-ID: <20231230115807.365789407@linuxfoundation.org> (raw)
In-Reply-To: <20231230115806.714618407@linuxfoundation.org>

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

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

From: Shay Drory <shayd@nvidia.com>

[ Upstream commit 58db72869a9f8e01910844ca145efc2ea91bbbf9 ]

Downstream patch will split mlx5_cmd_init() to probe and reload
routines. As a preparation, organize mlx5_cmd struct so that any
field that will be used in the reload routine are grouped at new
nested struct.

Signed-off-by: Shay Drory <shayd@nvidia.com>
Reviewed-by: Moshe Shemesh <moshe@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Stable-dep-of: 8f5100da56b3 ("net/mlx5e: Fix a race in command alloc flow")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/ethernet/mellanox/mlx5/core/cmd.c | 94 +++++++++----------
 .../net/ethernet/mellanox/mlx5/core/debugfs.c |  4 +-
 include/linux/mlx5/driver.h                   | 21 +++--
 3 files changed, 60 insertions(+), 59 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/cmd.c b/drivers/net/ethernet/mellanox/mlx5/core/cmd.c
index 84f926064cf7b..e89d4fb7774bb 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/cmd.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/cmd.c
@@ -162,18 +162,18 @@ static int cmd_alloc_index(struct mlx5_cmd *cmd)
 	int ret;
 
 	spin_lock_irqsave(&cmd->alloc_lock, flags);
-	ret = find_first_bit(&cmd->bitmask, cmd->max_reg_cmds);
-	if (ret < cmd->max_reg_cmds)
-		clear_bit(ret, &cmd->bitmask);
+	ret = find_first_bit(&cmd->vars.bitmask, cmd->vars.max_reg_cmds);
+	if (ret < cmd->vars.max_reg_cmds)
+		clear_bit(ret, &cmd->vars.bitmask);
 	spin_unlock_irqrestore(&cmd->alloc_lock, flags);
 
-	return ret < cmd->max_reg_cmds ? ret : -ENOMEM;
+	return ret < cmd->vars.max_reg_cmds ? ret : -ENOMEM;
 }
 
 static void cmd_free_index(struct mlx5_cmd *cmd, int idx)
 {
 	lockdep_assert_held(&cmd->alloc_lock);
-	set_bit(idx, &cmd->bitmask);
+	set_bit(idx, &cmd->vars.bitmask);
 }
 
 static void cmd_ent_get(struct mlx5_cmd_work_ent *ent)
@@ -192,7 +192,7 @@ static void cmd_ent_put(struct mlx5_cmd_work_ent *ent)
 
 	if (ent->idx >= 0) {
 		cmd_free_index(cmd, ent->idx);
-		up(ent->page_queue ? &cmd->pages_sem : &cmd->sem);
+		up(ent->page_queue ? &cmd->vars.pages_sem : &cmd->vars.sem);
 	}
 
 	cmd_free_ent(ent);
@@ -202,7 +202,7 @@ static void cmd_ent_put(struct mlx5_cmd_work_ent *ent)
 
 static struct mlx5_cmd_layout *get_inst(struct mlx5_cmd *cmd, int idx)
 {
-	return cmd->cmd_buf + (idx << cmd->log_stride);
+	return cmd->cmd_buf + (idx << cmd->vars.log_stride);
 }
 
 static int mlx5_calc_cmd_blocks(struct mlx5_cmd_msg *msg)
@@ -971,7 +971,7 @@ static void cmd_work_handler(struct work_struct *work)
 	cb_timeout = msecs_to_jiffies(mlx5_tout_ms(dev, CMD));
 
 	complete(&ent->handling);
-	sem = ent->page_queue ? &cmd->pages_sem : &cmd->sem;
+	sem = ent->page_queue ? &cmd->vars.pages_sem : &cmd->vars.sem;
 	down(sem);
 	if (!ent->page_queue) {
 		alloc_ret = cmd_alloc_index(cmd);
@@ -991,9 +991,9 @@ static void cmd_work_handler(struct work_struct *work)
 		}
 		ent->idx = alloc_ret;
 	} else {
-		ent->idx = cmd->max_reg_cmds;
+		ent->idx = cmd->vars.max_reg_cmds;
 		spin_lock_irqsave(&cmd->alloc_lock, flags);
-		clear_bit(ent->idx, &cmd->bitmask);
+		clear_bit(ent->idx, &cmd->vars.bitmask);
 		spin_unlock_irqrestore(&cmd->alloc_lock, flags);
 	}
 
@@ -1569,15 +1569,15 @@ void mlx5_cmd_allowed_opcode(struct mlx5_core_dev *dev, u16 opcode)
 	struct mlx5_cmd *cmd = &dev->cmd;
 	int i;
 
-	for (i = 0; i < cmd->max_reg_cmds; i++)
-		down(&cmd->sem);
-	down(&cmd->pages_sem);
+	for (i = 0; i < cmd->vars.max_reg_cmds; i++)
+		down(&cmd->vars.sem);
+	down(&cmd->vars.pages_sem);
 
 	cmd->allowed_opcode = opcode;
 
-	up(&cmd->pages_sem);
-	for (i = 0; i < cmd->max_reg_cmds; i++)
-		up(&cmd->sem);
+	up(&cmd->vars.pages_sem);
+	for (i = 0; i < cmd->vars.max_reg_cmds; i++)
+		up(&cmd->vars.sem);
 }
 
 static void mlx5_cmd_change_mod(struct mlx5_core_dev *dev, int mode)
@@ -1585,15 +1585,15 @@ static void mlx5_cmd_change_mod(struct mlx5_core_dev *dev, int mode)
 	struct mlx5_cmd *cmd = &dev->cmd;
 	int i;
 
-	for (i = 0; i < cmd->max_reg_cmds; i++)
-		down(&cmd->sem);
-	down(&cmd->pages_sem);
+	for (i = 0; i < cmd->vars.max_reg_cmds; i++)
+		down(&cmd->vars.sem);
+	down(&cmd->vars.pages_sem);
 
 	cmd->mode = mode;
 
-	up(&cmd->pages_sem);
-	for (i = 0; i < cmd->max_reg_cmds; i++)
-		up(&cmd->sem);
+	up(&cmd->vars.pages_sem);
+	for (i = 0; i < cmd->vars.max_reg_cmds; i++)
+		up(&cmd->vars.sem);
 }
 
 static int cmd_comp_notifier(struct notifier_block *nb,
@@ -1652,7 +1652,7 @@ static void mlx5_cmd_comp_handler(struct mlx5_core_dev *dev, u64 vec, bool force
 
 	/* there can be at most 32 command queues */
 	vector = vec & 0xffffffff;
-	for (i = 0; i < (1 << cmd->log_sz); i++) {
+	for (i = 0; i < (1 << cmd->vars.log_sz); i++) {
 		if (test_bit(i, &vector)) {
 			ent = cmd->ent_arr[i];
 
@@ -1741,7 +1741,7 @@ static void mlx5_cmd_trigger_completions(struct mlx5_core_dev *dev)
 	/* wait for pending handlers to complete */
 	mlx5_eq_synchronize_cmd_irq(dev);
 	spin_lock_irqsave(&dev->cmd.alloc_lock, flags);
-	vector = ~dev->cmd.bitmask & ((1ul << (1 << dev->cmd.log_sz)) - 1);
+	vector = ~dev->cmd.vars.bitmask & ((1ul << (1 << dev->cmd.vars.log_sz)) - 1);
 	if (!vector)
 		goto no_trig;
 
@@ -1750,14 +1750,14 @@ static void mlx5_cmd_trigger_completions(struct mlx5_core_dev *dev)
 	 * to guarantee pending commands will not get freed in the meanwhile.
 	 * For that reason, it also has to be done inside the alloc_lock.
 	 */
-	for_each_set_bit(i, &bitmask, (1 << cmd->log_sz))
+	for_each_set_bit(i, &bitmask, (1 << cmd->vars.log_sz))
 		cmd_ent_get(cmd->ent_arr[i]);
 	vector |= MLX5_TRIGGERED_CMD_COMP;
 	spin_unlock_irqrestore(&dev->cmd.alloc_lock, flags);
 
 	mlx5_core_dbg(dev, "vector 0x%llx\n", vector);
 	mlx5_cmd_comp_handler(dev, vector, true);
-	for_each_set_bit(i, &bitmask, (1 << cmd->log_sz))
+	for_each_set_bit(i, &bitmask, (1 << cmd->vars.log_sz))
 		cmd_ent_put(cmd->ent_arr[i]);
 	return;
 
@@ -1770,22 +1770,22 @@ void mlx5_cmd_flush(struct mlx5_core_dev *dev)
 	struct mlx5_cmd *cmd = &dev->cmd;
 	int i;
 
-	for (i = 0; i < cmd->max_reg_cmds; i++) {
-		while (down_trylock(&cmd->sem)) {
+	for (i = 0; i < cmd->vars.max_reg_cmds; i++) {
+		while (down_trylock(&cmd->vars.sem)) {
 			mlx5_cmd_trigger_completions(dev);
 			cond_resched();
 		}
 	}
 
-	while (down_trylock(&cmd->pages_sem)) {
+	while (down_trylock(&cmd->vars.pages_sem)) {
 		mlx5_cmd_trigger_completions(dev);
 		cond_resched();
 	}
 
 	/* Unlock cmdif */
-	up(&cmd->pages_sem);
-	for (i = 0; i < cmd->max_reg_cmds; i++)
-		up(&cmd->sem);
+	up(&cmd->vars.pages_sem);
+	for (i = 0; i < cmd->vars.max_reg_cmds; i++)
+		up(&cmd->vars.sem);
 }
 
 static struct mlx5_cmd_msg *alloc_msg(struct mlx5_core_dev *dev, int in_size,
@@ -1855,7 +1855,7 @@ static int cmd_exec(struct mlx5_core_dev *dev, void *in, int in_size, void *out,
 		/* atomic context may not sleep */
 		if (callback)
 			return -EINVAL;
-		down(&dev->cmd.throttle_sem);
+		down(&dev->cmd.vars.throttle_sem);
 	}
 
 	pages_queue = is_manage_pages(in);
@@ -1900,7 +1900,7 @@ static int cmd_exec(struct mlx5_core_dev *dev, void *in, int in_size, void *out,
 	free_msg(dev, inb);
 out_up:
 	if (throttle_op)
-		up(&dev->cmd.throttle_sem);
+		up(&dev->cmd.vars.throttle_sem);
 	return err;
 }
 
@@ -2210,16 +2210,16 @@ int mlx5_cmd_init(struct mlx5_core_dev *dev)
 		goto err_free_pool;
 
 	cmd_l = ioread32be(&dev->iseg->cmdq_addr_l_sz) & 0xff;
-	cmd->log_sz = cmd_l >> 4 & 0xf;
-	cmd->log_stride = cmd_l & 0xf;
-	if (1 << cmd->log_sz > MLX5_MAX_COMMANDS) {
+	cmd->vars.log_sz = cmd_l >> 4 & 0xf;
+	cmd->vars.log_stride = cmd_l & 0xf;
+	if (1 << cmd->vars.log_sz > MLX5_MAX_COMMANDS) {
 		mlx5_core_err(dev, "firmware reports too many outstanding commands %d\n",
-			      1 << cmd->log_sz);
+			      1 << cmd->vars.log_sz);
 		err = -EINVAL;
 		goto err_free_page;
 	}
 
-	if (cmd->log_sz + cmd->log_stride > MLX5_ADAPTER_PAGE_SHIFT) {
+	if (cmd->vars.log_sz + cmd->vars.log_stride > MLX5_ADAPTER_PAGE_SHIFT) {
 		mlx5_core_err(dev, "command queue size overflow\n");
 		err = -EINVAL;
 		goto err_free_page;
@@ -2227,13 +2227,13 @@ int mlx5_cmd_init(struct mlx5_core_dev *dev)
 
 	cmd->state = MLX5_CMDIF_STATE_DOWN;
 	cmd->checksum_disabled = 1;
-	cmd->max_reg_cmds = (1 << cmd->log_sz) - 1;
-	cmd->bitmask = (1UL << cmd->max_reg_cmds) - 1;
+	cmd->vars.max_reg_cmds = (1 << cmd->vars.log_sz) - 1;
+	cmd->vars.bitmask = (1UL << cmd->vars.max_reg_cmds) - 1;
 
-	cmd->cmdif_rev = ioread32be(&dev->iseg->cmdif_rev_fw_sub) >> 16;
-	if (cmd->cmdif_rev > CMD_IF_REV) {
+	cmd->vars.cmdif_rev = ioread32be(&dev->iseg->cmdif_rev_fw_sub) >> 16;
+	if (cmd->vars.cmdif_rev > CMD_IF_REV) {
 		mlx5_core_err(dev, "driver does not support command interface version. driver %d, firmware %d\n",
-			      CMD_IF_REV, cmd->cmdif_rev);
+			      CMD_IF_REV, cmd->vars.cmdif_rev);
 		err = -EOPNOTSUPP;
 		goto err_free_page;
 	}
@@ -2243,9 +2243,9 @@ int mlx5_cmd_init(struct mlx5_core_dev *dev)
 	for (i = 0; i < MLX5_CMD_OP_MAX; i++)
 		spin_lock_init(&cmd->stats[i].lock);
 
-	sema_init(&cmd->sem, cmd->max_reg_cmds);
-	sema_init(&cmd->pages_sem, 1);
-	sema_init(&cmd->throttle_sem, DIV_ROUND_UP(cmd->max_reg_cmds, 2));
+	sema_init(&cmd->vars.sem, cmd->vars.max_reg_cmds);
+	sema_init(&cmd->vars.pages_sem, 1);
+	sema_init(&cmd->vars.throttle_sem, DIV_ROUND_UP(cmd->vars.max_reg_cmds, 2));
 
 	cmd_h = (u32)((u64)(cmd->dma) >> 32);
 	cmd_l = (u32)(cmd->dma);
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/debugfs.c b/drivers/net/ethernet/mellanox/mlx5/core/debugfs.c
index bb95b40d25eb5..e0b0729e238c1 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/debugfs.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/debugfs.c
@@ -176,8 +176,8 @@ static ssize_t slots_read(struct file *filp, char __user *buf, size_t count,
 	int ret;
 
 	cmd = filp->private_data;
-	weight = bitmap_weight(&cmd->bitmask, cmd->max_reg_cmds);
-	field = cmd->max_reg_cmds - weight;
+	weight = bitmap_weight(&cmd->vars.bitmask, cmd->vars.max_reg_cmds);
+	field = cmd->vars.max_reg_cmds - weight;
 	ret = snprintf(tbuf, sizeof(tbuf), "%d\n", field);
 	return simple_read_from_buffer(buf, count, pos, tbuf, ret);
 }
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h
index ce019c337f67f..93ec34a94b724 100644
--- a/include/linux/mlx5/driver.h
+++ b/include/linux/mlx5/driver.h
@@ -282,18 +282,23 @@ struct mlx5_cmd_stats {
 struct mlx5_cmd {
 	struct mlx5_nb    nb;
 
+	/* members which needs to be queried or reinitialized each reload */
+	struct {
+		u16		cmdif_rev;
+		u8		log_sz;
+		u8		log_stride;
+		int		max_reg_cmds;
+		unsigned long	bitmask;
+		struct semaphore sem;
+		struct semaphore pages_sem;
+		struct semaphore throttle_sem;
+	} vars;
 	enum mlx5_cmdif_state	state;
 	void	       *cmd_alloc_buf;
 	dma_addr_t	alloc_dma;
 	int		alloc_size;
 	void	       *cmd_buf;
 	dma_addr_t	dma;
-	u16		cmdif_rev;
-	u8		log_sz;
-	u8		log_stride;
-	int		max_reg_cmds;
-	int		events;
-	u32 __iomem    *vector;
 
 	/* protect command queue allocations
 	 */
@@ -303,12 +308,8 @@ struct mlx5_cmd {
 	 */
 	spinlock_t	token_lock;
 	u8		token;
-	unsigned long	bitmask;
 	char		wq_name[MLX5_CMD_WQ_MAX_NAME];
 	struct workqueue_struct *wq;
-	struct semaphore sem;
-	struct semaphore pages_sem;
-	struct semaphore throttle_sem;
 	int	mode;
 	u16     allowed_opcode;
 	struct mlx5_cmd_work_ent *ent_arr[MLX5_MAX_COMMANDS];
-- 
2.43.0




  parent reply	other threads:[~2023-12-30 12:08 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-30 11:58 [PATCH 6.1 000/112] 6.1.70-rc1 review Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 001/112] kasan: disable kasan_non_canonical_hook() for HW tags Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 002/112] bpf: Fix prog_array_map_poke_run map poke update Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 003/112] HID: i2c-hid: acpi: Unify ACPI ID tables format Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 004/112] HID: i2c-hid: Add IDEA5002 to i2c_hid_acpi_blacklist[] Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 005/112] drm/amd/display: fix hw rotated modes when PSR-SU is enabled Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 006/112] ARM: dts: dra7: Fix DRA7 L3 NoC node register size Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 007/112] ARM: OMAP2+: Fix null pointer dereference and memory leak in omap_soc_device_init Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 008/112] reset: Fix crash when freeing non-existent optional resets Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 009/112] s390/vx: fix save/restore of fpu kernel context Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 010/112] wifi: iwlwifi: pcie: add another missing bh-disable for rxq->lock Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 011/112] wifi: mac80211: check if the existing link config remains unchanged Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 012/112] wifi: mac80211: mesh: check element parsing succeeded Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 013/112] wifi: mac80211: mesh_plink: fix matches_local logic Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 014/112] Revert "net/mlx5e: fix double free of encap_header in update funcs" Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 015/112] Revert "net/mlx5e: fix double free of encap_header" Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 016/112] net/mlx5e: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list() Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 017/112] net/mlx5: Introduce and use opcode getter in command interface Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 018/112] net/mlx5: Prevent high-rate FW commands from populating all slots Greg Kroah-Hartman
2023-12-30 11:58 ` Greg Kroah-Hartman [this message]
2023-12-30 11:58 ` [PATCH 6.1 020/112] net/mlx5e: Fix a race in command alloc flow Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 021/112] net/mlx5e: fix a potential double-free in fs_udp_create_groups Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 022/112] net/mlx5: Fix fw tracer first block check Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 023/112] net/mlx5e: Correct snprintf truncation handling for fw_version buffer Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 024/112] net/mlx5e: Correct snprintf truncation handling for fw_version buffer used by representors Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 025/112] net: mscc: ocelot: fix eMAC TX RMON stats for bucket 256-511 and above Greg Kroah-Hartman
2023-12-30 11:58 ` [PATCH 6.1 026/112] octeontx2-pf: Fix graceful exit during PFC configuration failure Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 027/112] net: Return error from sk_stream_wait_connect() if sk_wait_event() fails Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 028/112] net: sched: ife: fix potential use-after-free Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 029/112] ethernet: atheros: fix a memleak in atl1e_setup_ring_resources Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 030/112] net/rose: fix races in rose_kill_by_device() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 031/112] Bluetooth: Fix deadlock in vhci_send_frame Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 032/112] Bluetooth: hci_event: shut up a false-positive warning Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 033/112] net: mana: select PAGE_POOL Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 034/112] net: check vlan filter feature in vlan_vids_add_by_dev() and vlan_vids_del_by_dev() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 035/112] afs: Fix the dynamic roots d_delete to always delete unused dentries Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 036/112] afs: Fix dynamic root lookup DNS check Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 037/112] net: check dev->gso_max_size in gso_features_check() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 038/112] keys, dns: Allow key types (eg. DNS) to be reclaimed immediately on expiry Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 039/112] afs: Fix overwriting of result of DNS query Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 040/112] afs: Fix use-after-free due to get/remove race in volume tree Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 041/112] ASoC: hdmi-codec: fix missing report for jack initial status Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 042/112] ASoC: fsl_sai: Fix channel swap issue on i.MX8MP Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 043/112] i2c: aspeed: Handle the coalesced stop conditions with the start conditions Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 044/112] x86/xen: add CPU dependencies for 32-bit build Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 045/112] pinctrl: at91-pio4: use dedicated lock class for IRQ Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 046/112] gpiolib: cdev: add gpio_device locking wrapper around gpio_ioctl() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 047/112] nvme-pci: fix sleeping function called from interrupt context Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 048/112] drm/i915/mtl: limit second scaler vertical scaling in ver >= 14 Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 049/112] drm/i915: Relocate intel_atomic_setup_scalers() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 050/112] drm/i915: Fix intel_atomic_setup_scalers() plane_state handling Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 051/112] drm/i915/dpt: Only do the POT stride remap when using DPT Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 052/112] drm/i915/mtl: Add MTL for remapping CCS FBs Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 053/112] drm/i915: Fix ADL+ tiled plane stride when the POT stride is smaller than the original Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 054/112] interconnect: Treat xlate() returning NULL node as an error Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 055/112] iio: imu: inv_mpu6050: fix an error code problem in inv_mpu6050_read_raw Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 056/112] interconnect: qcom: sm8250: Enable sync_state Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 057/112] Input: ipaq-micro-keys - add error handling for devm_kmemdup Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 058/112] scsi: bnx2fc: Fix skb double free in bnx2fc_rcv() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 059/112] iio: common: ms_sensors: ms_sensors_i2c: fix humidity conversion time table Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 060/112] iio: adc: ti_am335x_adc: Fix return value check of tiadc_request_dma() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 061/112] iio: triggered-buffer: prevent possible freeing of wrong buffer Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 062/112] ALSA: usb-audio: Increase delay in MOTU M quirk Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 063/112] usb-storage: Add quirk for incorrect WP on Kingston DT Ultimate 3.0 G3 Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 064/112] wifi: cfg80211: Add my certificate Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 065/112] wifi: cfg80211: fix certs build to not depend on file order Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 066/112] USB: serial: ftdi_sio: update Actisense PIDs constant names Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 067/112] USB: serial: option: add Quectel EG912Y module support Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 068/112] USB: serial: option: add Foxconn T99W265 with new baseline Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 069/112] USB: serial: option: add Quectel RM500Q R13 firmware support Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 070/112] ALSA: hda/realtek: Add quirk for ASUS ROG GV302XA Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 071/112] Bluetooth: hci_event: Fix not checking if HCI_OP_INQUIRY has been sent Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 072/112] Bluetooth: af_bluetooth: Fix Use-After-Free in bt_sock_recvmsg Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 073/112] Bluetooth: L2CAP: Send reject on command corrupted request Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 074/112] Bluetooth: MGMT/SMP: Fix address type when using SMP over BREDR/LE Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 075/112] Bluetooth: Add more enc key size check Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 076/112] net: usb: ax88179_178a: avoid failed operations when device is disconnected Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 077/112] Input: soc_button_array - add mapping for airplane mode button Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 078/112] net: 9p: avoid freeing uninit memory in p9pdu_vreadf Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 079/112] net: rfkill: gpio: set GPIO direction Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 080/112] net: ks8851: Fix TX stall caused by TX buffer overrun Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 081/112] dt-bindings: nvmem: mxs-ocotp: Document fsl,ocotp Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 082/112] smb: client: fix OOB in cifsd when receiving compounded resps Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 083/112] smb: client: fix potential OOB in cifs_dump_detail() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 084/112] smb: client: fix OOB in SMB2_query_info_init() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 085/112] smb: client: fix OOB in smbCalcSize() Greg Kroah-Hartman
2023-12-30 11:59 ` [PATCH 6.1 086/112] drm/i915: Reject async flips with bigjoiner Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 087/112] 9p: prevent read overrun in protocol dump tracepoint Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 088/112] RISC-V: Fix do_notify_resume / do_work_pending prototype Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 089/112] loop: do not enforce max_loop hard limit by (new) default Greg Kroah-Hartman
2023-12-31 15:49   ` Sven Joachim
2024-01-01 12:16     ` Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 090/112] dm thin metadata: Fix ABBA deadlock by resetting dm_bufio_client Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 091/112] Revert "drm/amd/display: Do not set DRR on pipe commit" Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 092/112] btrfs: zoned: no longer count fresh BG region as zone unusable Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 093/112] ubifs: fix possible dereference after free Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 094/112] ublk: move ublk_cancel_dev() out of ub->mutex Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 095/112] selftests: mptcp: join: fix subflow_send_ack lookup Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 096/112] Revert "scsi: aacraid: Reply queue mapping to CPUs based on IRQ affinity" Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 097/112] scsi: core: Always send batch on reset or error handling command Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 098/112] tracing / synthetic: Disable events after testing in synth_event_gen_test_init() Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 099/112] dm-integrity: dont modify bios immutable bio_vec in integrity_metadata() Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 100/112] pinctrl: starfive: jh7100: ignore disabled device tree nodes Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 101/112] bus: ti-sysc: Flush posted write only after srst_udelay Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 102/112] gpio: dwapb: mask/unmask IRQ when disable/enale it Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 103/112] lib/vsprintf: Fix %pfwf when current node refcount == 0 Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 104/112] thunderbolt: Fix memory leak in margining_port_remove() Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 105/112] KVM: arm64: vgic: Simplify kvm_vgic_destroy() Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 106/112] KVM: arm64: vgic: Add a non-locking primitive for kvm_vgic_vcpu_destroy() Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 107/112] KVM: arm64: vgic: Force vcpu vgic teardown on vcpu destroy Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 108/112] x86/alternatives: Sync core before enabling interrupts Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 109/112] mm/damon/core: make damon_start() waits until kdamond_fn() starts Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 110/112] fuse: share lookup state between submount and its parent Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 111/112] wifi: cfg80211: fix CQM for non-range use Greg Kroah-Hartman
2023-12-30 12:00 ` [PATCH 6.1 112/112] wifi: nl80211: fix deadlock in nl80211_set_cqm_rssi (6.6.x) Greg Kroah-Hartman
2023-12-30 16:29 ` [PATCH 6.1 000/112] 6.1.70-rc1 review Florian Fainelli
2023-12-30 18:14 ` SeongJae Park
2023-12-31  9:49 ` Naresh Kamboju
2023-12-31 12:04 ` Ron Economos
2023-12-31 16:33 ` Guenter Roeck
2024-01-01  9:26 ` Pavel Machek

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=20231230115807.365789407@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=moshe@nvidia.com \
    --cc=patches@lists.linux.dev \
    --cc=saeedm@nvidia.com \
    --cc=sashal@kernel.org \
    --cc=shayd@nvidia.com \
    --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