public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: Kelvin Mbogo <addcontent08@gmail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Sasha Levin <sashal@kernel.org>,
	valentina.manea.m@gmail.com, shuah@kernel.org,
	linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH AUTOSEL 7.0-5.10] usb: usbip: fix integer overflow in usbip_recv_iso()
Date: Tue, 28 Apr 2026 06:41:12 -0400	[thread overview]
Message-ID: <20260428104133.2858589-61-sashal@kernel.org> (raw)
In-Reply-To: <20260428104133.2858589-1-sashal@kernel.org>

From: Kelvin Mbogo <addcontent08@gmail.com>

[ Upstream commit 1897852293faca4c2be51e0a19f739622f771623 ]

usbip_recv_iso() computes the iso descriptor buffer size as:

    int size = np * sizeof(*iso);

where np comes straight from the wire (urb->number_of_packets, set by
usbip_pack_ret_submit() before we get here).  With np = 0x10000001 and
sizeof(*iso) == 16 the product is 0x100000010 which truncates to 16 on
a 32-bit int.  kzalloc(16) succeeds but the following receive loop
writes np * 16 bytes into it - game over.

USBIP_MAX_ISO_PACKETS (1024) already exists in usbip_common.h for the
submit path but was never enforced on the receive side.

Clamp np to [1, USBIP_MAX_ISO_PACKETS] and switch to kcalloc() so
the allocator itself can catch overflows in the future.  Fold the
existing np == 0 early return into the new bounds check.

usbip_pack_ret_submit() already copied the bogus np into
urb->number_of_packets before we run, so just returning -EPROTO is
not enough - processcompl() in the HCD will still iterate that many
iso_frame_desc entries when it completes the failed URB.  Zero out
urb->number_of_packets before bailing to prevent that secondary crash
(confirmed on 6.12.0, processcompl+0x63 with CR2 in unmapped slab).

Signed-off-by: Kelvin Mbogo <addcontent08@gmail.com>
Link: https://patch.msgid.link/20260325103640.8090-1-addcontent08@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

Based on my investigation, I now have enough information to complete the
analysis.

## Phase 1: Commit Message Forensics

**Step 1.1 - Subject line parsing:**
Record: Subsystem `usb: usbip:`, action verb `fix`, summary: "fix
integer overflow in usbip_recv_iso()"

**Step 1.2 - Tags parsed:**
Record:
- `Signed-off-by: Kelvin Mbogo` (author)
- `Link:
  https://patch.msgid.link/20260325103640.8090-1-addcontent08@gmail.com`
- `Signed-off-by: Greg Kroah-Hartman` (subsystem maintainer applied it)
- No Fixes: tag, no explicit Cc: stable (but mbox shows v2 "Drop
  security@kernel.org CC" — the author originally reported this as a
  security issue)

**Step 1.3 - Body analysis:**
Record: Integer overflow in `size = np * sizeof(*iso)` when `np` (wire-
supplied `urb->number_of_packets`) is large enough. Example: `np =
0x10000001 * 16 = 0x100000010` truncates to 16 on 32-bit int. Small
`kzalloc(16)` is followed by a receive loop that writes `np * 16` bytes
= massive heap overflow. Also mentions secondary crash reproduced on
6.12.0 at `processcompl+0x63`.

**Step 1.4 - Hidden bug fix detection:**
Record: Not hidden — explicitly labeled "fix integer overflow". Real
security bug (heap overflow).

## Phase 2: Diff Analysis

**Step 2.1 - Inventory:**
Record: 1 file (`drivers/usb/usbip/usbip_common.c`), +15/-5 lines,
single function `usbip_recv_iso()`. Classification: surgical single-file
fix.

**Step 2.2 - Code flow change:**
Record: Before: `size = np * sizeof(*iso)` computed before any
validation, with only `np == 0` check. After: clamp `np` to `[1,
USBIP_MAX_ISO_PACKETS]` range, zero `urb->number_of_packets` on error
(prevents processcompl from iterating OOB in `iso_frame_desc[]`), switch
`kzalloc` to `kcalloc` for overflow-safe allocation.

