PCI_MSI_2 skips MSI-only endpoints in Linux vector uniqueness test
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- c, linux
- Domain
- operating-systems, testing-qa
Research direction
Start with the Linux ACS implementation for the PCI_MSI_2 vector uniqueness test and trace its MSI/MSI-X capability check into the Linux PAL vector read path. Verify the test includes endpoints supporting either capability, handles both vector sources, and skips only devices supporting neither MSI nor MSI-X.
Written by the indexing model from the issue text.
Description
The PCI_MSI_2 rule applies to MSI(-X), so endpoints that support MSI only should be valid targets for the test.
In the current Linux ACS implementation, the vector uniqueness test appears to skip MSI-only endpoints because the capability check requires both MSI-X and MSI capability discovery to pass before the device is considered.
Current behavior:
- Endpoint supports MSI only.
- Endpoint does not support MSI-X.
- PCI_MSI_2 skips the device.
- Test may report no MSI vectors found / skip, even though an MSI-capable endpoint is present.
Expected behavior: - PCI_MSI_2 should accept endpoints that support either MSI or MSI-X.
- MSI-only endpoints should be included in the vector uniqueness validation.
- The test should skip only devices that support neither MSI nor MSI-X.
Suggested fix: - Update the capability check so the device is skipped only when both MSI-X and MSI capabilities are absent.
- Ensure the Linux PAL vector read path continues to handle both MSI-X table entries and MSI capability registers.
Impact: - MSI-only platforms cannot currently obtain automated ACS coverage for PCI_MSI_2.
- Such platforms may need manual validation until this is fixed.
- Dominant language
- C
- Stars
- 23
- Forks
- 39
- Avg merge
- 6h 54m
- Merged PRs (30d)
- 90
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ARM-software/sysarch-acs
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
ARM-software/sysarch-acs#634 ·
Maintainers usually reply within 1 day
-
GICv3 ESPI enable and routing use incorrect distributor registersPossibly taken @La1itchauhan claimed this 1 day ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
ARM-software/sysarch-acs#605 · 1 comment ·
Maintainers usually reply within 1 day
-
SMMU_03 (i033, test 333) gates SMMU_IDR5.D128 on FEAT_LSE2; should the gate be FEAT_D128?Possibly taken @chetan-rathore claimed this 10 days ago. Openbsa
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
ARM-software/sysarch-acs#600 · 1 assignee ·
Maintainers usually reply within 1 day
-
sbsa-acs : S_L7ENT_1 test coverage mismatch between testcase checklist and NIST user guidePossibly taken @chetan-rathore claimed this 10 days ago. Opensbsa
Difficulty 1/5 Under an hour Newbie friendliness 85/100
ARM-software/sysarch-acs#525 · 1 comment · 1 assignee ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
ARM-software/sysarch-acs#650 ·
Maintainers usually reply within 1 day
All issues in ARM-software/sysarch-acs
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
OpenPrinting/cups#1772 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
snowballstem/snowball#311 ·
-
tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100