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: Boris Brezillon <boris.brezillon@collabora.com>,
	Steven Price <steven.price@arm.com>,
	Sasha Levin <sashal@kernel.org>,
	liviu.dudau@arm.com, dri-devel@lists.freedesktop.org
Subject: [PATCH AUTOSEL 6.19-6.18] drm/panthor: Always wait after sending a command to an AS
Date: Fri, 13 Feb 2026 19:59:51 -0500	[thread overview]
Message-ID: <20260214010245.3671907-111-sashal@kernel.org> (raw)
In-Reply-To: <20260214010245.3671907-1-sashal@kernel.org>

From: Boris Brezillon <boris.brezillon@collabora.com>

[ Upstream commit d2c6fde56d451ca48a5e03428535ce3dbc8fc910 ]

There's currently no situation where we want to issue a command to an
AS and not wait for this command to complete. The wait is either
explicitly done (LOCK, UNLOCK) or it's missing (UPDATE). So let's
turn write_cmd() into as_send_cmd_and_wait() that has the wait after
a command is sent.

v2:
- New patch

v3:
- Collect R-b

v4:
- No changes

Reviewed-by: Steven Price <steven.price@arm.com>
Link: https://patch.msgid.link/20251128084841.3804658-2-boris.brezillon@collabora.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

## Comprehensive Analysis

### 1. COMMIT MESSAGE ANALYSIS

The commit message states: *"There's currently no situation where we
want to issue a command to an AS and not wait for this command to
complete. The wait is either explicitly done (LOCK, UNLOCK) or it's
missing (UPDATE)."*

This is a clear admission that the `AS_COMMAND_UPDATE` command paths are
**missing a required wait** for command completion. The commit author
(Boris Brezillon, the panthor subsystem author) explicitly identifies
this as a bug: the hardware requires waiting for every AS command to
complete, but `UPDATE` commands were missing this wait.

### 2. CODE CHANGE ANALYSIS - THE BUG

#### Before the fix:

The original `write_cmd()` function at line 513-523 only:
1. Waits for the MMU to be ready to accept a command (`wait_ready()`
   before writing)
2. Writes the command to the `AS_COMMAND` register
3. **Does NOT wait for the command to complete**

```507:523:drivers/gpu/drm/panthor/panthor_mmu.c
static int wait_ready(struct panthor_device *ptdev, u32 as_nr)
{
        // ...polls AS_STATUS for AS_ACTIVE to clear...
}

static int write_cmd(struct panthor_device *ptdev, u32 as_nr, u32 cmd)
{
        int status;
        status = wait_ready(ptdev, as_nr);  // Wait BEFORE sending
        if (!status)
                gpu_write(ptdev, AS_COMMAND(as_nr), cmd);
        return status;  // Returns IMMEDIATELY - no wait AFTER
}
```

#### The inconsistent callers:

- **`lock_region()`** (line 556): Calls `write_cmd(AS_COMMAND_LOCK)` —
  the subsequent call to `wait_ready()` exists at line 591 in
  `mmu_hw_do_operation_locked()`. So LOCK effectively waited, but in a
  fragmented way.
- **`mmu_hw_do_operation_locked()`** (line 604): Calls
  `write_cmd(AS_COMMAND_UNLOCK)` followed by `wait_ready()` at line 607.
  So UNLOCK explicitly waited.
- **`panthor_mmu_as_enable()`** (line 636): Calls
  `write_cmd(AS_COMMAND_UPDATE)` — **NO subsequent `wait_ready()`!** The
  function returns immediately.
- **`panthor_mmu_as_disable()`** (line 651): Calls
  `write_cmd(AS_COMMAND_UPDATE)` — **NO subsequent `wait_ready()`!**
  Same bug.

#### What this means:

When the MMU address space is enabled or disabled via
`AS_COMMAND_UPDATE`, the code does not wait for the GPU hardware to
finish processing the command. This is a **hardware protocol violation**
— the software proceeds to use the address space (or assume it's been
disabled) before the GPU has actually completed the operation.

