Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-02-24 | New errno.h standard header | Richard Braun | |
Use standard errno codes. This change also adds strerror to string.h. | |||
2018-02-20 | Rework the initialization operations of some kernel modules | Richard Braun | |
In order to avoid workarounds that check whether a module is ready or not, break the initialization of some core modules into a bootstrap step for basic BSP initialization, and a setup step that completes initialization. Most users only need the bootstrap operation as a dependency, especially since scheduling isn't enabled yet. | |||
2017-10-04 | Fix some header inclusions | Richard Braun | |
2017-09-21 | Merge branch 'xbuild' | Richard Braun | |
2017-09-21 | New build system | Richard Braun | |
The new build system, called xbuild, is a minimalistic kbuild-like make-based build system, also using kconfig for scalable configurations. | |||
2017-09-20 | kern/work: fix work_setup dependencies | Richard Braun | |
2017-09-06 | Use new thread_check_intr_context function consistently | Richard Braun | |
2017-09-02 | kern/thread: new preemption control macros | Richard Braun | |
These new macros take care of disabling/restoring interrupts in the appropriate order. | |||
2017-08-06 | Fix dependencies on percpu_setup | Richard Braun | |
2017-07-13 | Switch to initialization operations | Richard Braun | |
2017-06-25 | Use the C11 alignas and noreturn macros | Richard Braun | |
2017-06-24 | Move the CPU_L1_SIZE macro to x86/cpu module | Richard Braun | |
2017-06-10 | Use log functions where appropriate | Richard Braun | |
2017-06-09 | kern/work: fix manager wakeup | Richard Braun | |
Commit 1b902346ce502870329bda19d92d317a21cab56e introduced a minor regression by also removing a check on the manager of a work pool, which is a pointer to a work_thread, and not directly a thread structure. | |||
2017-06-03 | kern/thread: improve thread_wakeup robustness | Richard Braun | |
2017-05-30 | Move assert.h to the include directory | Richard Braun | |
This turns assert.h into a standard header. | |||
2017-04-29 | New stdio.h standard header | Richard Braun | |
Make kernel code obtain definitions for the printf family of functions through the inclusion of the standard stdio.h header. | |||
2017-04-29 | kern/printk: rename to printf | Richard Braun | |
The printk functions are close enough to the printf ones to bear the same names. | |||
2017-03-16 | Update system counter names | Richard Braun | |
Now that event counters have been replaced with system counters, drop the convention of naming the counter as the event it tracks. | |||
2017-03-15 | kern/work: move work_pool_init and work_setup to the .init section | Richard Braun | |
2017-03-15 | kern/syscnt: replace the evcnt module | Richard Braun | |
The syscnt module supports more generic counters, in addition to atomic access from any context on any architecture. | |||
2017-03-14 | Use the X15 namespace consistently for macros defined by autoconf | Richard Braun | |
2017-02-08 | kern/thread: add wait channels | Richard Braun | |
2017-02-04 | Clean up compilation | Richard 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-29 | kern/thread: rename "time-sharing" to "fair-scheduling" | Richard Braun | |
2017-01-24 | kern/thread: add the THREAD_KERNEL_PREFIX macro | Richard Braun | |
This macro is used to build kernel thread names. | |||
2016-12-09 | Force brackets around one-line conditional statements | Richard Braun | |
This change was done using astyle, with a few manual editing here and there. | |||
2014-12-10 | kern/work: update call to kmem_cache_init | Richard Braun | |
2014-09-05 | kern/work: use percpu variables | Richard Braun | |
2014-06-19 | kern/work: synchronously destroy worker threads | Richard Braun | |
2014-06-18 | Set threads as detached where applicable | Richard Braun | |
2014-06-18 | kern/work: improve per-processor pools synchronization | Richard Braun | |
Rely on disabling preemption only instead of a spin lock when accessing per-processor pools. | |||
2014-06-17 | kern/work: don't name work pools | Richard Braun | |
2014-06-17 | kern/work: per-processor work pools | Richard Braun | |
2014-06-07 | kern/work: add a comment back | Richard Braun | |
That comment contains a TODO item that was removed by mistake. | |||
2014-05-24 | kern/work: rework worker id allocation | Richard Braun | |
Replace the radix tree with a bitmap and adjust ID allocation. The use of a radix tree was overkill for this, and initially intended only as an example of how to use the data structure in the kernel. | |||
2014-04-26 | kern/work: use thread creation attributes accessors | Richard Braun | |
2014-01-02 | Declare variables as read mostly where appropriate | Richard Braun | |
2013-07-05 | kern/work: update rdxtree calls for 64-bit keys | Richard Braun | |
2013-06-10 | kern/work: fix radix tree usage | Richard Braun | |
Radix tree operations must be done with preemption enabled since they might allocate memory. Use a separate mutex to synchronize access to the tree. | |||
2013-06-09 | kern/work: use a radix tree for worker ID allocation | Richard Braun | |
2013-06-03 | kern/work: new module | Richard Braun | |
This module implements thread pools to concurrently process queues of deferred works. |