50c202c592
- 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 |
||
---|---|---|
.. | ||
discovery | ||
kirkwood | ||
orion | ||
bus_space.c | ||
common.c | ||
files.mv | ||
gpio.c | ||
ic.c | ||
mv_machdep.c | ||
mv_pci.c | ||
mvreg.h | ||
mvvar.h | ||
mvwin.h | ||
obio.c | ||
rtc.c | ||
std.mv | ||
timer.c | ||
twsi.c |