#### The consequences of this bug:

1. **`panthor_mmu_as_enable()`**: Called when activating a VM's address
   space for GPU usage (line 792 in `panthor_vm_active`). After this
   returns, the code sets `refcount_set(&vm->as.active_cnt, 1)` and
   unlocks the mutex. Subsequent GPU operations may start using this
   address space **before the UPDATE command has completed on the
   hardware**, potentially causing GPU faults, page translation
   failures, or data corruption.

2. **`panthor_mmu_as_disable()`**: Called in multiple critical paths:
   - MMU fault handler (line 1694): Disabling a faulting AS. If the
     UPDATE hasn't completed, subsequent fault handling may race.
   - Device suspend/reset (lines 1723, 2687): During orderly shutdown.
     If UPDATE doesn't complete, cleanup may be incomplete.
   - VM idle path (line 1843): Normal VM deactivation.

#### Cross-reference with panfrost driver:

The older `panfrost` driver (for earlier Mali GPUs) has the **exact same
bug pattern** at lines 188 and 204 — `panfrost_mmu_enable()` and
`panfrost_mmu_disable()` also call `write_cmd(AS_COMMAND_UPDATE)`
without waiting. This confirms it's a long-standing inherited bug from
the original code.

### 3. CLASSIFICATION

This is a **real bug fix**: it adds a missing hardware synchronization
wait after sending a command to the GPU's MMU address space hardware.
The fix ensures the software doesn't proceed until the hardware has
actually processed the address space configuration change.

However, the commit message is written more as a "cleanup/consolidation"
rather than explicitly calling out the bug's user-visible symptoms. The
author says the wait is "missing" for UPDATE, confirming it's a bug, but
doesn't describe specific symptoms (crashes, GPU faults, etc.).

### 4. SCOPE AND RISK ASSESSMENT

- **Lines changed**: ~30 lines across 1 file
- **Files touched**: 1 (`drivers/gpu/drm/panthor/panthor_mmu.c`)
- **Subsystem**: GPU driver (drm/panthor) — affects only Mali CSF GPUs
  (Valhall/5th Gen)
- **Risk**: LOW — The change adds a `wait_ready()` call (a 100μs timeout
  poll) that was already being done for all other AS commands. This is
  the correct hardware protocol.
- **Regression risk**: Very low. The only negative effect could be a
  very slight latency increase on the AS enable/disable path (up to
  100μs per operation), which is negligible.

### 5. USER IMPACT

- Panthor driver was introduced in kernel v6.10, so stable trees 6.10.y
  through 6.18.y would be affected
- Users of Mali Valhall (G710, G610) and 5th Gen (G720, G620) GPUs are
  affected
- This includes some Chromebook models, RK3588-based boards, and
  MediaTek platforms
- Without this fix, users may experience intermittent GPU faults,
  translation errors, or subtle corruption when VMs are
  activated/deactivated rapidly (e.g., during context switches,
  suspend/resume)

### 6. DEPENDENCY CHECK

