dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: patches@lists.linux.dev, stable@vger.kernel.org
Cc: "Gustavo Kenji Mendonça Kaneko" <kaneko.dev@pm.me>,
	"Liviu Dudau" <liviu.dudau@arm.com>,
	"Sasha Levin" <sashal@kernel.org>,
	maarten.lankhorst@linux.intel.com, mripard@kernel.org,
	tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch,
	dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: [PATCH AUTOSEL 6.18-5.10] drm/arm/komeda: fix error handling for clk_prepare_enable() and callers
Date: Mon, 31 Aug 2026 09:21:02 -0400	[thread overview]
Message-ID: <20260831133314.4125787-34-sashal@kernel.org> (raw)
In-Reply-To: <20260831133314.4125787-1-sashal@kernel.org>

From: Gustavo Kenji Mendonça Kaneko <kaneko.dev@pm.me>

[ Upstream commit 6502eb8cfcd6f7bc5f1f8b73ee524112bd93319d ]

komeda_dev_resume() calls clk_prepare_enable() without checking the
return value. If the clock fails to enable, the function returns 0
(success) while IRQs are enabled and IOMMU is connected on potentially
unclocked hardware, causing undefined behavior on resume.

Propagate the error from clk_prepare_enable() and fix all call sites
in komeda_drv.c that previously ignored the return value of
komeda_dev_resume():

- komeda_platform_probe(): if resume fails, jump to err_destroy_mdev
  (skipping the suspend call, since the clock was never enabled)
- komeda_pm_resume(): propagate the error and skip
  drm_mode_config_helper_resume() on failure

This issue was found by code review without access to Komeda hardware.

Signed-off-by: Gustavo Kenji Mendonça Kaneko <kaneko.dev@pm.me>
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com>
Link: https://patch.msgid.link/20260609130828.1066038-1-kaneko.dev@pm.me
Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

