Expand description
Silo manager (kernel-side, minimal mechanisms only)
This module provides the core kernel structures and syscalls to create and manage silos. Policy lives in userspace (silo admin).
StructsΒ§
- Control
Mode - Granted
Resource π - Hardware
Mode - Module
Image π - Module
Info - Module
Registry π - Octal
Mode - Registry
Mode - Silo π
- Silo
Config - Silo
Detail Snapshot - Silo
Event - Silo
Event Snapshot - SiloId
- Silo
Manager π - Silo
Output πBuf - Silo
Snapshot - Strat9
Module Header - Unveil
Rights π - Unveil
Rule π
EnumsΒ§
ConstantsΒ§
- FAULT_
SUBCODE_ SHIFT - IPC_
STREAM_ πDATA - IPC_
STREAM_ πEOF - MAX_
MODULE_ πBLOB_ LEN - MAX_
SILO_ πCAPS - MODULE_
FLAG_ πKERNEL - MODULE_
FLAG_ πSIGNED - SILO_
ADMIN_ πRESOURCE - SILO_
EVENTS_ πCAPACITY - SILO_
FLAG_ ADMIN - SILO_
FLAG_ GRAPHICS - SILO_
FLAG_ GRAPHICS_ READ_ ONLY - SILO_
FLAG_ WEBRTC_ NATIVE - SILO_
FLAG_ WEBRTC_ TURN_ FORCE - SILO_
OUTPUT_ πCAPACITY
StaticsΒ§
- BOOT_
REG_ πIN_ PROGRESS - MODULE_
REGISTRY π - SILO_
MANAGER π
FunctionsΒ§
- add_
or_ πmerge_ granted_ resource - Performs the add or merge granted resource operation.
- charge_
current_ task_ memory - Charge memory usage against the current taskβs silo quota (if any).
- charge_
task_ πsilo_ memory - Performs the charge task silo memory operation.
- compute_
silo_ πxcr0 - Compute the effective XCR0 mask for a silo from its allowed CPU features.
- create_
silo_ admin_ capability - Grant the Silo Admin capability to a task (bootstrapping).
- current_
task_ silo_ label - Performs the current task silo label operation.
- debug_
boot_ reg_ active - Returns true while boot-time silo registration critical path is executing.
- decode_
family π - Performs the decode family operation.
- dump_
user_ πfault - Performs the dump user fault operation.
- enforce_
cap_ for_ current_ task - Enforce that the current task may use a delegated capability.
- enforce_
console_ access - Enforce console access for the current task.
- enforce_
path_ for_ current_ task - Performs the enforce path for current task operation.
- enforce_
registry_ bind_ for_ current_ task - Performs the enforce registry bind for current task operation.
- enforce_
silo_ may_ grant - Performs the enforce silo may grant operation.
- extract_
strate_ πlabel - Performs the extract strate label operation.
- grant_
silo_ admin_ to_ task - handle_
user_ fault - Handles user fault.
- is_
admin_ πtask - Returns whether admin task.
- is_
delegated_ πresource - Returns whether delegated resource.
- is_
valid_ πlabel - Returns whether valid label.
- kernel_
check_ spawn_ invariants - Performs the kernel check spawn invariants operation.
- kernel_
destroy_ silo - Performs the kernel destroy silo operation.
- kernel_
limit_ silo - Dynamically adjust resource quotas for a silo.
- kernel_
pledge_ silo - kernel_
rename_ silo_ label - Performs the kernel rename silo label operation.
- kernel_
resume_ silo - kernel_
sandbox_ silo - kernel_
spawn_ strate - Performs the kernel spawn strate operation.
- kernel_
start_ silo - Performs the kernel start silo operation.
- kernel_
stop_ silo - Performs the kernel stop silo operation.
- kernel_
suspend_ silo - kernel_
unveil_ silo - list_
events_ for_ silo - list_
events_ snapshot - list_
silos_ snapshot - Performs the list silos snapshot operation.
- map_
elf_ πstart_ error - Maps elf start error.
- merge_
permissions π - Performs the merge permissions operation.
- normalize_
unveil_ πpath - Performs the normalize unveil path operation.
- on_
task_ terminated - Best-effort cleanup hook called by the scheduler when a task terminates.
- pack_
fault - Performs the pack fault operation.
- parse_
module_ πheader - Parses module header.
- path_
rule_ πmatches - Performs the path rule matches operation.
- permissions_
subset π - Performs the permissions subset operation.
- read_
caps_ πlist - Reads caps list.
- read_
module_ πstream_ from_ port - Reads module stream from port.
- read_
u32_ πle - Reads u32 le.
- read_
u64_ πle - Reads u64 le.
- read_
user_ πconfig - Reads user config.
- register_
boot_ strate_ task - Performs the register boot strate task operation.
- register_
current_ task_ granted_ resource - Performs the register current task granted resource operation.
- release_
current_ task_ memory - Release memory usage from the current taskβs silo quota (if any).
- release_
task_ πsilo_ memory - Performs the release task silo memory operation.
- require_
silo_ admin - Performs the require silo admin operation.
- resolve_
export_ πoffset - Performs the resolve export offset operation.
- resolve_
module_ πhandle - Performs the resolve module handle operation.
- resolve_
selector_ πto_ silo_ id - Performs the resolve selector to silo id operation.
- resolve_
silo_ πhandle - Performs the resolve silo handle operation.
- resolve_
volume_ πresource_ from_ dev_ path - Performs the resolve volume resource from dev path operation.
- sanitize_
label π - Performs the sanitize label operation.
- set_
current_ silo_ label_ from_ path - Sets current silo label from path.
- silo_
detail_ snapshot - silo_
has_ πcapability - Performs the silo has capability operation.
- silo_
info_ for_ task - silo_
output_ drain - Drain the output buffer for a silo, returning accumulated bytes.
- silo_
output_ write - Append data to a siloβs output ring buffer (called from
sys_debug_log). - start_
silo_ πby_ id - Starts silo by id.
- stop_
or_ πkill_ silo_ by_ id - Stops or kill silo by id.
- sys_
module_ get_ symbol - Performs the sys module get symbol operation.
- sys_
module_ load - Performs the sys module load operation.
- sys_
module_ query - Performs the sys module query operation.
- sys_
module_ unload - Performs the sys module unload operation.
- sys_
silo_ attach_ module - Performs the sys silo attach module operation.
- sys_
silo_ config - Performs the sys silo config operation.
- sys_
silo_ create - Performs the sys silo create operation.
- sys_
silo_ enter_ sandbox - Performs the sys silo enter sandbox operation.
- sys_
silo_ event_ next - Performs the sys silo event next operation.
- sys_
silo_ kill - Performs the sys silo kill operation.
- sys_
silo_ pledge - Performs the sys silo pledge operation.
- sys_
silo_ rename - Sets the
strate_labelof a silo identified by handle. - sys_
silo_ resume - Performs the sys silo resume operation.
- sys_
silo_ start - Performs the sys silo start operation.
- sys_
silo_ stop - Performs the sys silo stop operation.
- sys_
silo_ suspend - Performs the sys silo suspend operation.
- sys_
silo_ unveil - Performs the sys silo unveil operation.
- task_
silo_ id - Get the silo ID for a given task, if any.
- try_
silo_ id_ for_ task - Return silo identity + memory accounting for a task, if the task belongs to a silo.