The commit applies on top of `24f028b91ed3` ("drm/panthor: Simplify
mmu_hw_do_operation_locked"), which is already in the tree. The current
code in the tree already has the simplified
`mmu_hw_do_operation_locked()` with the switch statement that the diff's
context matches. The commit appears self-contained and doesn't require
other patches from its series.

However, the diff context shows it changes `lock_region()` to also
error-check and use the new combined `as_send_cmd_and_wait()`, and
`mmu_hw_do_operation_locked()` removes a now-redundant `wait_ready()`.
This is all within one function/file and is self-contained.

### 7. STABILITY INDICATORS

- **Reviewed-by: Steven Price** — ARM Mali kernel developer/maintainer
- The patch went through 4 revisions (v1 through v4), indicating careful
  review
- The author (Boris Brezillon) is the original panthor driver author

### 8. CONCERNS

- The commit is patch 2 of a series. We should check if the series has
  other critical patches. However, this specific commit is self-
  contained in its fix.
- The commit message frames this as consolidation rather than urgent
  bugfix. But the actual code change fixes a real, documented missing
  wait.
- The bug may be hard to trigger in practice if the hardware is fast
  enough to process UPDATE commands before subsequent operations happen.
  But under load or on slower hardware, it could manifest as
  intermittent GPU faults.

### VERDICT

This commit fixes a **real hardware synchronization bug** — a missing
`wait_ready()` after `AS_COMMAND_UPDATE` in the MMU address space
management. The fix is:
- Small and contained (1 file, ~30 lines)
- Obviously correct (all other AS commands already waited; this makes
  UPDATE consistent)
- Fixes a potential race between software and hardware that could cause
  GPU faults
- Low regression risk (just adds a hardware completion poll)
- Self-contained (no external dependencies beyond what's already in
  stable)
- Reviewed by the ARM Mali maintainer

While the bug may be hard to trigger in practice, the consequences (GPU
translation faults, potential data corruption) are serious when it does
trigger, and the fix is minimal and safe.

**YES**

 drivers/gpu/drm/panthor/panthor_mmu.c | 27 ++++++++++++---------------
 1 file changed, 12 insertions(+), 15 deletions(-)

diff --git a/drivers/gpu/drm/panthor/panthor_mmu.c b/drivers/gpu/drm/panthor/panthor_mmu.c
index f6339963e4960..d70acff33d41e 100644
--- a/drivers/gpu/drm/panthor/panthor_mmu.c
+++ b/drivers/gpu/drm/panthor/panthor_mmu.c
@@ -510,27 +510,29 @@ static int wait_ready(struct panthor_device *ptdev, u32 as_nr)
 	return ret;
 }
 
-static int write_cmd(struct panthor_device *ptdev, u32 as_nr, u32 cmd)
+static int as_send_cmd_and_wait(struct panthor_device *ptdev, u32 as_nr, u32 cmd)
 {
 	int status;
 
 	/* write AS_COMMAND when MMU is ready to accept another command */
 	status = wait_ready(ptdev, as_nr);
-	if (!status)
+	if (!status) {
 		gpu_write(ptdev, AS_COMMAND(as_nr), cmd);
+		status = wait_ready(ptdev, as_nr);
+	}
 
 	return status;
 }
 
