Expose unique API for uVisor hooks that can be called from priv and unpriv code
- Dominant language
- C
- Stars
- 135
- Forks
- 72
- PR merge metrics
- No merged PRs in 30d
Description
uVisor APIs that can be called from both privileged and unprivileged mode should provide a unique entry point.
The entry point would:
- Call the hook directly, if from privileged mode.
- Call the hook via a dedicated SVC, if from unprivileged mode.
``` C
void uvisor_some_api(void)
{
if (from_privileged()) {
uvisor_hooks->some_api;
} else {
SVC(SVC_UVISOR_SOME_API);
}
}
```
This would also make it easier to spot the execution mode of every exposed API when looking at its implementation.
Contributor guide
Research direction
Review the exposed uVisor APIs, their hooks, and the existing SVC entry points. Define the unique entry-point pattern so privileged callers invoke the hook directly and unprivileged callers use a dedicated SVC; done means APIs callable from both modes follow this pattern.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- embedded-iot, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100