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, Michael Kelley <mhklinux@outlook.com>,
	Jakub Kicinski <kuba@kernel.org>
Subject: [PATCH 6.14 096/145] hv_netvsc: Preserve contiguous PFN grouping in the page buffer array
Date: Tue, 20 May 2025 15:51:06 +0200	[thread overview]
Message-ID: <20250520125814.327612380@linuxfoundation.org> (raw)
In-Reply-To: <20250520125810.535475500@linuxfoundation.org>

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

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

From: Michael Kelley <mhklinux@outlook.com>

commit 41a6328b2c55276f89ea3812069fd7521e348bbf upstream.

Starting with commit dca5161f9bd0 ("hv_netvsc: Check status in
SEND_RNDIS_PKT completion message") in the 6.3 kernel, the Linux
driver for Hyper-V synthetic networking (netvsc) occasionally reports
"nvsp_rndis_pkt_complete error status: 2".[1] This error indicates
that Hyper-V has rejected a network packet transmit request from the
guest, and the outgoing network packet is dropped. Higher level
network protocols presumably recover and resend the packet so there is
no functional error, but performance is slightly impacted. Commit
dca5161f9bd0 is not the cause of the error -- it only added reporting
of an error that was already happening without any notice. The error
has presumably been present since the netvsc driver was originally
introduced into Linux.

The root cause of the problem is that the netvsc driver in Linux may
send an incorrectly formatted VMBus message to Hyper-V when
transmitting the network packet. The incorrect formatting occurs when
the rndis header of the VMBus message crosses a page boundary due to
how the Linux skb head memory is aligned. In such a case, two PFNs are
required to describe the location of the rndis header, even though
they are contiguous in guest physical address (GPA) space. Hyper-V
requires that two rndis header PFNs be in a single "GPA range" data
struture, but current netvsc code puts each PFN in its own GPA range,
which Hyper-V rejects as an error.

The incorrect formatting occurs only for larger packets that netvsc
must transmit via a VMBus "GPA Direct" message. There's no problem
when netvsc transmits a smaller packet by copying it into a pre-
allocated send buffer slot because the pre-allocated slots don't have
page crossing issues.

After commit 14ad6ed30a10 ("net: allow small head cache usage with
large MAX_SKB_FRAGS values") in the 6.14-rc4 kernel, the error occurs
much more frequently in VMs with 16 or more vCPUs. It may occur every
few seconds, or even more frequently, in an ssh session that outputs a
lot of text. Commit 14ad6ed30a10 subtly changes how skb head memory is
allocated, making it much more likely that the rndis header will cross
a page boundary when the vCPU count is 16 or more. The changes in
commit 14ad6ed30a10 are perfectly valid -- they just had the side
effect of making the netvsc bug more prominent.

Current code in init_page_array() creates a separate page buffer array
entry for each PFN required to identify the data to be transmitted.
Contiguous PFNs get separate entries in the page buffer array, and any
information about contiguity is lost.

Fix the core issue by having init_page_array() construct the page
buffer array to represent contiguous ranges rather than individual
pages. When these ranges are subsequently passed to
netvsc_build_mpb_array(), it can build GPA ranges that contain
multiple PFNs, as required to avoid the error "nvsp_rndis_pkt_complete
error status: 2". If instead the network packet is sent by copying
into a pre-allocated send buffer slot, the copy proceeds using the
contiguous ranges rather than individual pages, but the result of the
copying is the same. Also fix rndis_filter_send_request() to construct
a contiguous range, since it has its own page buffer array.

This change has a side benefit in CoCo VMs in that netvsc_dma_map()
calls dma_map_single() on each contiguous range instead of on each
page. This results in fewer calls to dma_map_single() but on larger
chunks of memory, which should reduce contention on the swiotlb.

Since the page buffer array now contains one entry for each contiguous
range instead of for each individual page, the number of entries in
the array can be reduced, saving 208 bytes of stack space in
netvsc_xmit() when MAX_SKG_FRAGS has the default value of 17.

[1] https://bugzilla.kernel.org/show_bug.cgi?id=217503

Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217503
Cc: <stable@vger.kernel.org> # 6.1.x
Signed-off-by: Michael Kelley <mhklinux@outlook.com>
Link: https://patch.msgid.link/20250513000604.1396-4-mhklinux@outlook.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/hyperv/hyperv_net.h   |   12 +++++++
 drivers/net/hyperv/netvsc_drv.c   |   65 +++++++++-----------------------------
 drivers/net/hyperv/rndis_filter.c |   24 ++------------
 3 files changed, 33 insertions(+), 68 deletions(-)

--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -893,6 +893,18 @@ struct nvsp_message {
 				 sizeof(struct nvsp_message))
 #define NETVSC_MIN_IN_MSG_SIZE sizeof(struct vmpacket_descriptor)
 
+/* Maximum # of contiguous data ranges that can make up a trasmitted packet.
+ * Typically it's the max SKB fragments plus 2 for the rndis packet and the
+ * linear portion of the SKB. But if MAX_SKB_FRAGS is large, the value may
+ * need to be limited to MAX_PAGE_BUFFER_COUNT, which is the max # of entries
+ * in a GPA direct packet sent to netvsp over VMBus.
+ */
+#if MAX_SKB_FRAGS + 2 < MAX_PAGE_BUFFER_COUNT
+#define MAX_DATA_RANGES (MAX_SKB_FRAGS + 2)
+#else
+#define MAX_DATA_RANGES MAX_PAGE_BUFFER_COUNT
+#endif
+
 /* Estimated requestor size:
  * out_ring_size/min_out_msg_size + in_ring_size/min_in_msg_size
  */
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -325,43 +325,10 @@ static u16 netvsc_select_queue(struct ne
 	return txq;
 }
 
-static u32 fill_pg_buf(unsigned long hvpfn, u32 offset, u32 len,
-		       struct hv_page_buffer *pb)
-{
-	int j = 0;
-
-	hvpfn += offset >> HV_HYP_PAGE_SHIFT;
-	offset = offset & ~HV_HYP_PAGE_MASK;
-
-	while (len > 0) {
-		unsigned long bytes;
-
-		bytes = HV_HYP_PAGE_SIZE - offset;
-		if (bytes > len)
-			bytes = len;
-		pb[j].pfn = hvpfn;
-		pb[j].offset = offset;
-		pb[j].len = bytes;
-
-		offset += bytes;
-		len -= bytes;
-
-		if (offset == HV_HYP_PAGE_SIZE && len) {
-			hvpfn++;
-			offset = 0;
-			j++;
-		}
-	}
-
-	return j + 1;
-}
-
 static u32 init_page_array(void *hdr, u32 len, struct sk_buff *skb,
 			   struct hv_netvsc_packet *packet,
 			   struct hv_page_buffer *pb)
 {
-	u32 slots_used = 0;
-	char *data = skb->data;
 	int frags = skb_shinfo(skb)->nr_frags;
 	int i;
 
@@ -370,28 +337,28 @@ static u32 init_page_array(void *hdr, u3
 	 * 2. skb linear data
 	 * 3. skb fragment data
 	 */
-	slots_used += fill_pg_buf(virt_to_hvpfn(hdr),
-				  offset_in_hvpage(hdr),
-				  len,
-				  &pb[slots_used]);
 
+	pb[0].offset = offset_in_hvpage(hdr);
+	pb[0].len = len;
+	pb[0].pfn = virt_to_hvpfn(hdr);
 	packet->rmsg_size = len;
-	packet->rmsg_pgcnt = slots_used;
+	packet->rmsg_pgcnt = 1;
 
-	slots_used += fill_pg_buf(virt_to_hvpfn(data),
-				  offset_in_hvpage(data),
-				  skb_headlen(skb),
-				  &pb[slots_used]);
+	pb[1].offset = offset_in_hvpage(skb->data);
+	pb[1].len = skb_headlen(skb);
+	pb[1].pfn = virt_to_hvpfn(skb->data);
 
 	for (i = 0; i < frags; i++) {
 		skb_frag_t *frag = skb_shinfo(skb)->frags + i;
-
-		slots_used += fill_pg_buf(page_to_hvpfn(skb_frag_page(frag)),
-					  skb_frag_off(frag),
-					  skb_frag_size(frag),
-					  &pb[slots_used]);
+		struct hv_page_buffer *cur_pb = &pb[i + 2];
+		u64 pfn = page_to_hvpfn(skb_frag_page(frag));
+		u32 offset = skb_frag_off(frag);
+
+		cur_pb->offset = offset_in_hvpage(offset);
+		cur_pb->len = skb_frag_size(frag);
+		cur_pb->pfn = pfn + (offset >> HV_HYP_PAGE_SHIFT);
 	}
-	return slots_used;
+	return frags + 2;
 }
 
 static int count_skb_frag_slots(struct sk_buff *skb)
@@ -482,7 +449,7 @@ static int netvsc_xmit(struct sk_buff *s
 	struct net_device *vf_netdev;
 	u32 rndis_msg_size;
 	u32 hash;
-	struct hv_page_buffer pb[MAX_PAGE_BUFFER_COUNT];
+	struct hv_page_buffer pb[MAX_DATA_RANGES];
 
 	/* If VF is present and up then redirect packets to it.
 	 * Skip the VF if it is marked down or has no carrier.
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -225,8 +225,7 @@ static int rndis_filter_send_request(str
 				  struct rndis_request *req)
 {
 	struct hv_netvsc_packet *packet;
-	struct hv_page_buffer page_buf[2];
-	struct hv_page_buffer *pb = page_buf;
+	struct hv_page_buffer pb;
 	int ret;
 
 	/* Setup the packet to send it */
@@ -235,27 +234,14 @@ static int rndis_filter_send_request(str
 	packet->total_data_buflen = req->request_msg.msg_len;
 	packet->page_buf_cnt = 1;
 
-	pb[0].pfn = virt_to_phys(&req->request_msg) >>
-					HV_HYP_PAGE_SHIFT;
-	pb[0].len = req->request_msg.msg_len;
-	pb[0].offset = offset_in_hvpage(&req->request_msg);
-
-	/* Add one page_buf when request_msg crossing page boundary */
-	if (pb[0].offset + pb[0].len > HV_HYP_PAGE_SIZE) {
-		packet->page_buf_cnt++;
-		pb[0].len = HV_HYP_PAGE_SIZE -
-			pb[0].offset;
-		pb[1].pfn = virt_to_phys((void *)&req->request_msg
-			+ pb[0].len) >> HV_HYP_PAGE_SHIFT;
-		pb[1].offset = 0;
-		pb[1].len = req->request_msg.msg_len -
-			pb[0].len;
-	}
+	pb.pfn = virt_to_phys(&req->request_msg) >> HV_HYP_PAGE_SHIFT;
+	pb.len = req->request_msg.msg_len;
+	pb.offset = offset_in_hvpage(&req->request_msg);
 
 	trace_rndis_send(dev->ndev, 0, &req->request_msg);
 
 	rcu_read_lock_bh();
-	ret = netvsc_send(dev->ndev, packet, NULL, pb, NULL, false);
+	ret = netvsc_send(dev->ndev, packet, NULL, &pb, NULL, false);
 	rcu_read_unlock_bh();
 
 	return ret;



  parent reply	other threads:[~2025-05-20 14:18 UTC|newest]

Thread overview: 166+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-20 13:49 [PATCH 6.14 000/145] 6.14.8-rc1 review Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 001/145] arm64: dts: rockchip: Assign RT5616 MCLK rate on rk3588-friendlyelec-cm3588 Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 002/145] fs/xattr.c: fix simple_xattr_list to always include security.* xattrs Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 003/145] drivers/platform/x86/amd: pmf: Check for invalid sideloaded Smart PC Policies Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 004/145] drivers/platform/x86/amd: pmf: Check for invalid " Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 005/145] x86/amd_node, platform/x86/amd/hsmp: Have HSMP use SMN through AMD_NODE Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 006/145] platform/x86/amd/hsmp: Make amd_hsmp and hsmp_acpi as mutually exclusive drivers Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 007/145] arm64: dts: rockchip: fix Sige5 RTC interrupt pin Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 008/145] riscv: dts: sophgo: fix DMA data-width configuration for CV18xx Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 009/145] binfmt_elf: Move brk for static PIE even if ASLR disabled Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 010/145] platform/x86/amd/pmc: Declare quirk_spurious_8042 for MECHREVO Wujie 14XA (GX4HRXL) Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 011/145] platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 012/145] arm64: dts: imx8mp-var-som: Fix LDO5 shutdown causing SD card timeout Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 013/145] cgroup/cpuset: Extend kthread_is_per_cpu() check to all PF_NO_SETAFFINITY tasks Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 014/145] tracing: fprobe: Fix RCU warning message in list traversal Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 015/145] tracing: probes: Fix a possible race in trace_probe_log APIs Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 016/145] tpm: tis: Double the timeout B to 4s Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 017/145] iio: adc: ad7606: move the software mode configuration Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 018/145] iio: adc: ad7606: move software functions into common file Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 019/145] iio: adc: ad7606: check for NULL before calling sw_mode_config() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 020/145] RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 021/145] HID: thrustmaster: fix memory leak in thrustmaster_interrupts() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 022/145] HID: uclogic: Add NULL check in uclogic_input_configured() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 023/145] nfs: handle failure of nfs_get_lock_context in unlock path Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 024/145] NFS/localio: Fix a race in nfs_local_open_fh() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 025/145] spi: loopback-test: Do not split 1024-byte hexdumps Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 026/145] RDMA/core: Fix "KASAN: slab-use-after-free Read in ib_register_device" problem Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 027/145] Bluetooth: MGMT: Fix MGMT_OP_ADD_DEVICE invalid device flags Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 028/145] net_sched: Flush gso_skb list too during ->change() Greg Kroah-Hartman
2025-05-20 13:49 ` [PATCH 6.14 029/145] drm/meson: Use 1000ULL when operating with mode->clock Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 030/145] tools/net/ynl: ethtool: fix crash when Hardware Clock info is missing Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 031/145] net: mctp: Dont access ifa_index when missing Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 032/145] tests/ncdevmem: Fix double-free of queue array Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 033/145] net: mctp: Ensure keys maintain only one ref to corresponding dev Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 034/145] ALSA: seq: Fix delivery of UMP events to group ports Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 035/145] ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 036/145] net: cadence: macb: Fix a possible deadlock in macb_halt_tx Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 037/145] net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 038/145] nvme-pci: make nvme_pci_npages_prp() __always_inline Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 039/145] nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 040/145] ALSA: sh: SND_AICA should depend on SH_DMA_API Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 041/145] net: dsa: b53: prevent standalone from trying to forward to other ports Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 042/145] drm/amd/display: Fix null check of pipe_ctx->plane_state for update_dchubp_dpp Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 043/145] vsock/test: Fix occasional failure in SIOCOUTQ tests Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 044/145] net/mlx5e: Disable MACsec offload for uplink representor profile Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 045/145] qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 046/145] regulator: max20086: fix invalid memory access Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 047/145] octeontx2-pf: Fix ethtool support for SDP representors Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 048/145] io_uring/fdinfo: grab ctx->uring_lock around io_uring_show_fdinfo() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 049/145] drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 050/145] netlink: specs: tc: fix a couple of attribute names Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 051/145] netlink: specs: tc: all actions are indexed arrays Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 052/145] octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 053/145] net: ethernet: mtk_eth_soc: fix typo for declaration MT7988 ESW capability Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 054/145] octeontx2-af: Fix CGX Receive counters Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 055/145] octeontx2-pf: Do not reallocate all ntuple filters Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 056/145] wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 057/145] mlxsw: spectrum_router: Fix use-after-free when deleting GRE net devices Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 058/145] net/tls: fix kernel panic when alloc_page failed Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 059/145] tsnep: fix timestamping with a stacked DSA driver Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 060/145] ublk: fix dead loop when canceling io command Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 061/145] NFSv4/pnfs: Reset the layout state after a layoutreturn Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 062/145] dmaengine: Revert "dmaengine: dmatest: Fix dmatest waiting less when interrupted" Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 063/145] Revert "kbuild, rust: use -fremap-path-prefix to make paths relative" Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 064/145] sched_ext: bpf_iter_scx_dsq_new() should always initialize iterator Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 065/145] udf: Make sure i_lenExtents is uptodate on inode eviction Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 066/145] fs/eventpoll: fix endless busy loop after timeout has expired Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 067/145] HID: bpf: abort dispatch if device destroyed Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 068/145] HID: amd_sfh: Fix SRA sensor when its the only sensor Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 069/145] LoongArch: Prevent cond_resched() occurring within kernel-fpu Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 070/145] LoongArch: Move __arch_cpu_idle() to .cpuidle.text section Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 071/145] LoongArch: Save and restore CSR.CNTC for hibernation Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 072/145] LoongArch: Fix MAX_REG_OFFSET calculation Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 073/145] LoongArch: uprobes: Remove user_{en,dis}able_single_step() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 074/145] LoongArch: uprobes: Remove redundant code about resume_era Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 075/145] btrfs: fix discard worker infinite loop after disabling discard Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 076/145] btrfs: fix folio leak in submit_one_async_extent() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 077/145] btrfs: add back warning for mount option commit values exceeding 300 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 078/145] Revert "drm/amd/display: Hardware cursor changes color when switched to software cursor" Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 079/145] drm/tiny: panel-mipi-dbi: Use drm_client_setup_with_fourcc() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 080/145] drm/amdgpu: read back register after written for VCN v4.0.5 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 081/145] drm/amdgpu: fix incorrect MALL size for GFX1151 Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 082/145] drm/amdgpu: csa unmap use uninterruptible lock Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 083/145] drm/amd/display: Correct the reply value when AUX write incomplete Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 084/145] drm/amd/display: Avoid flooding unnecessary info messages Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 085/145] MAINTAINERS: Update Alexey Makhalovs email address Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 086/145] gpio: pca953x: fix IRQ storm on system wake up Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 087/145] ACPI: PPTT: Fix processor subtable walk Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 088/145] ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2() Greg Kroah-Hartman
2025-05-20 13:50 ` [PATCH 6.14 089/145] ALSA: usb-audio: Add sample rate quirk for Audioengine D1 Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 090/145] ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 091/145] dma-buf: insert memory barrier before updating num_fences Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 092/145] arm64: dts: amlogic: dreambox: fix missing clkc_audio node Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 093/145] arm64: dts: rockchip: Allow Turing RK1 cooling fan to spin down Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 094/145] arm64: dts: rockchip: Remove overdrive-mode OPPs from RK3588J SoC dtsi Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 095/145] hv_netvsc: Use vmbus_sendpacket_mpb_desc() to send VMBus messages Greg Kroah-Hartman
2025-05-20 13:51 ` Greg Kroah-Hartman [this message]
2025-05-20 13:51 ` [PATCH 6.14 097/145] hv_netvsc: Remove rmsg_pgcnt Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 098/145] Drivers: hv: Allow vmbus_sendpacket_mpb_desc() to create multiple ranges Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 099/145] Drivers: hv: vmbus: Remove vmbus_sendpacket_pagebuffer() Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 100/145] kbuild: Disable -Wdefault-const-init-unsafe Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 101/145] i2c: designware: Fix an error handling path in i2c_dw_pci_probe() Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 102/145] ftrace: Fix preemption accounting for stacktrace trigger command Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 103/145] ftrace: Fix preemption accounting for stacktrace filter command Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 104/145] x86/sev: Do not touch VMSA pages during SNP guest memory kdump Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 105/145] x86/sev: Make sure pages are not skipped during kdump Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 106/145] tracing: samples: Initialize trace_array_printk() with the correct function Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 107/145] phy: tegra: xusb: Use a bitmask for UTMI pad power state tracking Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 108/145] phy: Fix error handling in tegra_xusb_port_init Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 109/145] net: dsa: microchip: let phylink manage PHY EEE configuration on KSZ switches Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 110/145] net: phy: micrel: remove KSZ9477 EEE quirks now handled by phylink Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 111/145] phy: renesas: rcar-gen3-usb2: Fix role detection on unbind/bind Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 112/145] phy: renesas: rcar-gen3-usb2: Set timing registers only once Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 113/145] scsi: sd_zbc: block: Respect bio vector limits for REPORT ZONES buffer Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 114/145] smb: client: fix memory leak during error handling for POSIX mkdir Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 115/145] spi: tegra114: Use value to check for invalid delays Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 116/145] tpm: Mask TPM RC in tpm2_start_auth_session() Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 117/145] wifi: mt76: disable napi on driver removal Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 118/145] wifi: mt76: mt7925: fix missing hdr_trans_tlv command for broadcast wtbl Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 119/145] ring-buffer: Fix persistent buffer when commit page is the reader page Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 120/145] net: qede: Initialize qede_ll_ops with designated initializer Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 121/145] io_uring/memmap: dont use page_address() on a highmem page Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 122/145] io_uring/uring_cmd: fix hybrid polling initialization issue Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 123/145] mm: hugetlb: fix incorrect fallback for subpool Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 124/145] mm: userfaultfd: correct dirty flags set for both present and swap pte Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 125/145] dmaengine: ti: k3-udma: Add missing locking Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 126/145] dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure instead of a local copy Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 127/145] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_wqs Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 128/145] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_engines Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 129/145] dmaengine: idxd: fix memory leak in error handling path of idxd_setup_groups Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 130/145] dmaengine: idxd: Add missing cleanup for early error out in idxd_setup_internals Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 131/145] dmaengine: idxd: Add missing cleanups in cleanup internals Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 132/145] dmaengine: idxd: Add missing idxd cleanup to fix memory leak in remove call Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 133/145] dmaengine: idxd: fix memory leak in error handling path of idxd_alloc Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 134/145] dmaengine: idxd: fix memory leak in error handling path of idxd_pci_probe Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 135/145] dmaengine: idxd: Refactor remove call with idxd_cleanup() helper Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 136/145] accel/ivpu: Use workqueue for IRQ handling Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 137/145] accel/ivpu: Dump only first MMU fault from single context Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 138/145] accel/ivpu: Move parts of MMU event IRQ handling to thread handler Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 139/145] accel/ivpu: Fix missing MMU events from reserved SSID Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 140/145] accel/ivpu: Fix missing MMU events if file_priv is unbound Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 141/145] accel/ivpu: Flush pending jobs of devices workqueues Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 142/145] drm/xe/gsc: do not flush the GSC worker from the reset path Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 143/145] mm/page_alloc: fix race condition in unaccepted memory handling Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 144/145] perf tools: Fix build error for LoongArch Greg Kroah-Hartman
2025-05-20 13:51 ` [PATCH 6.14 145/145] phy: tegra: xusb: remove a stray unlock Greg Kroah-Hartman
2025-05-20 14:57 ` [PATCH 6.14 000/145] 6.14.8-rc1 review Ronald Warsow
2025-05-20 16:46   ` Luna Jernberg
2025-05-20 18:57 ` Florian Fainelli
2025-05-20 19:26 ` Miguel Ojeda
2025-05-20 21:12 ` Shuah Khan
2025-05-20 21:34 ` Eric Naim
2025-05-21  2:42   ` Mario Limonciello
2025-05-21  5:35     ` Greg Kroah-Hartman
2025-05-21 14:13       ` Eric Naim
2025-05-21 16:25         ` Greg Kroah-Hartman
2025-05-21 16:59           ` Eric Naim
2025-05-21 17:10             ` Greg Kroah-Hartman
2025-05-21  1:25 ` Ron Economos
2025-05-21  8:06 ` Takeshi Ogasawara
2025-05-21  8:31 ` Jon Hunter
2025-05-21  9:24 ` Naresh Kamboju
2025-05-21 16:25 ` Markus Reichelt
2025-05-21 18:00 ` Peter Schneider
2025-05-21 18:16 ` Mark Brown
2025-05-22  5:00 ` Hardik Garg

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=20250520125814.327612380@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=kuba@kernel.org \
    --cc=mhklinux@outlook.com \
    --cc=patches@lists.linux.dev \
    --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