# Stable Backport Analysis: `drm/arm/komeda: fix error handling for
clk_prepare_enable() and callers`

**Local tree:** `v6.18.44` (Makefile: 6.18.44)

---

## PHASE 1: COMMIT MESSAGE FORENSICS

### Step 1.1: Subject line
**Record:** `[drm/arm/komeda]` `[fix]` — Correct error handling for
`clk_prepare_enable()` and propagate errors to all callers.

### Step 1.2: Tags
**Record:**
- **Fixes:** — absent (expected for manual review)
- **Reported-by:** — absent
- **Tested-by:** — absent
- **Reviewed-by:** Liviu Dudau `<liviu.dudau@arm.com>` (Komeda/ARM DRM
  maintainer)
- **Acked-by:** — absent
- **Link:**
  https://patch.msgid.link/20260609130828.1066038-1-kaneko.dev@pm.me
- **Cc: stable:** — absent (not a negative signal)
- **Signed-off-by:** Gustavo Kenji Mendonça Kaneko (author); Liviu Dudau
  (maintainer); ignore pipeline-added Sasha Levin SOB

**Notable:** Reviewed by subsystem maintainer. No syzbot/user crash
report.

### Step 1.3: Body analysis
**Record:**
- **Bug:** `komeda_dev_resume()` calls `clk_prepare_enable()` without
  checking its return value.
- **Symptom:** On clock-enable failure, function returns 0 (success)
  while IRQs are enabled and IOMMU is connected on potentially unclocked
  hardware.
- **Failure mode:** Undefined behavior — MMIO to display blocks without
  a running clock.
- **Affected paths:** System suspend/resume (`komeda_pm_resume`), probe
  when runtime PM is disabled, and the core resume helper itself.
- **Root cause:** Missing error propagation from `clk_prepare_enable()`
  through resume call chain.
- **Version info:** None stated.
- **Discovery:** Code review only; author had no Komeda hardware.

### Step 1.4: Hidden bug fix detection
**Record:** Explicit bug fix, not disguised cleanup. Classic missing-
return-value-check pattern in a PM/resume path.

---

## PHASE 2: DIFF ANALYSIS

### Step 2.1: Inventory
**Record:**
| File | Changes |
|------|---------|
| `komeda_dev.c` | +4 / -1 (check `clk_prepare_enable` return) |
| `komeda_drv.c` | +10 / -4 (propagate errors in probe and system PM
resume) |

**Functions modified:** `komeda_dev_resume()`,
`komeda_platform_probe()`, `komeda_pm_resume()`
**Scope:** Single-driver, surgical fix (~15 net lines). Two files, one
subsystem.

### Step 2.2: Code flow per hunk

**Hunk 1 — `komeda_dev_resume()`:**
- **Before:** `clk_prepare_enable()` return ignored; always proceeds to
  `enable_irq()` and `connect_iommu()`, returns 0.
- **After:** On clock failure, return error immediately; skip IRQ/IOMMU
  setup.
- **Path:** Resume / probe-init path.

**Hunk 2 — `komeda_platform_probe()`:**
- **Before:** `komeda_dev_resume()` called with ignored return; probe
  continues to KMS attach on failure.
- **After:** On failure, `goto err_destroy_mdev` (skips
  `komeda_dev_suspend()` since clock was never enabled).
- **Path:** Probe error path when runtime PM is not enabled.

**Hunk 3 — `komeda_pm_resume()`:**
- **Before:** `komeda_dev_resume()` failure ignored;
  `drm_mode_config_helper_resume()` always runs.
- **After:** Propagate resume error; skip DRM mode-config resume on
  hardware failure.
- **Path:** System sleep resume.

### Step 2.3: Bug mechanism
**Record:** **Category:** Error-path / logic correctness fix.
**Mechanism:** Ignored `clk_prepare_enable()` error allows subsequent
MMIO (`d71_enable_irq()` → `malidp_write32_mask()` on GCU/CU/LPU/DOU
blocks; `d71_connect_iommu()` → GCU/LPU register writes) on unclocked
hardware, while callers believe resume succeeded.

### Step 2.4: Fix quality
**Record:**
- Fix is minimal and follows standard kernel error-propagation patterns.
- `err_destroy_mdev` correctly avoids calling `komeda_dev_suspend()`
  when resume never enabled the clock.
- `komeda_rt_pm_resume()` already returned `komeda_dev_resume()`'s
  value; this patch completes coverage for probe and system PM.
- **Regression risk:** Low. Only adds early error returns on failure
  paths.
- **Note:** `enable_irq()` and `connect_iommu()` return values remain
  ignored (pre-existing; out of scope).

---

## PHASE 3: GIT HISTORY INVESTIGATION

### Step 3.1: Blame
**Record:** Buggy `clk_prepare_enable()` without check introduced in
`2ebb6701654e0d` ("drm/komeda: Adds power management support",
2019-09-26). IRQ/IOMMU code added in `efb46508851874` (2019-12-12). Bug
has existed since Komeda PM support landed.

### Step 3.2: Fixes: tag
**Record:** N/A — no `Fixes:` tag in commit message.

### Step 3.3: Related file history
**Record:** Recent komeda changes in this tree are unrelated (FB
creation, AFBC overflow fix, DRM client setup). No prior fix for this
clk error-handling issue. Standalone patch, not part of a series.

### Step 3.4: Author commits
**Record:** No prior komeda commits from Kaneko in this tree. Fix
reviewed/committed by maintainer Liviu Dudau.

### Step 3.5: Dependencies
**Record:** No dependencies. No prerequisite commits. Self-contained.

---

## PHASE 4: MAILING LIST AND EXTERNAL RESEARCH

### Step 4.1: Original discussion
**Record:** Link from commit message (`patch.msgid.link`) blocked by
Anubis bot protection. `b4 dig` requires a commit hash; commit is not in
this tree, so `b4 dig -c` could not be used. Lore.kernel.org search also
blocked. **Could not retrieve mailing list thread content.**

### Step 4.2: Reviewers
**Record:** UNVERIFIED via b4 `-w`. Commit message confirms **Reviewed-
by: Liviu Dudau** (ARM Komeda maintainer).

### Step 4.3: Bug report
**Record:** No external bug report. Author states issue found by code
review without hardware access.

### Step 4.4: Related patches / series
**Record:** Standalone 1-patch fix. No series dependencies identified.

### Step 4.5: Stable list history
**Record:** UNVERIFIED — lore stable search blocked.

---

## PHASE 5: CODE SEMANTIC ANALYSIS

### Step 5.1: Key functions
**Record:** `komeda_dev_resume()`, `komeda_platform_probe()`,
`komeda_pm_resume()`.

### Step 5.2: Callers
**Record:**
| Caller | Context |
|--------|---------|
| `komeda_platform_probe()` | Device probe, when
`!pm_runtime_enabled(dev)` |
| `komeda_rt_pm_resume()` | Runtime PM resume (already propagated
return) |
| `komeda_pm_resume()` | System sleep resume |

Komeda supports `arm,mali-d71` and `arm,mali-d32` (local tree; mainline
also has `armchina,linlon-d6`).

### Step 5.3: Callees
**Record:** `clk_prepare_enable()` → on success,
`mdev->funcs->enable_irq()` (MMIO mask writes) and optional
`connect_iommu()` (MMIO + timeout polling).

### Step 5.4: Reachability
**Record:** Triggered on every system resume and probe (when runtime PM
disabled) for Komeda hardware. `CONFIG_DRM_KOMEDA` tristate driver for
ARM SoCs with Mali-D71/D32 display. Reachable from kernel PM resume —
not a userspace syscall path, but affects all suspend/resume cycles on
affected hardware.

### Step 5.5: Similar patterns
**Record:** Other DRM drivers in this tree have received clk error-
handling fixes (e.g., mediatek, rockchip, cdns-mhdp). Same class of bug.

---

## PHASE 6: CROSS-REFERENCE WITH LOCAL TREE (6.18.y)

### Step 6.1: Buggy code present?
**Record:** **YES.** Current tree at `komeda_dev.c:316` has unchecked
`clk_prepare_enable(mdev->aclk)`. Callers at `komeda_drv.c:78` and
`:144` ignore the return value. Bug present since 2019, well before 6.18
branch.

### Step 6.2: Backport complications
**Record:** **Clean apply expected.** Local
`komeda_drv.c`/`komeda_dev.c` match the patch's "before" state at all
change sites. Only cosmetic difference: mainline `of_match` includes
`armchina,linlon-d6`; that entry is outside the fix hunks and does not
affect applicability.

### Step 6.3: Related fixes already present?
**Record:** **No.** `git log --grep` found no prior komeda clk error-
handling fix in this tree.

---

## PHASE 7: SUBSYSTEM CONTEXT

### Step 7.1: Subsystem criticality
**Record:** **drivers/gpu/drm/arm/komeda** — PERIPHERAL (ARM Mali
display IP, embedded/SoC). Important for platforms using Komeda, not
universal.

### Step 7.2: Subsystem activity
**Record:** Moderately active in 6.18.y (client setup, DMA mask, AFBC
fixes). Mature driver with ongoing maintenance.

---

## PHASE 8: IMPACT AND RISK ASSESSMENT

### Step 8.1: Who is affected
**Record:** Users of `CONFIG_DRM_KOMEDA` on ARM SoCs with Mali-D71/D32
(and linlon-d6 on newer trees). Platform-specific, not all kernel users.

### Step 8.2: Trigger conditions
**Record:** `clk_prepare_enable(mdev->aclk)` returns an error — clock
provider failure, DT misconfiguration, resume ordering issue, power-
domain not ready. Uncommon on healthy systems, more plausible during
suspend/resume or probe on misconfigured/problematic platforms. Not
userspace-triggerable directly.

### Step 8.3: Failure mode severity
**Record:** MMIO to display controller blocks without clock → bus hang,
kernel oops, or unpredictable hardware behavior. Function returns
success, so PM stack and DRM resume continue on broken hardware.
**Severity: HIGH** (potential crash/hang on resume); not CRITICAL (no
demonstrated exploit, rare trigger, no user reports).

### Step 8.4: Risk-benefit
**Record:**
- **Benefit:** Prevents undefined hardware access and false-success
  resume on clock failure; correct probe teardown on init failure.
- **Risk:** Very low — ~15 lines, error-path only, maintainer-reviewed.
- **Ratio:** Favorable for stable. Conservative error handling with
  minimal regression surface.

---

## PHASE 9: FINAL SYNTHESIS

### Step 9.1: Evidence summary

**FOR backport:**
- Real, verifiable bug: ignored `clk_prepare_enable()` return since 2019
- Subsequent code performs MMIO (`enable_irq`, `connect_iommu`)
  requiring clock
- Fix propagates errors through probe and system PM resume
- Small, surgical, maintainer-reviewed (Liviu Dudau)
- Bug exists in this 6.18.y tree; patch applies at all change sites
- PM/resume error-handling fixes are standard stable material

**AGAINST backport:**
- No user report, syzbot report, or hardware reproduction
- Trigger (clock enable failure) likely rare on production systems
- Driver affects a limited hardware population
- Could not verify mailing list discussion (lore blocked)

**Unresolved:**
- Full review thread content unavailable
- No confirmation of explicit stable nomination in review

### Step 9.2: Stable rules checklist
| Criterion | Result |
|-----------|--------|
| 1. Obviously correct and tested? | **PASS** — Standard pattern;
maintainer reviewed; no hardware test claimed |
| 2. Fixes a real bug? | **PASS** — Ignored error + false success is a
real logic bug |
| 3. Important issue? | **PASS** — HIGH: potential crash/hang on resume
via unclocked MMIO |
| 4. Small and contained? | **PASS** — ~15 lines, 2 files, one driver |
| 5. No new features/APIs? | **PASS** — Error propagation only |
| 6. Applies to local tree? | **PASS** — Buggy code confirmed in
v6.18.44 |

### Step 9.3: Exception categories
**Record:** N/A — not a device ID, quirk, DT, build, or docs fix.
Qualifies on bug-fix merits.

### Step 9.4: Decision rationale

For **this 6.18.y tree**, the Komeda driver is present and has carried
this resume error-handling bug since 2019. When `clk_prepare_enable()`
fails, the driver enables IRQs and connects IOMMU via MMIO on unclocked
hardware while reporting success — a legitimate PM correctness bug with
crash/hang potential. The fix is minimal, reviewed by the subsystem
maintainer, and should apply cleanly. The lack of a user report lowers
urgency but does not negate the technical merit; stable trees routinely
take ignored-return-value fixes in driver PM paths.

---

## Verification

- **[Phase 1]** Parsed subject, tags, body from provided commit message
- **[Phase 1]** Confirmed Reviewed-by: Liviu Dudau; no Reported-
  by/syzbot/Fixes tags
- **[Phase 2]** Diff analysis: 2 files, 3 functions, error-propagation
  pattern verified
- **[Phase 2]** Read `d71_enable_irq()` and `d71_connect_iommu()` — both
  perform MMIO requiring clock
- **[Phase 3]** `git blame -L 314,325 komeda_dev.c`: bug since
  `2ebb6701654e0d` (2019-09-26)
- **[Phase 3]** `git show 2ebb6701654e0d`: original PM support commit
- **[Phase 3]** `git log -20 -- komeda_dev.c komeda_drv.c`: no related
  prior fix
- **[Phase 4]** WebFetch patch.msgid.link: **BLOCKED** (Anubis)
- **[Phase 4]** WebFetch lore.kernel.org: **BLOCKED** (Anubis)
- **[Phase 4]** `b4 dig -c`: not usable — commit not in local tree
- **[Phase 5]** Grep callers: probe (line 78), rt_pm_resume (123),
  pm_resume (144)
- **[Phase 5]** Verified `komeda_rt_pm_resume` already returns resume
  error; probe/pm_resume did not
- **[Phase 6]** `git describe HEAD`: v6.18.44
- **[Phase 6]** Read current `komeda_dev.c:314-325` and
  `komeda_drv.c:76-146`: buggy code confirmed present
- **[Phase 6]** Line-by-line comparison: patch hunks match local file
  structure
- **[Phase 6]** `git log --grep`: no duplicate fix in tree
- **[Phase 7]** Read `drivers/gpu/drm/arm/display/Kconfig`:
  `CONFIG_DRM_KOMEDA` tristate, depends on DRM+OF+COMMON_CLK
- **[Phase 8]** Assessed severity from verified MMIO-after-clk-failure
  code path
- **UNVERIFIED:** Mailing list review discussion content
- **UNVERIFIED:** Explicit stable nomination in review thread
- **UNVERIFIED:** Formal `git apply --check` (test patch malformed;
  manual hunk comparison confirms applicability)

**YES**

 drivers/gpu/drm/arm/display/komeda/komeda_dev.c |  6 +++++-
 drivers/gpu/drm/arm/display/komeda/komeda_drv.c | 14 +++++++++-----
 2 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_dev.c b/drivers/gpu/drm/arm/display/komeda/komeda_dev.c
index 5ba62e637a616..9aad1d1d28ec0 100644
--- a/drivers/gpu/drm/arm/display/komeda/komeda_dev.c
+++ b/drivers/gpu/drm/arm/display/komeda/komeda_dev.c
@@ -313,7 +313,11 @@ void komeda_dev_destroy(struct komeda_dev *mdev)
 
 int komeda_dev_resume(struct komeda_dev *mdev)
 {
-	clk_prepare_enable(mdev->aclk);
+	int err;
+
+	err = clk_prepare_enable(mdev->aclk);
+	if (err)
+		return err;
 
 	mdev->funcs->enable_irq(mdev);
 
diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_drv.c b/drivers/gpu/drm/arm/display/komeda/komeda_drv.c
index 358c1512b0879..fc1816c634087 100644
--- a/drivers/gpu/drm/arm/display/komeda/komeda_drv.c
+++ b/drivers/gpu/drm/arm/display/komeda/komeda_drv.c
@@ -74,8 +74,11 @@ static int komeda_platform_probe(struct platform_device *pdev)
 	}
 
 	pm_runtime_enable(dev);
-	if (!pm_runtime_enabled(dev))
-		komeda_dev_resume(mdrv->mdev);
+	if (!pm_runtime_enabled(dev)) {
+		err = komeda_dev_resume(mdrv->mdev);
+		if (err)
+			goto err_destroy_mdev;
+	}
 
 	mdrv->kms = komeda_kms_attach(mdrv->mdev);
 	if (IS_ERR(mdrv->kms)) {
@@ -93,7 +96,7 @@ static int komeda_platform_probe(struct platform_device *pdev)
 		pm_runtime_disable(dev);
 	else
 		komeda_dev_suspend(mdrv->mdev);
-
+err_destroy_mdev:
 	komeda_dev_destroy(mdrv->mdev);
 
 free_mdrv:
@@ -139,11 +142,12 @@ static int __maybe_unused komeda_pm_suspend(struct device *dev)
 static int __maybe_unused komeda_pm_resume(struct device *dev)
 {
 	struct komeda_drv *mdrv = dev_get_drvdata(dev);
+	int err = 0;
 
 	if (!pm_runtime_status_suspended(dev))
-		komeda_dev_resume(mdrv->mdev);
+		err = komeda_dev_resume(mdrv->mdev);
 
-	return drm_mode_config_helper_resume(&mdrv->kms->base);
+	return err ? err : drm_mode_config_helper_resume(&mdrv->kms->base);
 }
 
 static const struct dev_pm_ops komeda_pm_ops = {
-- 
2.53.0


  parent reply	other threads:[~2026-08-31 13:34 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260831133314.4125787-1-sashal@kernel.org>
2026-08-31 13:20 ` [PATCH AUTOSEL 6.18] drm/panel/tdo-tl070wsh30: Use refcounted allocation in place of devm_kzalloc() Sasha Levin
2026-08-31 13:42   ` sashiko-bot
2026-08-31 13:21 ` Sasha Levin [this message]
2026-08-31 13:59   ` [PATCH AUTOSEL 6.18-5.10] drm/arm/komeda: fix error handling for clk_prepare_enable() and callers sashiko-bot
2026-08-31 13:21 ` [PATCH AUTOSEL 6.18-6.12] drm/amdgpu: validate and share PSP fw_pri_buf copies via psp_copy_fw Sasha Levin
2026-08-31 14:00   ` sashiko-bot
2026-08-31 13:21 ` [PATCH AUTOSEL 6.18-6.12] drm: rz-du: Ensure correct suspend/resume ordering with VSP Sasha Levin
2026-08-31 13:21 ` [PATCH AUTOSEL 6.18-6.12] drm/amd/display: Check for sharpening case when calculating max vtaps for scaler Sasha Levin
2026-08-31 13:21 ` [PATCH AUTOSEL 6.18] drm/amdgpu: validate RAS EEPROM tbl_size before record count Sasha Levin
2026-08-31 14:20   ` sashiko-bot
2026-08-31 13:22 ` [PATCH AUTOSEL 6.18] drm/amd/ras: Fix CPER ring debugfs read overflow Sasha Levin
2026-08-31 14:24   ` sashiko-bot
2026-08-31 13:22 ` [PATCH AUTOSEL 6.18-5.10] drm/arm/malidp: use clk_bulk API in runtime PM resume and suspend Sasha Levin
2026-08-31 14:33   ` sashiko-bot
2026-08-31 13:22 ` [PATCH AUTOSEL 6.18] drm/panel-edp: Add AUO B133HAN06.6 and BOE NV133FHM-N4F V8.0 Sasha Levin
2026-08-31 13:22 ` [PATCH AUTOSEL 6.18] drm/amd/display: Avoid DPMS-on for phantom stream Sasha Levin
2026-08-31 14:35   ` sashiko-bot
2026-08-31 13:22 ` [PATCH AUTOSEL 6.18-5.10] drm/panel: simple: Add AM-1280800W8TZQW-T00H Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.12] drm/panel: Enable GPIOLIB for panels which uses functions from it Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.6] drm/amdkfd: Let driver decide buffer size at AMDKFD_IOC_GET_DMABUF_INFO ioctl Sasha Levin
2026-08-31 14:44   ` sashiko-bot
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.12] drm/amd/display: Initialize dsc_caps to 0 Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.1] drm/bridge: tc358768: Set pre_enable_prev_first for reverse order Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18] drm/xe: Fix null pointer dereference in devcoredump cleanup Sasha Levin
2026-08-31 14:54   ` sashiko-bot
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.12] drm/imagination: Populate FW common context ID before passing to the FW Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18] drm: renesas: rzg2l_mipi_dsi: Fix deassert/assert of CMN_RSTB signal Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.12] drm/amdkfd: Properly acquire queue buffers in CRIU restore Sasha Levin
2026-08-31 14:56   ` sashiko-bot
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-6.6] drm/amdgpu: flush pending RCU callbacks on module unload Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18] drm/panel-edp: Add CSW PNB601LS1-2 and LGD LP116WHA-SPB1 Sasha Levin
2026-08-31 13:23 ` [PATCH AUTOSEL 6.18-5.10] drm/amd/pm/si: Fix updating clock limits from power states Sasha Levin
2026-08-31 14:58   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-5.10] drm/gma500: return errors from Oaktrail HDMI I2C reads Sasha Levin
2026-08-31 15:04   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18] drm/imagination: Don't timeout job if its fence has been signaled Sasha Levin
2026-08-31 15:13   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-5.15] host1x: bus: Fix missing ops null check in error teardown Sasha Levin
2026-08-31 15:13   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-5.10] drm/amd/pm/si: Don't schedule thermal work when queue isn't initialized Sasha Levin
2026-08-31 15:16   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-6.12] fbcon: don't suspend/resume when vc is graphics mode Sasha Levin
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-6.12] drm/mediatek: dsi: Add compatible for mt8167-dsi Sasha Levin
2026-08-31 15:22   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18] drm/amd/display: Fix 8K Mode Not Parsed by EDID Sasha Levin
2026-08-31 15:25   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-5.10] drm/amd/display: Fix CRC open failure during active rendering Sasha Levin
2026-08-31 15:24   ` sashiko-bot
2026-08-31 13:24 ` [PATCH AUTOSEL 6.18-5.15] drm/gud: Add RCade Display Adapter VID/PID pair Sasha Levin
2026-08-31 13:25 ` [PATCH AUTOSEL 6.18] drm/amdgpu: cap ATOM command table nesting depth Sasha Levin
2026-08-31 15:24   ` sashiko-bot
2026-08-31 13:25 ` [PATCH AUTOSEL 6.18-6.6] drm/nouveau/gsp: add SEC2 to GA100 chip table Sasha Levin
2026-08-31 13:25 ` [PATCH AUTOSEL 6.18] drm/amd/ras: reset CPER ring on corrupt entry size Sasha Levin
2026-08-31 15:40   ` sashiko-bot
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18-5.10] fbdev: pm2fb: unwind WC setup on probe failure Sasha Levin
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18-6.6] drm/amdgpu: Use system unbound workqueue for soft IH ring Sasha Levin
2026-08-31 15:53   ` sashiko-bot
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18] drm/amdgpu/userq: pin mqd and fw object bo to avoid eviction Sasha Levin
2026-08-31 15:50   ` sashiko-bot
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18] fbdev: Wrap user-invoked calls to fb_set_var() in helper Sasha Levin
2026-08-31 15:54   ` sashiko-bot
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18-6.1] drm/gem: Consider GEM object reclaimable if shrinking fails Sasha Levin
2026-08-31 15:59   ` sashiko-bot
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18] drm/amdgpu: check and drop invalid bad page records Sasha Levin
2026-08-31 13:26 ` [PATCH AUTOSEL 6.18] drm/panel-edp: Add BOE NT140WHM-N4T, BOE NT140WHM-T05, BOE NV140FHM-N40 Sasha Levin
2026-08-31 13:27 ` [PATCH AUTOSEL 6.18-6.6] drm/amdkfd: Fix OOB memory exposure in get_wave_state() Sasha Levin
2026-08-31 16:12   ` sashiko-bot
2026-08-31 13:27 ` [PATCH AUTOSEL 6.18-6.6] drm/amdgpu: fix buffer overflow during vBIOS update Sasha Levin
2026-08-31 16:16   ` sashiko-bot
2026-08-31 13:27 ` [PATCH AUTOSEL 6.18-6.12] drm/amdgpu: harden FRU PIA parsing with bounded helpers Sasha Levin
2026-08-31 13:27 ` [PATCH AUTOSEL 6.18-6.6] drm/amdkfd: Unwind debug trap enable on copy_to_user failure Sasha Levin
2026-08-31 16:30   ` sashiko-bot
2026-08-31 13:27 ` [PATCH AUTOSEL 6.18-6.6] drm/amdkfd: fix UAF race in destroy_queue_cpsch Sasha Levin
2026-08-31 16:36   ` sashiko-bot
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18-6.12] drm/amdgpu: Prefer ROM BAR for default VGA device Sasha Levin
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18] drm/panel-edp: Add AUO B140XTN07.5, AUO B140HAK03.5, AUO B116XTN02.3, AUO B140XTK02.4, AUO B140HAN07.7 Sasha Levin
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18-6.1] drm/amdkfd: Check bounds for allocate_sdma_queue restore_sdma_id Sasha Levin
2026-08-31 16:43   ` sashiko-bot
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18-6.12] drm/nouveau/bios: skip the IFR header if present Sasha Levin
2026-08-31 16:44   ` sashiko-bot
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18-6.6] drm/amd/pm: Check SMUv13.0.6/12 metrics integrity Sasha Levin
2026-08-31 16:51   ` sashiko-bot
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18] drm/amdgpu: avoid integer overflow in VA range check Sasha Levin
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18-6.1] drm/amd/pm: bound pp_dpm_set_pp_table() memcpy Sasha Levin
2026-08-31 16:46   ` sashiko-bot
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18-6.6] drm/amdkfd: check find_first_zero_bit before __set_bit on kfd->doorbell_bitmap Sasha Levin
2026-08-31 16:48   ` sashiko-bot
2026-08-31 13:28 ` [PATCH AUTOSEL 6.18] drm/amdgpu/ras: add ras_suspend callback and use it for cp_ecc_error_irq Sasha Levin
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18] drm/amdkfd: fix SMI event cross-process information leak Sasha Levin
2026-08-31 16:54   ` sashiko-bot
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18] drm/amdgpu: add first record offset check Sasha Levin
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18-6.6] drm/amd/display: Fix DPMS using partially updated pipe context Sasha Levin
2026-08-31 17:15   ` sashiko-bot
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18-6.12] drm/amd/display: Find link encoder for flexible DIG mapping cases Sasha Levin
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18] drm/amdgpu/pm: fix SmartShift bias sysfs store PM refcount on parse error Sasha Levin
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18] drm/panel-edp: Add LG LP129WT232166 panel Sasha Levin
2026-08-31 13:29 ` [PATCH AUTOSEL 6.18] drm/amdgpu: Bound GPIO I2C table entry count from VBIOS Sasha Levin
2026-08-31 17:14   ` sashiko-bot
2026-08-31 13:30 ` [PATCH AUTOSEL 6.18-6.6] drm/panel: jadard-jd9365da-h3: set prepare_prev_first Sasha Levin
2026-08-31 17:11   ` sashiko-bot
2026-08-31 13:30 ` [PATCH AUTOSEL 6.18] drm/amdgpu: use atomic operation to achieve lockless serialization Sasha Levin
2026-08-31 17:20   ` sashiko-bot
2026-08-31 13:30 ` [PATCH AUTOSEL 6.18-6.12] drm/dp: Add DSC virtual DPCD quirk for Realtek MST branch device Sasha Levin
2026-08-31 13:30 ` [PATCH AUTOSEL 6.18] drm/xe/guc: Add support for NO_RESPONSE_BUSY in CTB Sasha Levin
2026-08-31 13:31 ` [PATCH AUTOSEL 6.18-6.1] drm/amdkfd: Check bounds on allocate_doorbell Sasha Levin
2026-08-31 17:38   ` sashiko-bot

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=20260831133314.4125787-34-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=airlied@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=kaneko.dev@pm.me \
    --cc=linux-kernel@vger.kernel.org \
    --cc=liviu.dudau@arm.com \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    --cc=patches@lists.linux.dev \
    --cc=simona@ffwll.ch \
    --cc=stable@vger.kernel.org \
    --cc=tzimmermann@suse.de \
    /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