**Step 2.3 - Bug mechanism:**
Record: Integer overflow in multiplication → undersized heap allocation
→ OOB heap write in receive loop (category: buffer overflow / memory
safety). Also fixes cascading NULL deref in `processcompl()` via
`urb->number_of_packets` reset.

**Step 2.4 - Fix quality:**
Record: Fix is obviously correct. Uses already-existing
`USBIP_MAX_ISO_PACKETS` (1024) from `usbip_common.h` that was already
enforced on the submit path in `stub_rx.c:381`. Mirrors existing
validation pattern. No regression risk: bounds check is strictly tighter
than kzalloc behavior.

## Phase 3: Git History Investigation

**Step 3.1 - Blame:**
Record: The buggy code (`int size = np * sizeof(*iso)`) has been in
`usbip_recv_iso()` since the function was first introduced in commit
`05a1f28e879e3` ("Staging: USB/IP: add common functions needed",
2008-07-09). The bug has existed for ~18 years.

**Step 3.2 - Follow Fixes: tag:**
Record: No Fixes: tag in the commit (the bug predates git history
cleanup). Confirmed original buggy introduction in 2008.

**Step 3.3 - File history:**
Record: The follow-up series has three related fixes (`1897852293fac`,
`591c1d972d8f1`, `74a2287209a85`) plus a later independent fix
`2ab833a16a825` ("usbip: validate number_of_packets in
usbip_pack_ret_submit()") which carries **explicit `Cc: stable
<stable@kernel.org>` and `Acked-by: Shuah Khan` (usbip maintainer)**.
Commit 2ab833a16a825 explicitly references Kelvin Mbogo's series as
complementary.

**Step 3.4 - Author's other commits:**
Record: Author Kelvin Mbogo submitted a 3-patch security series. Patch
went through v1→v2 with review from Greg KH (USB maintainer). This
specific commit is self-contained and standalone.

**Step 3.5 - Dependencies:**
Record: Uses `USBIP_MAX_ISO_PACKETS` macro which exists in all stable
trees (verified in 5.10.y through 6.19.y). No dependencies. Standalone.

## Phase 4: Mailing List Research

**Step 4.1 - Original discussion (b4 dig):**
Record:
- `b4 dig -c 1897852293faca` → found at `https://lore.kernel.org/all/202
  60325104841.8282-1-addcontent08@gmail.com/`
- `b4 dig -a` → patch went through v1→v2; v2 is what was applied
- v2 changelog mentions: "Drop security@kernel.org CC" — proving the
  author initially reported this through the security channel

**Step 4.2 - Reviewers:**
Record: Greg KH (USB maintainer) reviewed and applied; Shuah Khan (usbip
maintainer) acked the follow-up patch that explicitly mentions this
series and is marked for stable.

**Step 4.3 - Bug report:**
Record: Multiple independent security researchers have reported related
usbip vulnerabilities in this area (Kelvin Mbogo, Nathan Rebello,
Sebastián Alba Vives). Nathan Rebello's patch confirms "KASAN confirmed
this with kernel 7.0.0-rc5: BUG: KASAN: slab-out-of-bounds in
usbip_recv_iso+0x46a/0x640, Write of size 4 at addr ffff888106351d40".
The commit message confirms reproduction on 6.12.0.

**Step 4.4 - Related patches:**
Record: This is patch 1/3 of a series. Patches 2 and 3 have been applied
as `591c1d972d8f1` and `74a2287209a85`. The companion commit
`2ab833a16a825` by Nathan Rebello has explicit `Cc: stable`.

**Step 4.5 - Stable list:**
Record: Sebastián Alba Vives posted this category of issue as
`[SECURITY]` on the stable mailing list
(spinics.net/lists/stable/msg928028.html), describing the vulnerability
as causing "OOB memmove that corrupts kernel heap memory. No
authentication required."

## Phase 5: Code Semantic Analysis

**Step 5.1-5.4 - Callers:**
Record: `usbip_recv_iso()` is called from:
- `vhci_rx.c:86` (`vhci_recv_ret_submit` → invoked from the vhci_rx
  kthread)
- `stub_rx.c:605`
- `vudc_rx.c:173`

Call chain from userspace: User creates a VHCI device via sysfs
(`attach` command), passes a TCP socket, vhci_rx kthread reads PDUs from
the socket → `vhci_recv_ret_submit()` → `usbip_pack_ret_submit()` copies
`number_of_packets` from wire → `usbip_recv_iso()` computes size with
overflow → OOB heap write. **The bug is reachable over the network with
no authentication.**

**Step 5.5 - Similar patterns:**
Record: `stub_rx.c:379-386` already validates `number_of_packets`
against `USBIP_MAX_ISO_PACKETS` on the CMD_SUBMIT path. This commit
applies the symmetric validation that was missing on the RET_SUBMIT
path.

## Phase 6: Cross-Referencing Stable Trees

**Step 6.1 - Code exists in stable:**
Record: Verified identical buggy code in every stable tree:
`linux-5.10.y`, `linux-5.15.y`, `linux-6.1.y`, `linux-6.6.y`,
`linux-6.12.y`, `linux-6.18.y`, `linux-6.19.y`. Bug has been present
since staging era (2008).

**Step 6.2 - Backport complications:**
Record: `git apply --check --3way` confirms patch applies cleanly to
current tree. Since all stable branches have identical code, the patch
will apply cleanly with no conflicts.

**Step 6.3 - Related fixes in stable:**
Record: No related fix already in stable. `USBIP_MAX_ISO_PACKETS` exists
in all stable trees (1024) so the fix uses an already-present constant.

## Phase 7: Subsystem Context

**Step 7.1 - Subsystem:**
Record: `drivers/usb/usbip/` — USB/IP network-attached USB. Criticality:
IMPORTANT (network-reachable code path, security-sensitive). Used by
users with USB-over-IP functionality; enabled in many distros.

**Step 7.2 - Activity:**
Record: Actively maintained; multiple security fixes in 2026 (this
series plus independent Nathan Rebello and Sebastián Alba Vives
contributions).

## Phase 8: Impact and Risk Assessment

**Step 8.1 - Who is affected:**
Record: Any user who runs vhci-hcd (USB/IP client) and attaches to an
untrusted USB/IP server. Also stub-side and vudc-side code paths.
Config-dependent on `CONFIG_USBIP_CORE`.

**Step 8.2 - Trigger conditions:**
Record: A malicious USB/IP server sends a RET_SUBMIT PDU with crafted
`number_of_packets = 0x10000001` or similar. **No authentication
required — reachable entirely from the network peer.**

**Step 8.3 - Failure mode severity:**
Record: **CRITICAL.** Heap out-of-bounds write with controlled size and
partially controlled content (iso descriptor bytes received from
network). Confirmed by KASAN report. The author reproduced a secondary
NULL deref crash in `processcompl()` at CR2 in unmapped slab. Security
vulnerability exploitable over network.

**Step 8.4 - Risk/benefit:**
Record:
- Benefit: **Very high** — fixes a network-reachable heap overflow;
  security vulnerability.
- Risk: **Very low** — 20-line change using an already-existing
  constant; bounds checks are strictly tighter than existing behavior;
  no API changes.
- Ratio: Strongly favorable for backport.

## Phase 9: Final Synthesis

**Evidence FOR backporting:**
- Security vulnerability: integer overflow → heap OOB write, reachable
  from malicious network peer
- Small, surgical fix (1 file, +15/-5 lines) using existing
  `USBIP_MAX_ISO_PACKETS` constant
- Original submission was sent via `security@kernel.org` (per v2
  changelog)
- Reviewed and applied by Greg KH (USB maintainer)
- Companion patch (2ab833a16a825) has explicit `Cc: stable` and `Acked-
  by: Shuah Khan` (usbip maintainer) and references this series
- Independent security researchers (Nathan Rebello, Sebastián Alba
  Vives) confirmed related vulnerabilities via KASAN and manual audit
- KASAN confirmed heap OOB write in this exact function
- Author also fixes a cascading NULL deref in `processcompl()` (verified
  at kernel 6.12.0)
- Buggy code is identical in every stable tree (5.10.y – 7.0.y)
- Patch applies cleanly to stable (verified with `git apply --check`)

**Evidence AGAINST backporting:**
- None.

**Stable rules checklist:**
1. Obviously correct and tested? **YES** — clamp to existing limit,
   kcalloc replaces kzalloc
2. Real bug affecting users? **YES** — heap OOB write, KASAN-confirmed
3. Important issue? **YES** — CRITICAL security vulnerability, network-
   reachable
4. Small and contained? **YES** — 20 lines in 1 file, 1 function
5. No new features? **YES** — pure defensive validation
6. Applies to stable? **YES** — verified clean apply

## Verification

- [Phase 1] `git show 1897852293fac`: confirmed full commit message, no
  Fixes: tag, no explicit Cc: stable in final version
- [Phase 2] Read diff in `drivers/usb/usbip/usbip_common.c`: confirmed
  +15/-5 surgical change in `usbip_recv_iso()`
- [Phase 3] `git log
  -L:usbip_recv_iso:drivers/usb/usbip/usbip_common.c`: buggy code traced
  to original commit `05a1f28e879e3` (2008-07-09, "Staging: USB/IP: add
  common functions needed")
- [Phase 3] `git show 2ab833a16a825`: related follow-up has explicit
  `Cc: stable <stable@kernel.org>` and `Acked-by: Shuah Khan
  <skhan@linuxfoundation.org>`
- [Phase 4] `b4 dig -c 1897852293faca`: found lore thread at `https://lo
  re.kernel.org/all/20260325104841.8282-1-addcontent08@gmail.com/`
- [Phase 4] `b4 dig -a`: confirmed v1→v2 progression; v2 applied is the
  latest
- [Phase 4] mbox thread inspection: v2 changelog says "Drop
  security@kernel.org CC" — confirming security channel origin; Greg KH
  reviewed Nathan Rebello's complementary patch
- [Phase 4] Web search confirmed multiple security researchers (Kelvin
  Mbogo, Nathan Rebello, Sebastián Alba Vives) reported related
  vulnerabilities; Nathan's patch cites KASAN slab-out-of-bounds report
- [Phase 5] `rg usbip_recv_iso`: confirmed 3 call sites (vhci_rx.c,
  stub_rx.c, vudc_rx.c), all invoked from kthread loops reading network
  PDUs
- [Phase 5] Read `vhci_rx.c:vhci_rx_pdu`: confirmed trigger path from
  TCP socket → `vhci_recv_ret_submit` → `usbip_recv_iso`, no
  authentication required
- [Phase 5] `rg USBIP_MAX_ISO_PACKETS`: confirmed constant exists in
  `usbip_common.h:130` and is used symmetrically in `stub_rx.c:381`
- [Phase 6] Verified buggy code is identical in stable-
  push/linux-{5.10.y, 5.15.y, 6.1.y, 6.6.y, 6.12.y, 6.18.y, 6.19.y} and
  `USBIP_MAX_ISO_PACKETS` exists in all of them
- [Phase 6] `git apply --check`: patch applies cleanly to current HEAD
  (stable/linux-7.0.y)
- [Phase 8] Failure mode verified as heap OOB write, KASAN-confirmed by
  Nathan Rebello on kernel 7.0.0-rc5; secondary NULL deref in
  `processcompl()` confirmed on 6.12.0

This commit is a textbook YES for stable: it fixes a network-reachable,
unauthenticated heap buffer overflow present in every supported stable
tree. The fix is minimal, uses an already-existing constant, was vetted
by the USB maintainer, and has been reproduced with KASAN by independent
researchers. The companion patch in the same area explicitly carries
`Cc: stable`.

**YES**

 drivers/usb/usbip/usbip_common.c | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/drivers/usb/usbip/usbip_common.c b/drivers/usb/usbip/usbip_common.c
index 29d776fbeef74..fd620e9600394 100644
--- a/drivers/usb/usbip/usbip_common.c
+++ b/drivers/usb/usbip/usbip_common.c
@@ -662,7 +662,7 @@ int usbip_recv_iso(struct usbip_device *ud, struct urb *urb)
 	void *buff;
 	struct usbip_iso_packet_descriptor *iso;
 	int np = urb->number_of_packets;
-	int size = np * sizeof(*iso);
+	int size;
 	int i;
 	int ret;
 	u32 total_length = 0;
@@ -670,11 +670,21 @@ int usbip_recv_iso(struct usbip_device *ud, struct urb *urb)
 	if (!usb_pipeisoc(urb->pipe))
 		return 0;
 
-	/* my Bluetooth dongle gets ISO URBs which are np = 0 */
-	if (np == 0)
-		return 0;
+	if (np <= 0 || np > USBIP_MAX_ISO_PACKETS) {
+		dev_err(&urb->dev->dev,
+			"recv iso: invalid number_of_packets %d\n", np);
+		/*
+		 * usbip_pack_ret_submit() already set urb->number_of_packets
+		 * from the wire.  Zero it so processcompl() does not iterate
+		 * OOB descriptors on the way out.
+		 */
+		urb->number_of_packets = 0;
+		return -EPROTO;
+	}
+
+	size = np * sizeof(*iso);
 
-	buff = kzalloc(size, GFP_KERNEL);
+	buff = kcalloc(np, sizeof(*iso), GFP_KERNEL);
 	if (!buff)
 		return -ENOMEM;
 
-- 
2.53.0


  parent reply	other threads:[~2026-04-28 10:43 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-28 10:40 [PATCH AUTOSEL 7.0] ALSA: hda/realtek: add quirk for HONOR MRB-XXX M1020 Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] tools/power/x86/intel-speed-select: Avoid current base freq as maximum Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] um: fix address-of CMSG_DATA() rvalue in stub Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] tty: serial: samsung_tty: avoid dev_dbg deadlock Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] drm/amdgpu: fix CPER ring header parsing Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] io_uring/rsrc: unify nospec indexing for direct descriptors Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] um: avoid struct sigcontext redefinition with musl Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] leds: lgm-sso: Fix typo in macro for src offset Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] fs/ntfs3: increase CLIENT_REC name field size Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] ksmbd: fix CreateOptions sanitization clobbering the whole field Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.1] thunderbolt: Disable CLx on Titan Ridge-based devices with old firmware Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.6] NFS: Use nlmclnt_shutdown_rpc_clnt() to safely shut down NLM Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] smb: client: compress: fix buffer overrun in lz77_compress() Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] drm/amd/display: Pass min page size from SOC BB to dml2_1 plane config Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] usb: dwc3: Support USB3340x ULPI PHY high-speed negotiation Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] smb: client: compress: fix counting in LZ77 match finding Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] mfd: mt6397: Properly fix CID of MT6328, MT6331 and MT6332 Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.1] um: Disable GCOV_PROFILE_ALL on 32-bit UML with Clang 20/21 Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] ASoC: qcom: x1e80100: limit speaker volumes Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] smb: client: compress: fix bad encoding on last LZ77 flag Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] fs/ntfs3: fix potential double iput on d_make_root() failure Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] scsi: storvsc: Handle PERSISTENT_RESERVE_IN truncation for Hyper-V vFC Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0] fs: aio: set VMA_DONTCOPY_BIT in mmap to fix NULL-pointer-dereference error Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] dt-bindings: arm64: add Marvell 7k COMe boards Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] ecryptfs: Set s_time_gran to get correct time granularity Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] usb: usbip: fix OOB read/write in usbip_pad_iso() Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] scsi: lpfc: Remove unnecessary ndlp kref get in lpfc_check_nlp_post_devloss Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] leds: core: Implement fallback to software node name for LED names Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] ntfs3: reject inodes with zero non-DOS link count Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] f2fs: fix to skip empty sections in f2fs_get_victim Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0] NFS: fix writeback in presence of errors Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.6] dt-bindings: rtc: microcrystal,rv3028: Allow to specify vdd-supply Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] fs: aio: reject partial mremap to avoid Null-pointer-dereference error Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] fs/ntfs3: fix $LXDEV xattr lookup Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] scsi: ufs: ufs-pci: Add support for Intel Nova Lake Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.1] scsi: lpfc: Fix incorrect txcmplq_cnt during cleanup in lpfc_sli_abort_ring() Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.18] drm/amdgpu: drop userq fence driver refs out of fence process() Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.15] ksmbd: fix O(N^2) DoS in smb2_lock via unbounded LockCount Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] usb: gadget: bdc: validate status-report endpoint indices Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] coda_flag_children(): fix a UAF Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] fbdev: savage: fix probe-path EDID cleanup leaks Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0] scsi: virtio_scsi: Move INIT_WORK calls to virtscsi_probe() Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] iio: ABI: fix current_trigger description Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] staging: octeon: fix free_irq dev_id mismatch in cvm_oct_rx_shutdown Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] mfd: intel-lpss: Add Intel Nova Lake-H PCI IDs Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] tty: serial: imx: keep dma request disabled before dma transfer setup Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-6.12] greybus: beagleplay: bound bootloader RX buffer copy Sasha Levin
2026-04-28 10:40 ` [PATCH AUTOSEL 7.0-5.10] serial: qcom-geni: Fix RTS behavior with flow control Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] selftests: fib_nexthops: test stale has_v4 on nexthop replace Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.1] ntfs3: fix OOB write in attr_wof_frame_info() Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] arm64: cputype: Add C1-Pro definitions Sasha Levin
2026-04-28 11:13   ` Mark Rutland
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] drm/amd/display: Fix HostVMMinPageSize unit mismatch in DML2.1 Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.12] 9p/trans_xen: make cleanup idempotent after dataring alloc errors Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0] drm/amdgpu: OR init_pte_flags into invalid leaf PTE updates Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.6] scsi: ufs: core: Disable timestamp for Kioxia THGJFJT0E25BAIP Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] f2fs: fix to freeze GC and discard threads quickly Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] scsi: esas2r: Fix __printf annotation on esas2r_log_master() Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] rtc: max77686: convert to i2c_new_ancillary_device Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.1] rtc: ti-k3: Add support to resume from IO DDR low power mode Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.12] bus: mhi: host: pci_generic: Add Telit FE912C04 modem support Sasha Levin
2026-04-28 10:41 ` Sasha Levin [this message]
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] clk: qcom: rcg2: expand frac table for mdss_pixel_clk_src Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] usb: usbip: validate iso frame actual_length in usbip_recv_iso() Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.12] bus: mhi: host: pci_generic: Add Qualcomm SDX35 modem Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0] drm/amd/display: Use overlay cursor when color pipeline is active Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] platform/x86: hp-wmi: Add support for Omen 16-wf1xxx (8C77) Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.12] smb: server: stop sending fake security descriptors Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] ALSA: usb-audio: Add quirk entries for NexiGo N930W webcam Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.15] ntfs3: fix memory leak in indx_create_allocate() Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] staging: fbtft: fix unchecked write return value in fb_agm1264k-fl Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.10] ipv6: Cap TLV scan in ip6_tnl_parse_tlv_enc_lim Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] scsi: lpfc: Add PCI ID support for LPe42100 series adapters Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.12] io_uring: take page references for NOMMU pbuf_ring mmaps Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-6.18] iio: imu: st_lsm6dsx: Add ACPI ID for SHIFT13mi gyroscope Sasha Levin
2026-04-28 10:41 ` [PATCH AUTOSEL 7.0-5.15] dt-bindings: clock: qcom,gcc-sc8180x: Add missing GDSCs Sasha Levin

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=20260428104133.2858589-61-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=addcontent08@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=patches@lists.linux.dev \
    --cc=shuah@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=valentina.manea.m@gmail.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