Repository navigation
Conversation
The device writes event elements into coherent memory before publishing its event ring read pointer. Both gpi_process_events() and gpi_mark_stale_events() read that pointer through readl_relaxed() and then consume the event memory without an ordering guarantee. On architectures such as arm64, this can expose a published event before all its fields are visible. Denali QSPI exposed this as an accepted completion whose length was observed as zero. Use ordered MMIO reads only for the event pointer. Keep all other register accesses relaxed. This follows the ordered ioread32() pattern used by the Qualcomm IPA GSI event-ring consumer. Fixes: 5d0c353 ("dmaengine: qcom: Add GPI dma driver") Signed-off-by: Leon Silcott <leon@boasi.io> (cherry picked from commit bd9f5e2)
|
The two newly proposed shared-path containment corrections are explicitly deferred in OE issue #67, recorded on 4 October 2026. This preserves the existing GPI port and tested combined v8 source at The issue describes the conditional generic stale-event pointer comparison and latent ordinary-SPI duplex flag difference, their evidence limits, and follow-up acceptance. Reachability on other, non-QSPI GPI channels on Denali is unproven, not disproven. The separate intermediate-width portability proposal needs its own disposition; it is not silently included in this two-fix decision. This is not shared-device qualification, acceptance of every intentional deviation, or authorization to merge this draft. Existing contributor clarification, complete CI policy and final-composition gates remain. The fork's SP11 integration workflow, validator and supporting policy infrastructure must stay out of upstream kernel submissions; retain them in this fork. |
|
Closed as an inactive/consolidated review vehicle during the 20 October kernel queue cleanup—not merged, newly hardware-qualified or accepted for upstream by this closure. Previously recorded v8 acceptance evidence stands unchanged; this closure only retires the review vehicle. The original source head and contributor history remain retained. Where a closed topic branch is removed, its verified The separate tested-source staging route and all outstanding upstream reconstruction, provenance, fork-CI and deviation/promotion gates are tracked in OE #33. Experimental reverse-engineering PRs remain separate and unmerged. Beta/default branches and installed kernels are unchanged. Retained exact source: f9c68b9c62f651652bfe6cbe7de0f1c18effd63e. |
Current October 4 checkpoint
The exact combined v8 trial is documented in the
qualification report and combined PR #68.
Its ordinary-use report is joined by a bounded three-cycle camera/reopen/
indicator check in Power Saver with simultaneous quiet playback. This is
combined-candidate evidence, not a standalone installation or hardware
qualification of this topic head. Source, dependency base and draft state stay
unchanged. Earlier preparation text below is historical; old 7.2.2 review/test
vehicles are now closed as superseded, with history/evidence retained.
Earlier source/review checkpoint
Held 7.2.5 dependency — do not merge
Review the one GPI event-ordering port at
f9c68b9c62f651652bfe6cbe7de0f1c18effd63eagainst the refresh branch in #51(
bdae86ee3b4e). This dependency remains separate from Golden playback,camera and battery/profile. Historical #45 remains unchanged and held.
Scope and provenance
Preserve event-ring pointer read ordering in
drivers/dma/qcom/gpi.c, retainingthe original author/date/message and cherry-pick source trailer. This shared
driver change is not automatically non-Denali-safe or touchscreen-qualified.
No contributor sign-off is invented.
Evidence and open gates
finished package checks with this dependency. Their builds are not
relabeled as an exact standalone GPI source build or hardware acceptance.
Prior touchscreen freezes remain critical negative evidence; passing package
checks does not waive that history. The beta-only workflow does not run
automatically for this stacked draft. Keep v23 as the recovery reference.
The eventual target is
sp11/ubuntu-qcom-x1e-7.2.y-beta. Do not merge into therefresh staging branch. Qualify the base/input dependency and prepare/revalidate
the final beta-relative composition before any integration.
Combined v8 source and ordinary use evidence
An October 3 source-closure audit maps all 1 commits in this focused
series to combined qualification PR #68, head
8ba2b75713feb5c72bbc11dd8cce4048e23cdeea, ABI7.2.5-jg-0sp11v8-qcom-x1e.Author identity/date, subject, message text and stable patch identity match;
actual replay trailers are checked in either recorded direction and through
intermediate qualification replays.
Every composed final file entry matches its owning topic's blob, mode and type.
Across all six held groups, the complete refresh-to-v8 tree delta is the 36
owned file entries and the qualification changelog. Six additional commits
touch only that changelog; no unattributed source change was found. This is traceability to the trial, not a fresh standalone
build or installation of this PR, or proof of every integration-to-port behavior.
Touch/pen, Wi-Fi and ordinary USB use are human-reported working in the combined checklist. The running v8 ABI was independently read back. Authorized root
readback verifies the installed v8 image/configuration/boot DTBs, current
initramfs against the installation receipt, and owned v8/v23 boot entries;
v23 remains the default/fallback. No userspace or boot configuration was changed
for that readback.
The report does not measure every GPI client, descriptor/error/concurrency/lifetime or loss/recovery path. Other-device and separately supervised power-state coverage remain open; historical failed completion-repair evidence is not waived.
This advances bounded combined ordinary-use evidence only. Existing deeper
checks, documented-deviation/contributor/complete-CI-policy acceptance and exact
final-composition gates remain open. Do not test the known deep-resume failure
without a separate supervised plan. Source heads, dependency bases and draft
status remain unchanged; do not merge into staging or infer beta integration.
OpenCode Zai-Codex reviews are advisory, not human contributor or maintainer tags.
Deferred follow-up scope
OE #67 already records deferral of the
two additional shared-path corrections; the tested GPI/touch/pen code stays
unchanged. The new camera/audio observation does not resolve their generic-path
risks or qualify every GPI client. The separate width-cast proposal still needs
its own disposition. No rebuild is required simply to record this checkpoint.