-static void lock_region(struct panthor_device *ptdev, u32 as_nr,
-			u64 region_start, u64 size)
+static int lock_region(struct panthor_device *ptdev, u32 as_nr,
+		       u64 region_start, u64 size)
 {
 	u8 region_width;
 	u64 region;
 	u64 region_end = region_start + size;
 
 	if (!size)
-		return;
+		return 0;
 
 	/*
 	 * The locked region is a naturally aligned power of 2 block encoded as
@@ -553,7 +555,7 @@ static void lock_region(struct panthor_device *ptdev, u32 as_nr,
 
 	/* Lock the region that needs to be updated */
 	gpu_write64(ptdev, AS_LOCKADDR(as_nr), region);
-	write_cmd(ptdev, as_nr, AS_COMMAND_LOCK);
+	return as_send_cmd_and_wait(ptdev, as_nr, AS_COMMAND_LOCK);
 }
 
 static int mmu_hw_do_operation_locked(struct panthor_device *ptdev, int as_nr,
@@ -586,9 +588,7 @@ static int mmu_hw_do_operation_locked(struct panthor_device *ptdev, int as_nr,
 	 * power it up
 	 */
 
-	lock_region(ptdev, as_nr, iova, size);
-
-	ret = wait_ready(ptdev, as_nr);
+	ret = lock_region(ptdev, as_nr, iova, size);
 	if (ret)
 		return ret;
 
@@ -601,10 +601,7 @@ static int mmu_hw_do_operation_locked(struct panthor_device *ptdev, int as_nr,
 	 * at the end of the GPU_CONTROL cache flush command, unlike
 	 * AS_COMMAND_FLUSH_MEM or AS_COMMAND_FLUSH_PT.
 	 */
-	write_cmd(ptdev, as_nr, AS_COMMAND_UNLOCK);
-
-	/* Wait for the unlock command to complete */
-	return wait_ready(ptdev, as_nr);
+	return as_send_cmd_and_wait(ptdev, as_nr, AS_COMMAND_UNLOCK);
 }
 
 static int mmu_hw_do_operation(struct panthor_vm *vm,
@@ -633,7 +630,7 @@ static int panthor_mmu_as_enable(struct panthor_device *ptdev, u32 as_nr,
 	gpu_write64(ptdev, AS_MEMATTR(as_nr), memattr);
 	gpu_write64(ptdev, AS_TRANSCFG(as_nr), transcfg);
 
-	return write_cmd(ptdev, as_nr, AS_COMMAND_UPDATE);
+	return as_send_cmd_and_wait(ptdev, as_nr, AS_COMMAND_UPDATE);
 }
 
 static int panthor_mmu_as_disable(struct panthor_device *ptdev, u32 as_nr)
@@ -648,7 +645,7 @@ static int panthor_mmu_as_disable(struct panthor_device *ptdev, u32 as_nr)
 	gpu_write64(ptdev, AS_MEMATTR(as_nr), 0);
 	gpu_write64(ptdev, AS_TRANSCFG(as_nr), AS_TRANSCFG_ADRMODE_UNMAPPED);
 
-	return write_cmd(ptdev, as_nr, AS_COMMAND_UPDATE);
+	return as_send_cmd_and_wait(ptdev, as_nr, AS_COMMAND_UPDATE);
 }
 
 static u32 panthor_mmu_fault_mask(struct panthor_device *ptdev, u32 value)
-- 
2.51.0


  parent reply	other threads:[~2026-02-14  1:07 UTC|newest]

Thread overview: 128+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-14  0:58 [PATCH AUTOSEL 6.19-6.12] media: ipu6: Close firmware streams on streaming enable failure Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] ASoC: wm8962: Add WM8962_ADC_MONOMIX to "3D Coefficients" mask Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.15] HID: elecom: Add support for ELECOM HUGE Plus M-HT1MRBK Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.15] drm/v3d: Set DMA segment size to avoid debug warnings Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] media: chips-media: wave5: Fix conditional in start_streaming Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.1] spi-geni-qcom: initialize mode related registers to 0 Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] HID: multitouch: add eGalaxTouch EXC3188 support Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] media: mt9m114: Avoid a reset low spike during probe() Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] media: omap3isp: isp_video_mbus_to_pix/pix_to_mbus fixes Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.1] media: amphion: Clear last_buffer_dequeued flag for DEC_CMD_START Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/xe: Only toggle scheduling in TDR if GuC is running Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] spi: cadence-qspi: Try hard to disable the clocks Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] media: adv7180: fix frame interval in progressive mode Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.15] drm/amdkfd: Fix GART PTE for non-4K pagesize in svm_migrate_gart_map() Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] HID: pidff: Do not set out of range trigger button Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] drm/amd/display: Fix DP no audio issue Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/panel-edp: Add AUO B140QAX01.H panel Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: avoid dig reg access timeout on usb4 link training fail Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] ASoC: fsl: imx-rpmsg: use snd_soc_find_dai_with_mutex() in probe Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.6] spi: spi-mem: Limit octal DTR constraints to octal DTR situations Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] drm/amd/pm: Fix null pointer dereference issue Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] drm/amd/display: Fix wrong x_pos and y_pos for cursor offload Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] ASoC: sdw_utils: remove dai registered check Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] ALSA: hda: controllers: intel: add support for Nova Lake Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] drm/atmel-hlcdc: fix use-after-free of drm_crtc_commit after release Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.15] spi: stm32: fix Overrun issue at < 8bpw Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] drm/atmel-hlcdc: fix memory leak from the atomic_destroy_state callback Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/amd/display: Revert "init dispclk from bootup clock for DCN315" Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/xe: Covert return of -EBUSY to -ENOMEM in VM bind IOCTL Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.6] spi-geni-qcom: use xfer->bits_per_word for can_dma() Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] hwmon: (asus-ec-sensors) add Pro WS TRX50-SAGE WIFI A Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: Disable FEC when powering down encoders Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] ALSA: usb-audio: Add DSD support for iBasso DC04U Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/amdgpu: fix NULL pointer issue buffer funcs Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] media: cx25821: Fix a resource leak in cx25821_dev_setup() Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: Add USB-C DP Alt Mode lane limitation in DCN32 Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm: renesas: rz-du: mipi_dsi: fix kernel panic when rebooting for some panels Sasha Levin
2026-02-16 14:52   ` Hugo Villeneuve
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/amdgpu: fix the calculation of RAS bad page number Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] HID: logitech-hidpp: Add support for Logitech K980 Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/xe/vm: Skip ufence association for CPU address mirror VMA during MAP Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.1] ASoC: codecs: max98390: Check return value of devm_gpiod_get_optional() in max98390_i2c_probe() Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.6] media: v4l2-async: Fix error handling on steps after finding a match Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] PCI: Add Intel Nova Lake audio Device ID Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.1] media: rkisp1: Fix filter mode register configuration Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] hwmon: (nct6683) Add customer ID for ASRock Z590 Taichi Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] ASoC: qcom: q6asm: drop DSP responses for closed data streams Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/amd/display: Guard FAMS2 configuration updates Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] drm/amdgpu: mark invalid records with U64_MAX Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: Fix dsc eDP issue Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] media: ipu6: Ensure stream_mutex is acquired when dealing with node list Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.18] drm/xe/ggtt: Use scope-based runtime pm Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] media: mt9m114: Return -EPROBE_DEFER if no endpoint is found Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/amdgpu: Skip loading SDMA_RS64 in VF Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.15] drm/atmel-hlcdc: don't reject the commit if the src rect has fractional parts Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] ALSA: hda/realtek: Add quirk for Minisforum V3 SE Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-5.10] ASoC: es8328: Add error unwind in resume Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19] ALSA: ctxfi: Add quirk for SE-300PCIE variant (160b:0102) Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.1] drm/display/dp_mst: Add protection against 0 vcpi Sasha Levin
2026-02-14  0:58 ` [PATCH AUTOSEL 6.19-6.12] drm/panel: Fix a possible null-pointer dereference in jdi_panel_dsi_remove() Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] media: uvcvideo: Create an ID namespace for streaming output terminals Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] hyper-v: Mark inner union in hv_kvp_exchg_msg_value as packed Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] media: ipu6: Always close firmware stream Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ALSA: hda/realtek - Enable mute LEDs on HP ENVY x360 15-es0xxx Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] media: omap3isp: set initial format Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] drm/amdgpu/ras: Move ras data alloc before bad page check Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.6] drm/amdgpu: avoid a warning in timedout job handler Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ALSA: mixer: oss: Add card disconnect checkpoints Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] media: qcom: camss: Do not enable cpas fast ahb clock for SM8550 VFE lite Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] media: solo6x10: Check for out of bounds chip_id Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] HID: multitouch: add quirks for Lenovo Yoga Book 9i Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] drm/amdkfd: Relax size checking during queue buffer get Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: Fix GFX12 family constant checks Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] ALSA: usb-audio: presonus s18xx uses little-endian Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] gpio: aspeed-sgpio: Change the macro to support deferred probe Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] drm: Account property blob allocations to memcg Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ALSA: hda/realtek: fix LG Gram Style 14 speakers Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ASoC: SOF: Intel: hda: Fix NULL pointer dereference Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.1] hwmon: (f71882fg) Add F81968 support Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] spi: cadence-quadspi: Parse DT for flashes with the rest of the DT parsing Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] drm/amdkfd: Handle GPU reset and drain retry fault race Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] spi: cadence-qspi: Fix probe error path and remove Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] virt: vbox: uapi: Mark inner unions in packed structs as packed Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/amd/display: Correct DSC padding accounting Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/amd/display: Revert "init dispclk from bootup clock for DCN314" Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/atmel-hlcdc: destroy properly the plane state in the reset callback Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] drm/amdgpu: Refactor amdgpu_gem_va_ioctl for Handling Last Fence Update and Timeline Management v4 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.6] drm/amd/display: Ensure link output is disabled in backend reset for PLL_ON Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] hwmon: (emc2305) Fix a resource leak in emc2305_of_parse_pwm_child Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] modpost: Amend ppc64 save/restfpr symnames for -Os build Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.6] drm/amdgpu: add support for HDP IP version 6.1.1 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.1] HID: apple: Add "SONiX KN85 Keyboard" to the list of non-apple keyboards Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] gpu/panel-edp: add AUO panel entry for B140HAN06.4 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] drm/amdgpu: validate user queue size constraints Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] drm/amd/display: Correct FIXED_VS Link Rate Toggle Condition Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/amd/display: Fix mismatched unlock for DMUB HW lock in HWSS fast path Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.6] hwmon: (nct6775) Add ASUS Pro WS WRX90E-SAGE SE Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] hwmon: (nct7363) Fix a resource leak in nct7363_present_pwm_fanin Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] ASoC: soc-acpi-intel-ptl-match: use aggregated endpoint in ptl_rt722_l0_rt1320_l23 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] gpio: pca953x: Add support for TCAL6408 TCAL6416 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] media: chips-media: wave5: Process ready frames when CMD_STOP sent to Encoder Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ASoC: SOF: ipc4: Support for sending payload along with LARGE_CONFIG_GET Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.6] ALSA: hda/conexant: Add headset mic fix for MECHREVO Wujie 15X Pro Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] accel/amdxdna: Fix tail-pointer polling in mailbox_get_msg() Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/panel-edp: Add CSW MNE007QB3-1 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] cgroup/cpuset: Don't fail cpuset.cpus change in v2 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: only power down dig on phy endpoints Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] media: pvrusb2: fix URB leak in pvr2_send_request_ex Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] power: sequencing: fix missing state_lock in pwrseq_power_on() error path Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.10] media: dvb-core: dmxdevfilter must always flush bufs Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.6] media: mediatek: vcodec: Don't try to decode 422/444 VP9 Sasha Levin
2026-02-14  0:59 ` Sasha Levin [this message]
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] drm/panel: edp: add BOE NV140WUM-T08 panel Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ASoC: soc-acpi-intel-arl-match: change rt722 amp endpoint to aggregated Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/amd/display: Adjust PHY FSM transition to TX_EN-to-PLL_ON for TMDS on DCN35 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-5.15] ALSA: usb-audio: Add iface reset and delay quirk for AB13X USB Audio Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] ALSA: hda/realtek: add HP Victus 16-e0xxx mute LED quirk Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.18] drm/xe/xe3_lpg: Apply Wa_16028005424 Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19] drm/ast: Swap framebuffer writes on big-endian machines Sasha Levin
2026-02-14  0:59 ` [PATCH AUTOSEL 6.19-6.12] spi: geni-qcom: Fix abort sequence execution for serial engine errors Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-5.10] spi: spi-mem: Protect dirmap_create() with spi_mem_access_start/end Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-5.10] ASoC: wm8962: Don't report a microphone if it's shorted to ground on plug Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-6.1] ASoC: sunxi: sun50i-dmic: Add missing check for devm_regmap_init_mmio Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-6.12] hwmon: (dell-smm) Add support for Dell OptiPlex 7080 Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-6.18] drm/amd/display: Don't disable DPCD mst_en if sink connected Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-5.10] media: omap3isp: isppreview: always clamp in preview_try_format() Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19] ALSA: hda/realtek - Enable Mute LED for Lenovo platform Sasha Levin
2026-02-14  1:00 ` [PATCH AUTOSEL 6.19-6.12] drm/amd/display: Add signal type check for dcn401 get_phyd32clk_src 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=20260214010245.3671907-111-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=boris.brezillon@collabora.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=liviu.dudau@arm.com \
    --cc=patches@lists.linux.dev \
    --cc=stable@vger.kernel.org \
    --cc=steven.price@arm.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