Skip to content

QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB - #906

Open
Jagadeesh Pagadala (jpagadal) wants to merge 1 commit into
qualcomm-linux:qcom-6.18.yfrom
jpagadal:qcom-6.18.y
Open

QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB#906
Jagadeesh Pagadala (jpagadal) wants to merge 1 commit into
qualcomm-linux:qcom-6.18.yfrom
jpagadal:qcom-6.18.y

Conversation

@jpagadal

Copy link
Copy Markdown

Set CONFIG_SWIOTLB_DEFAULT_SIZE_MB=2 to reduce the default SWIOTLB pool size from 64 MiB to 2 MiB.

This lowers kernel reserved memory and increases available RAM for user space.

CRs-Fixed: 4490764

Corresponding mainline change: qualcomm-linux/kernel-topics#1644

Validation:
Boot verified on RB3 Gen2, IQ8.
SWIOTLB pool reduced from 64 MiB to 2 MiB.

Set CONFIG_SWIOTLB_DEFAULT_SIZE_MB=2 to reduce the default
SWIOTLB pool size from 64 MiB to 2 MiB.

This lowers kernel reserved memory and increases available
RAM for user space.

Signed-off-by: Jagadeesh Pagadala <jpagadal@qti.qualcomm.com>
@qlijarvis

Copy link
Copy Markdown

PR #906 — validate-patch

PR: #906

Verdict Issues Detailed Report
⚠️ 1 Full report

Final Summary

  1. Lore link present: No — QCLINUX: prefix; no lore link expected or required
  2. Lore link matches PR commits: N/A — no lore link to compare against
  3. Upstream patch status: N/A — vendor-only change, not posted upstream
  4. PR present in qcom-next/topics: Fail - 1/1 commit(s) are missing from both qcom-next and topics
Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #906 - QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB
Upstream commit: N/A (vendor-only change)
Verdict: ⚠️ PARTIAL

Commit Message

Check Status Note
Subject matches upstream N/A QCLINUX: vendor-only commit
Body preserves rationale Clear explanation of memory optimization
Fixes tag present/correct N/A Not a fix
Authorship preserved Consistent author and sign-off
Backport note (if applicable) N/A Not a backport

Diff

File Status Notes
arch/arm64/configs/qcom.config Single-line config addition, clean and focused

Issues

  • ⚠️ Integration presence: Commit is missing from both qcom-next and all topic branches. For a vendor-specific config change, this is unexpected — typically QCLINUX: commits should be present in the integration tree before PR submission.

Verdict

The patch itself is technically correct and well-formed. However, the absence from qcom-next/topics suggests this may be a new change that hasn't been integrated yet. Verify integration status before merging.

Final Summary

  1. Lore link present: No — QCLINUX: prefix; no lore link expected or required
  2. Lore link matches PR commits: N/A — no lore link to compare against
  3. Upstream patch status: N/A — vendor-only change, not posted upstream
  4. PR present in qcom-next/topics: Fail — 1/1 commit(s) are missing from both qcom-next and topics (per integration_presence_report.md)

Deterministic Integration Presence

Integration Presence Report

This report is generated by Jarvis before validate-patch runs.
It is the authoritative source for whether PR changes are already present
in qcom-next or in the kernel topic branches.

Kernel repo: /local/mnt/workspace/sgaud/Qgenie/image_pipeline/kernel
qcom-next ref: 8d5dbc1b17adf8fe86a41adcda686785e73f5414
topics remote: topics -> https://github.com/qualcomm-linux/kernel-topics
topics fetch: fetched

Commit Subject qcom-next topics Final
1/1 [PATCH] QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB missing - no subject, patch-id, or full tree-content match found missing - no subject, patch-id, or full tree-content match found missing

Final Status

overall_status: FAIL
present_commits: 0/1
partial_commits: 0/1
missing_commits: 1/1
topics_checked_for_commits: 1/1
final_summary: PR present in qcom-next/topics: Fail - 1/1 commit(s) are missing from both qcom-next and topics

@qlijarvis

Copy link
Copy Markdown

PR #906 — checker-log-analyzer

PR: #906
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/31072200744

Checker Result Summary
Checker Result Summary
checkpatch 0 errors, 0 warnings, 0 checks
dt-binding-check ⏭️ No changes in Documentation/devicetree/bindings
dtb-check ⏭️ No changes in Devicetree
sparse-check ⏭️ Skipping sparse check as nothing changed
check-uapi-headers ⏭️ Skipping uapi check as nothing changed
check-patch-compliance Prefix validation failed
tag-check QCLINUX: prefix used (valid for tag-check but fails check-patch-compliance)

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #906 - QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB
Target branch: qcom-6.18.y
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/31072200744

