summaryrefslogtreecommitdiff
path: root/kern/percpu.c
AgeCommit message (Collapse)Author
2018-06-25kern/percpu: introduce per-CPU operationsRichard Braun
2018-02-24New errno.h standard headerRichard Braun
Use standard errno codes. This change also adds strerror to string.h.
2017-09-21New build systemRichard Braun
The new build system, called xbuild, is a minimalistic kbuild-like make-based build system, also using kconfig for scalable configurations.
2017-07-13Switch to initialization operationsRichard Braun
2017-06-22kern/macros: move the __read_mostly macro hereRichard Braun
2017-06-10Use log functions where appropriateRichard Braun
2017-05-30Move assert.h to the include directoryRichard Braun
This turns assert.h into a standard header.
2017-04-29New stdio.h standard headerRichard Braun
Make kernel code obtain definitions for the printf family of functions through the inclusion of the standard stdio.h header.
2017-04-29kern/printk: rename to printfRichard Braun
The printk functions are close enough to the printf ones to bear the same names.
2017-04-10Rename section end symbolsRichard Braun
2017-03-14Use the X15 namespace consistently for macros defined by autoconfRichard Braun
2017-02-04Clean up compilationRichard Braun
Instead of mixing standard headers and internal redefinitions of standard types, completely rely on the compiler for what is guaranteed for a free standing environment. This results in the removal of kern/stddef.h and kern/stdint.h. The kern/types.h header is reintroduced for the different (and saner) purpose of defining types not specified in standard C, namely ssize_t for now.
2017-01-13Replace unsigned long with uintptr_t for integer/pointer conversionsRichard Braun
This is mostly done for the machine-independent part.
2016-12-09Force brackets around one-line conditional statementsRichard Braun
This change was done using astyle, with a few manual editing here and there.
2014-12-10kern/percpu: directmap updateRichard Braun
2014-11-17vm/vm_kmem: minor interface updatesRichard Braun
Make functions accept and return pointers instead of integers. Most users of the kernel allocator directly use the returned addresses. Pointers make that more practical.
2014-10-09kern/percpu: make percpu_area check its return valueRichard Braun
2014-09-05kern/percpu: fix check on percpu section sizeRichard Braun
2014-09-05kern/percpu: fix setup of BSP percpu areaRichard Braun
Relocating percpu data is actually tricky, for the same reason relocating memory in general is. There may be pointers to such variables which then become invalid. Instead, keep using the percpu section as the percpu area for the BSP and store the content of the percpu section in dedicated kernel virtual memory. In addition, remove the notification kludge from the x86 cpu module.
2014-09-03x86/cpu: improve percpu supportRichard Braun
- declare CPU descriptors as percpu variables - make the percpu segment register point to the percpu area instead of the CPU descriptor - remove the ugly accessors for the local CPU descriptor, pmap and TCB and use percpu variables for them instead - implement the cpu_local accessors as described in the percpu documentation
2014-09-03kern/percpu: new moduleRichard Braun
Introduce proper per-CPU variables. Such support becomes necessary as more statically allocated per-CPU data are added to the kernel.