-
Notifications
You must be signed in to change notification settings - Fork 69
Fix RPi4 failing sel4test in Release mode #150
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Jakub Duchniewicz <[email protected]>
lsf37
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice. Thank you for tracking that down.
After this is merged, we should enable those tests in ci-actions.
Indanz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It only costs a little bit of data to have more than the bare minimum and the define is a maximum, not an exact count.
|
As for avoiding the same problem in the future: The only way is to add extra margin and initialise UARTs first before other devices, so the error print works. |
Signed-off-by: Jakub Duchniewicz <[email protected]>
Indanz
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you rename it, you have to update all users too of course.
/github/workspace/projects/sel4test/apps/sel4test-driver/src/main.c:515:45: error: ‘NUM_ALLOC_AT_TO_TRACK’ undeclared (first use in this function); did you mean ‘MAX_ALLOC_AT_TO_TRACK’?
515 | static uspace_alloc_at_args_t args_prev[NUM_ALLOC_AT_TO_TRACK] = {};
| ^~~~~~~~~~~~~~~~~~~~~
| MAX_ALLOC_AT_TO_TRACK
Signed-off-by: Jakub Duchniewicz <[email protected]>
This fixes the seL4/util_libs#171 issue where in order to have sel4test pass in Release mode for RPi4 one had to comment out GPIO setting. This stems from having just one available allocation to our disposal while we are in
serial_utspace_record == truephase (when the serial driver is being set up).Since there are 2 allocations happening - one for GPIO in
uart_gpio_configureusingMAP_IF_NULLmacro (here), and the other one for UART being done inbcm_uart_init(here). We are running out of available allocations specified byNUM_ALLOC_AT_TO_TRACK.