Skip to content

[PW_SID:1058932] iommu/riscv: Stop polling when CQCSR reports an error#1516

Closed
linux-riscv-bot wants to merge 1 commit into
workflow__riscv__fixesfrom
pw1058932
Closed

[PW_SID:1058932] iommu/riscv: Stop polling when CQCSR reports an error#1516
linux-riscv-bot wants to merge 1 commit into
workflow__riscv__fixesfrom
pw1058932

Conversation

@linux-riscv-bot
Copy link
Copy Markdown

PR for series 1058932 applied to workflow__riscv__fixes

Name: iommu/riscv: Stop polling when CQCSR reports an error
URL: https://patchwork.kernel.org/project/linux-riscv/list/?series=1058932
Version: 1

The cmdq wait loop busy-polls the consumer index until it advances
or the software timeout expires. If the IOMMU has already signaled
a command queue failure in CQCSR, continuing to poll for progress is
pointless.

Make riscv_iommu_queue_wait() also terminate the poll when any of these
CQCSR error bits are observed.

This helps the caller return earlier in failure cases and avoids
spinning until the full timeout interval when the hardware has already
reported an error. On single-core systems in particular, the current
busy-wait can delay servicing the command-timeout interrupt until the
software timeout expires (90s by default).

Fixes: 856c0cf ("iommu/riscv: Command and fault queue support")
Signed-off-by: Fangyu Yu <fangyu.yu@linux.alibaba.com>
Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
build-rv32-defconfig
Desc: Builds riscv32 defconfig
Duration: 145.80 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
build-rv64-clang-allmodconfig
Desc: Builds riscv64 allmodconfig with Clang, and checks for errors and added warnings
Duration: 1175.99 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
build-rv64-gcc-allmodconfig
Desc: Builds riscv64 allmodconfig with GCC, and checks for errors and added warnings
Duration: 1790.73 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
build-rv64-nommu-k210-defconfig
Desc: Builds riscv64 defconfig with NOMMU for K210
Duration: 28.26 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
build-rv64-nommu-k210-virt
Desc: Builds riscv64 defconfig with NOMMU for the virt platform
Duration: 29.37 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
checkpatch
Desc: Runs checkpatch.pl on the patch
Duration: 0.76 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
dtb-warn-rv64
Desc: Checks for Device Tree warnings/errors
Duration: 85.20 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
header-inline
Desc: Detects static functions without inline keyword in header files
Duration: 0.22 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
kdoc
Desc: Detects for kdoc errors
Duration: 0.95 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
module-param
Desc: Detect module_param changes
Duration: 0.25 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
verify-fixes
Desc: Verifies that the Fixes: tags exist
Duration: 0.27 seconds
Result: PASS

@linux-riscv-bot
Copy link
Copy Markdown
Author

Patch 1: "iommu/riscv: Stop polling when CQCSR reports an error"
verify-signedoff
Desc: Verifies that Signed-off-by: tags are correct
Duration: 0.29 seconds
Result: PASS

@linux-riscv-bot linux-riscv-bot deleted the pw1058932 branch March 7, 2026 01:19
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