Skip to content

docs: channel, IRQ and I/O port ids are less than 62 - #623

Open
Shakhtar-Sankur wants to merge 1 commit into
seL4:mainfrom
Shakhtar-Sankur:manual-channel-id-limit
Open

Shakhtar-Sankur wants to merge 1 commit into
seL4:mainfrom
Shakhtar-Sankur:manual-channel-id-limit

Conversation

@Shakhtar-Sankur

Copy link
Copy Markdown

Fixes #596.

Why: the tool rejects an irq, ioport or channel end id above PD_MAX_ID (61) with id must be < 62 (tool/microkit/src/sdf/consts.rs, pd_vm.rs, channels.rs), and libmicrokit defines MICROKIT_MAX_CHANNELS as 62. The manual said these ids must be less than 63 and that a protection domain supports up to 63 channels and interrupts, so a system description written from the manual can fail to build with id 62. The other two points in #596 (trigger and polarity) are already correct in the current manual.

How: the five id descriptions now say "less than 62", and the per-PD maximum says 62 channels and interrupts. The vCPU id (already "less than 62") and the 63 protection-domain limit (MAX_PDS) are unchanged.

Testing: documentation only. The limits match the existing tool tests in tool/microkit/tests/test.rs, which expect id must be < 62 for irq and end.

The tool rejects any irq, ioport or channel end id above PD_MAX_ID (61),
with "id must be < 62", and libmicrokit has MICROKIT_MAX_CHANNELS = 62.
The manual said these ids must be less than 63, and that a PD supports
up to 63 channels and interrupts, so a system written to the manual
could fail to build. The vCPU id entry already said less than 62.

Reported in seL4#596.

Signed-off-by: Sankur Kundu <sankur.kundu.tw@gmail.com>
@midnightveil

Copy link
Copy Markdown
Collaborator

Was this written by AI?

Based on the text in this issue, plus your contribution history (30+ PRs to 30+ projects in November so far) I suspect it is.

@Shakhtar-Sankur

Copy link
Copy Markdown
Author

Hi @midnightveil, fair question. Yes, I use AI tools in my work, including for drafting this PR. I'm responsible for what I submit: before opening it I checked the limit against the code (PD_MAX_ID = 61 in tool/microkit/src/sdf/consts.rs, MICROKIT_MAX_CHANNELS = 62 in libmicrokit) and that the existing tool tests already expect "id must be < 62".

On the history: this account is new, since my earlier one was deleted, and I've been working through small, testable fixes across projects, which is why the count looks high.

If seL4 would rather not take AI-assisted contributions, that's completely fine. I'm happy to close this and leave #596 to you.

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.

Manual contradicts the tool on three x86 irq attributes (confirmed on Microkit 2.3.0)

2 participants