Checker Result Summary
checkpatch 0 errors, 0 warnings, 0 checks
dt-binding-check ⏭️ No changes in Documentation/devicetree/bindings
dtb-check ⏭️ No changes in Devicetree
sparse-check ⏭️ Skipping sparse check as nothing changed
check-uapi-headers ⏭️ Skipping uapi check as nothing changed
check-patch-compliance Prefix validation failed
tag-check QCLINUX: prefix used (valid for tag-check but fails check-patch-compliance)

❌ check-patch-compliance

Root cause: The commit uses QCLINUX: prefix, which is not in the allowed list for check-patch-compliance.

Failure details:

Checking commit: QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB
Commit summary does not start with a required prefix

Analysis:

The check-patch-compliance checker only accepts these prefixes:

  • FROMLIST: — Patch posted to mailing list (lore.kernel.org)
  • FROMGIT: — Patch taken from a maintainer git tree
  • UPSTREAM: — Patch merged into Linus's mainline tree
  • BACKPORT: — Upstream patch backported with modifications

The commit uses QCLINUX:, which is a vendor-internal prefix used in the Qualcomm Linux tree for vendor-only changes with no upstream equivalent. This prefix is not accepted by check-patch-compliance.

This is a known limitation of the checker — vendor-only commits with QCLINUX: or PENDING: prefixes will always fail check-patch-compliance because the checker enforces upstream-linkable prefixes only.

Context:

  • This is a config-only change (CONFIG_SWIOTLB_DEFAULT_SIZE_MB=2) that reduces SWIOTLB pool size from 64 MiB to 2 MiB.
  • The change is vendor-specific and has no upstream equivalent (it's a Qualcomm-specific tuning decision).
  • The QCLINUX: prefix is appropriate for this type of change in the Qualcomm Linux tree.

Options:

  1. Accept the checker failure — This is a known limitation. The QCLINUX: prefix is correct for vendor-only changes. The checker will always fail for such commits.

  2. Change to FROMLIST: + add Link — Only if this change has been posted upstream (which is unlikely for a vendor-specific config tuning). This would require:

    git commit --amend -m "FROMLIST: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB
    
    Set CONFIG_SWIOTLB_DEFAULT_SIZE_MB=2 to reduce the default
    SWIOTLB pool size from 64 MiB to 2 MiB.
    
    This lowers kernel reserved memory and increases available
    RAM for user space.
    
    Link: https://lore.kernel.org/...
    Signed-off-by: Jagadeesh Pagadala <jpagadal@qti.qualcomm.com>"
  3. Remove the prefix entirely — Not recommended, as the target branch qcom-6.18.y requires a prefix tag (see tag-check below).

Reproduce locally:

cd kernel
bash ../kernel-checkers/check-patch-compliance.sh \
  --kernel-src . \
  --base 8635749eab9a8a3a2e3533b2077d70c8b16857ba \
  --head 3ea7a82d33430549b62ee2836cc730729b0ca9d6

✅ tag-check

Status: PASS (with caveat)

Analysis:

The target branch is qcom-6.18.y, which is not qcom-next or qcom-next-staging. Therefore, every commit must start with a valid subject prefix.

The commit subject is:

QCLINUX: arm64: configs: qcom: reduce SWIOTLB size to 2 MiB

The QCLINUX: prefix is a valid prefix for the tag-check (it's in the allowed list: FROMLIST:, FROMGIT:, UPSTREAM:, BACKPORT:, QCLINUX:, PENDING:, WORKAROUND:).

Verdict: ✅ PASS — The commit has a valid subject prefix for the target branch.

Note: While tag-check passes, check-patch-compliance fails because it enforces a stricter subset of prefixes (only upstream-linkable ones). This is a known discrepancy between the two checks.


Verdict

1 blocker (check-patch-compliance) — known limitation for vendor-only commits.

Recommendation:

  • If this is a vendor-only change with no upstream equivalent: Accept the check-patch-compliance failure. The QCLINUX: prefix is correct and appropriate. This is a known limitation of the checker.

  • If this change should be posted upstream: Change the prefix to FROMLIST: and add a Link: trailer pointing to the lore.kernel.org URL after posting.

All other checkers passed or were correctly skipped (no relevant files changed). The patch itself is clean — no coding style issues, no DT/binding changes, no sparse warnings, no UAPI changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants