Skip to content

ci: performance: reduce SWIOTLB allocation by setting swiotlb=128#2302

Open
jpagadal wants to merge 1 commit into
qualcomm-linux:masterfrom
jpagadal:master
Open

ci: performance: reduce SWIOTLB allocation by setting swiotlb=128#2302
jpagadal wants to merge 1 commit into
qualcomm-linux:masterfrom
jpagadal:master

Conversation

@jpagadal
Copy link
Copy Markdown
Contributor

@jpagadal jpagadal commented May 27, 2026

Problem:

  • Kernel default behavior allocates a large SWIOTLB pool (64 MB)
  • This results in unnecessary kernel reserved memory overhead

Solution:

  • Set swiotlb=128 as kernel command line argument
  • Limits SWIOTLB allocation to 2 MB

Validation:

  • Verified by manually adding swiotlb=128
  • Observed reduction in SWIOTLB allocation from 64 MB to 2 MB

Impact:

  • Reduces kernel reserved memory footprint
  • Improves available RAM for user space

By default, the kernel allocates a large SWIOTLB (DMA bounce buffer),
resulting in 64 MB of reserved memory.

Set `swiotlb=128` in the kernel command line to limit SWIOTLB
allocation to 2 MB, reducing overall reserved memory.

A similar configuration was used in QLI1.0 releases.

Signed-off-by: Jagadeesh Pagadala <jpagadal@qti.qualcomm.com>
@github-actions
Copy link
Copy Markdown

Test run workflow

Test jobs for commit afc3609

qcom-distro
Pass: 259 | Fail: 1 | Total: 280
nodistro
Pass: 9 | Fail: 0 | Total: 9
qcom-distro_linux-qcom-6.18
Pass: 220 | Fail: 2 | Total: 249

@test-reporting-app
Copy link
Copy Markdown

Test Results

  103 files  ± 0    633 suites  +1   5h 28m 40s ⏱️ + 18m 29s
  125 tests ± 0    104 ✅  - 21   0 💤 ±0  21 ❌ +21 
6 009 runs   - 12  5 935 ✅  - 31  47 💤  - 8  27 ❌ +27 

For more details on these failures, see this check.

Results for commit afc3609. ± Comparison against base commit 8917dc1.

This pull request removes 3 and adds 3 tests. Note that renamed tests count towards both.
lava ‑ 5_OpenCV
lava ‑ 6_irq
lava ‑ 7_BT_ON_OFF
14_Kubern[ ‑ Kubernetes_Kernel_Config
lava ‑ auto-login-action
lava ‑ minimal-boot

Copy link
Copy Markdown
Contributor

@lumag lumag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is 2 MiB enough? Do we have CONFIG_SWIOTLB_DYNAMIC enabled to get more pools if required?

Also please drop the bullet lists from the PR description. Write English text instead.

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.

2 participants