|
|
@a22c62f
|
3 months |
zarevucky.jiri |
Also ignore NULL passed to free()
|
|
|
@23d4e6ae
|
3 months |
zarevucky.jiri |
Check for allocation failure in kernel malloc()
|
|
|
@39e1b9a
|
3 months |
zarevucky.jiri |
Convert console output devices to batch printing
|
|
|
@690ad20
|
3 months |
zarevucky.jiri |
Convert kio buffer to bytes (part 1)
|
|
|
@d5b37b6
|
3 months |
zarevucky.jiri |
Use a new syscall, SYS_KIO_READ, for reading from KIO buffer
…
|
|
|
@571cc2d
|
3 months |
zarevucky.jiri |
Use irq_spinlock_t instead of plain spinlock_t in console code
|
|
|
@af77459
|
3 months |
zarevucky.jiri |
Simplify kio buffer bookkeeping
We only really need to know the …
|
|
|
@1db4e2ae
|
3 months |
zarevucky.jiri |
Have str_sanitize also remove C0 and C1 control codes
and use it to …
|
|
|
@163e34c
|
3 months |
zarevucky.jiri |
Actually convert the printf outputs everywhere
|
|
|
@74b92e6
|
3 months |
zarevucky.jiri |
Fix sysinfo locking
Turns out sysinfo doesn't like spinlock
|
|
|
@90dd8aee
|
3 months |
zarevucky.jiri |
Introduce a console lock to prevent line splitting in kernel output
…
|
|
|
@c55ab66
|
3 months |
zarevucky.jiri |
Comment typo
|
|
|
@9f2f5ee
|
3 months |
zarevucky.jiri |
Rewrite kernel mutex implementation a little
Removes MUTEX_ACTIVE, …
|
|
|
@c626117
|
3 months |
zarevucky.jiri |
Replace uses of MUTEX_ACTIVE with irq_spinlock_t
|
|
|
@0b47781
|
3 months |
zarevucky.jiri |
Extend kernel condvar_t to work with spinlocks
MUTEX_ACTIVE is a poor …
|
|
|
@a78b0a0
|
3 months |
zarevucky.jiri |
Use static initialization for ap_completion_semaphore
|
|
|
@597fa24
|
3 months |
zarevucky.jiri |
Enable static initialization of kernel synchronization primitives
|
|
|
@0db0df2
|
4 months |
zarevucky.jiri |
Hash table improvements
Implement hash_table_foreach macro, analogous …
|
|
|
@f35749e
|
5 months |
jiri |
System restart via shutdown -r
|
|
|
@3fcea34
|
10 months |
zarevucky.jiri |
Simplify the SYS_THREAD_CREATE syscall interface
Removed the beefy …
|
|
|
@bec6379
|
10 months |
zarevucky.jiri |
Make it possible to set a breakpoint on ubsan_panic()
|
|
|
@dd50aa19
|
10 months |
zarevucky.jiri |
Allocation function tweaks
- Add reallocarray() from POSIX 2024 for …
|
|
|
@6a044dd
|
13 months |
5887334+jxsvoboda |
Remove the necessity of initrd to be in the last of grub's modules list
|
|
|
@74cb6610
|
18 months |
zarevucky.jiri |
Fix the reference leak for initial tasks too
|
|
|
@f8b69a1e
|
18 months |
zarevucky.jiri |
Fix a reference leak introduced by previous commit
Oddly, prior to …
|
|
|
@07d4271
|
18 months |
zarevucky.jiri |
Fix some unsound task reference manipulation and locking
In some …
|
|
|
@d23712e
|
18 months |
zarevucky.jiri |
Use thread state variable instead of a cpu local variable to pass state
|
|
|
@dfa4be62
|
18 months |
zarevucky.jiri |
Thread lock is no longer necessary
|
|
|
@a3d87b9
|
18 months |
zarevucky.jiri |
We don't need to check thread state to wait for thread exit
|
|
|
@9fbdeca
|
18 months |
zarevucky.jiri |
The initialization value for priority is actually irrelevant
|
|
|
@3fa4e22a
|
18 months |
zarevucky.jiri |
Only do fpu_cleanup() once we are sure we are switching
|
|
|
@11909ce3
|
18 months |
zarevucky.jiri |
Make thread cycle statistics atomic
|
|
|
@33e15a0
|
18 months |
zarevucky.jiri |
Make thread→btrace weakly atomic, to avoid need for thread lock
|
|
|
@7364e2d1
|
18 months |
zarevucky.jiri |
Don't try to determine internal thread state when requesting stack …
|
|
|
@41bfc64
|
18 months |
zarevucky.jiri |
Make thread→state weakly atomic so we don't need to hold thread lock
|
|
|
@3d84734
|
18 months |
zarevucky.jiri |
Make thread→priority weakly atomic to avoid need for locking
|
|
|
@efed95a3
|
18 months |
zarevucky.jiri |
Make thread→cpu weakly atomic, to avoid need for thread lock
|
|
|
@286da52
|
18 months |
zarevucky.jiri |
Streamline requeuing threads
Split thread_ready() into different …
|
|
|
@6a0e568
|
18 months |
zarevucky.jiri |
Allow fast-switch to another runnable thread
When a thread is …
|
|
|
@c1eaec4
|
18 months |
zarevucky.jiri |
Shuffle some locks around
|
|
|
@25939997
|
18 months |
zarevucky.jiri |
Make separate-stack-scheduler a loop with persistent context
We can …
|
|
|
@1c1767f
|
18 months |
zarevucky.jiri |
Remove empty C file
|
|
|
@29029ac0
|
18 months |
zarevucky.jiri |
Call after_thread_ran_arch() before context switch
This is only used …
|
|
|
@ed7e057
|
18 months |
zarevucky.jiri |
Add functions context_create(), context_replace() and context_swap()
…
|
|
|
@4ed7870
|
18 months |
zarevucky.jiri |
Revert part of commit 5861b602
|
|
|
@e82879c
|
18 months |
zarevucky.jiri |
Remove unnecessary function
|
|
|
@0f4f1b2
|
18 months |
zarevucky.jiri |
Add (and use) functions thread_start() and thread_detach()
Mostly …
|
|
|
@a064d4f
|
18 months |
zarevucky.jiri |
Make thread_join() imply thread_put()
This makes the function more …
|
|
|
@5861b60
|
18 months |
zarevucky.jiri |
Lift actions that do not need separate context out of …
|
|
|
@151c050
|
18 months |
zarevucky.jiri |
Rethink scheduler entry points
Changes the way scheduler is entered, …
|
|
|
@8996582
|
19 months |
zarevucky.jiri |
Move context switch preparation to a new separate function
This puts …
|
|
|
@6e49dab
|
19 months |
zarevucky.jiri |
Extract post-thread cleanup into a separate function
|
|
|
@23f36a3
|
19 months |
zarevucky.jiri |
Wrap fpu handling code in named functions
|
|
|
@5663872
|
19 months |
zarevucky.jiri |
Move stuff around for thread sleep
Only mark the thread as ready for …
|
|
|
@4760793
|
19 months |
zarevucky.jiri |
Add CPU_LOCAL alongside CPU and segregate fields that are only used …
|
|
|
@3b68542
|
19 months |
zarevucky.jiri |
Eliminate an undefined behavior in scheduler debug printout
The …
|
|
|
@7130754
|
19 months |
zarevucky.jiri |
Add printbench command for benchmarking print output
topic/simplify-dev-export
|
|
|
@40eab9f
|
21 months |
zarevucky.jiri |
Print symbol names and line numbers in stacktraces for init tasks
…
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@1170cfc7
|
21 months |
zarevucky.jiri |
Remove include sorcery from DWARF constant definitions
Also add a …
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@63ed840
|
21 months |
zarevucky.jiri |
Remove unused functions gets() and getc() from kernel
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@694ca3d6
|
21 months |
zarevucky.jiri |
Deduplicate printf_core()
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@ad9178bf
|
21 months |
zarevucky.jiri |
Deduplicate ADT
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@55c5cb05
|
21 months |
zarevucky.jiri |
Deduplicate gsort()
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@fdfb24e
|
21 months |
zarevucky.jiri |
Deduplicate string related functions
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@b169619
|
21 months |
zarevucky.jiri |
Deduplicate mem functions
There are a number of functions which are …
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@0373af9
|
21 months |
zarevucky.jiri |
Forgotten debugging tweak
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@001957b6
|
21 months |
zarevucky.jiri |
ccheck
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@2fbb42f
|
21 months |
zarevucky.jiri |
Add printing of file names and line numbers in stacktraces
Uses DWARF …
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@da13982
|
21 months |
zarevucky.jiri |
Read symbol table from ELF sections
Instead of the currently broken …
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@d28bdbe
|
21 months |
zarevucky.jiri |
Verify arguments of empty log calls
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@dfb16c4
|
21 months |
zarevucky.jiri |
Panic on unexpected use of exception handling
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@ec8ef12
|
2 years |
zarevucky.jiri |
Split find_best_thread() into two functions
try_find_thread() …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@117ad5a2
|
2 years |
zarevucky.jiri |
Get thread priority from find_best_thread(), instead of locking thread …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@f3dbe27
|
2 years |
zarevucky.jiri |
Reduce locking further with lazy FPU
It turns out we only need a lock …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@06f81c4
|
2 years |
zarevucky.jiri |
Check cpu_t::fpu_owner directly instead of …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@fbaf6ac
|
2 years |
zarevucky.jiri |
Streamline thread load-balancing
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@169815e
|
2 years |
zarevucky.jiri |
Split cpu_t::lock into fpu_lock and tlb_lock
For all other purposes, …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@b2ec5cf
|
2 years |
zarevucky.jiri |
Implement atomic_time_stat_t for lockless timekeeping
We keep …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@dd218ea
|
2 years |
zarevucky.jiri |
Remove unnecessary thread_t::wired
There's already …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@c680333
|
2 years |
zarevucky.jiri |
Move task switch handling into a separate function
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@3118355
|
2 years |
zarevucky.jiri |
Optimize relink_rq()
Iterate backwards and only lock each runqueue …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@bea6233
|
2 years |
zarevucky.jiri |
Replace cpu_sleep() with cpu_interruptible_sleep()
The new function …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@deed510
|
2 years |
zarevucky.jiri |
Remove an unused variable and make a few others 'static'
They aren't …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@6188fee
|
2 years |
zarevucky.jiri |
Exclude boot allocations in frame allocator
I think some platforms …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@65f3117
|
2 years |
zarevucky.jiri |
Make bootstrap stack statically, rather than dynamically allocated
…
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@c7326f21
|
2 years |
zarevucky.jiri |
Move some oddly placed accounting code
Thread ucycles and kcycles …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@4777e02
|
2 years |
zarevucky.jiri |
Make spinlock functions inlineable in non-SMP case
By popular demand.
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@111b9b9
|
2 years |
zarevucky.jiri |
Reimplement waitq using thread_wait/wakeup
This adds a few functions …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@76e17d7c
|
2 years |
zarevucky.jiri |
Reorganize mutex implementation
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@11d2c983
|
2 years |
zarevucky.jiri |
Reorganize locking in thread_destroy()
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@1871118
|
2 years |
zarevucky.jiri |
Make thread_t reference counted
This simplifies interaction between …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@daadfa6
|
2 years |
zarevucky.jiri |
Remove unnecessary context field from cpu_t structure
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@e994898
|
2 years |
zarevucky.jiri |
Fix an oops
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@4c78104
|
2 years |
zarevucky.jiri |
Get rid of waitq_count_get/set
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@c0b54c9
|
2 years |
zarevucky.jiri |
Thread is guaranteed to exist in waitq_sleep_timed_out
…
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@83789ea2
|
2 years |
zarevucky.jiri |
Simplify timeout handling
Since timeout_unregister() now waits for …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@ba25c4b
|
2 years |
zarevucky.jiri |
Synchronize timeout_unregister() with handler execution
This ensures …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@78acbc72
|
2 years |
zarevucky.jiri |
Remove unused thread_interrupted(), make thread_interrupt() useful
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@0366d09d
|
2 years |
zarevucky.jiri |
Avoid separate allocation for FPU context
With _Alignas, we can …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|
@7c5320c
|
2 years |
zarevucky.jiri |
Use the semaphore interface instead of waitq in some places
Since we …
ticket/834-toolchain-update
topic/msim-upgrade
topic/simplify-dev-export
|
|
|