5bc3a65e40
- Modules and kernel code alike may use DPCPU_DEFINE(), DPCPU_GET(), DPCPU_SET(), etc. akin to the statically defined PCPU_*. Requires only one extra instruction more than PCPU_* and is virtually the same as __thread for builtin and much faster for shared objects. DPCPU variables can be initialized when defined. - Modules are supported by relocating the module's per-cpu linker set over space reserved in the kernel. Modules may fail to load if there is insufficient space available. - Track space available for modules with a one-off extent allocator. Free may block for memory to allocate space for an extent. Reviewed by: jhb, rwatson, kan, sam, grehan, marius, marcel, stas |
||
---|---|---|
.. | ||
crb_machdep.c | ||
files.crb | ||
files.i81342 | ||
i81342_mcu.c | ||
i81342_pci.c | ||
i81342_space.c | ||
i81342.c | ||
i81342reg.h | ||
i81342var.h | ||
iq81342_7seg.c | ||
iq81342reg.h | ||
iq81342var.h | ||
obio_space.c | ||
obio.c | ||
obiovar.h | ||
std.crb | ||
std.i81342 | ||
uart_bus_i81342.c | ||
uart_cpu_i81342.c |