|
|
@f558b5f
|
3 years |
Thierry Delisle |
Implemented kernel_getcpu from rseq and librseq.
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3814957
|
3 years |
Thierry Delisle |
Commented out broken code
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3489ea6
|
3 years |
Thierry Delisle |
Started work on kernel_getcpu
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@43784ac
|
3 years |
Thierry Delisle |
Changed libcfathread to consistently define _GNU_SOURCE
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@ab5baab
|
3 years |
Thierry Delisle |
Attempt to fix the stack checker for when coroutines are interrupted …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3e1a705
|
4 years |
Thierry Delisle |
Start ready queue cutoff at zero to avoid spurious steals.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a67c5b6
|
4 years |
Thierry Delisle |
Processors now have a pointer to their tls.
This means the tls is no …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@d3ba775
|
4 years |
Thierry Delisle |
More clean-up after new subqueue
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@f6fdfb14
|
4 years |
Thierry Delisle |
Removed old sub-queue
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@2b96031
|
4 years |
Thierry Delisle |
Added new subqueue implementation.
Seems faster will test on another …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@c993b15
|
4 years |
Thierry Delisle |
Changed RW lock to avoid hitting the global array on schedule.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@fb0be05
|
4 years |
Thierry Delisle |
Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a76efc8
|
4 years |
Thierry Delisle |
futures now optionally don't unpark the target thread
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@cfff639
|
4 years |
Thierry Delisle |
Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@89eff25
|
4 years |
Thierry Delisle |
Some changes to stats and added back preferred
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@254ad1b
|
4 years |
Thierry Delisle |
Separate schedule_thread from the scheduler lock
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a3821fa
|
4 years |
Thierry Delisle |
Changed enable interrupts:
- no longer save the caller for debugging
…
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@431cd4f
|
4 years |
Thierry Delisle |
Added alternative to relaxed-fifo scheduler.
Disabled by default
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a017ee7
|
4 years |
Thierry Delisle |
Ready-queue grow/shrink now reassigns the id of all processors.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@fc59b580
|
4 years |
Thierry Delisle |
Clusters now keep track of the active processors as well
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@6a9b12b
|
4 years |
Thierry Delisle |
Incremental change towards having the cluster keep a list of active …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a7504db
|
4 years |
Thierry Delisle |
Changed how the cluster idle lock is implemented to be covered by the …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a33c113
|
4 years |
Thierry Delisle |
Minor changes so using the global RWlock is more concise.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@73f4d08
|
4 years |
Thierry Delisle |
Added stats implementation for dumping a big array of timestamped …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a5a01faa
|
4 years |
Thierry Delisle |
Fix a bug where stats from the main processor where not tallied properly.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@5cb51502
|
4 years |
Thierry Delisle |
Fix stats so they are correctly tallied when called from outside the …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@bd0bdd37
|
4 years |
Thierry Delisle |
Fix how bias is handled in the ready queue to be more consistent with …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a5e7233
|
4 years |
Thierry Delisle |
C interface now runs worker init routine in dedicated thread.
Also …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a1538cd
|
4 years |
Thierry Delisle |
Implemented part of the same C api for threads as libfibre.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@dddb3dd0
|
4 years |
Thierry Delisle |
Changed io to use ring per kernel threads.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@78da4ab
|
4 years |
Thierry Delisle |
New implementation of io based on instance burrowing.
Trying to avoid …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@da3963a
|
4 years |
Thierry Delisle |
Moved bin_sem_t out of kernel.hfa since it's not needed.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@454f478
|
4 years |
Thierry Delisle |
Re-arranged and commented low-level headers.
Main goal was for better …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@28c35e2
|
4 years |
Thierry Delisle |
Fixed startup to use proper protections
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@7a70fb2
|
4 years |
Thierry Delisle |
Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@72a3aff
|
4 years |
Thierry Delisle |
restore the the protection of the heap on destroy pthread
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@dd92fe9
|
4 years |
pabuhr |
switch to page_size and map_prot
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@97229d6
|
4 years |
Thierry Delisle |
Changed stack creation to toggle between mmap and malloc based on the …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@bfcf6b9
|
4 years |
Thierry Delisle |
Stacks are always created with mmap to control page permission
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@fe9468e2
|
4 years |
Thierry Delisle |
Added function thread_rand as a tls-safe version of tls_rand()
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@ac12f1f
|
4 years |
Thierry Delisle |
canary is now a void * so it prints in hexa in gdb
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@1b033b8
|
4 years |
Thierry Delisle |
Alarm loop now has it's own stats block
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@82a2fed
|
4 years |
Thierry Delisle |
Changed preemption to use code sections rather than atomic access to TLS.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@8fc652e0
|
4 years |
Thierry Delisle |
Change usage of TLS to more strongly segregate in kernel and out of …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e873838
|
4 years |
Thierry Delisle |
Removed unpark and added support for unpark from the kernel …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@6a77224
|
4 years |
Thierry Delisle |
Changed park/unpark ticket to be -1,0,1 instead of 0,1,2 because it's …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@5afb49a
|
4 years |
Thierry Delisle |
Split thread_leave so backend is called from the kernel once the …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b4b63e8
|
4 years |
Thierry Delisle |
Fixed missing changes to park/unpark.
Added canary to threads to check …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e235429
|
4 years |
Thierry Delisle |
Removed last parker/unparker information is it was not particularly useful
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@7ab28b69
|
4 years |
Thierry Delisle |
Removed unnecessary line causing a warning
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@58d64a4
|
4 years |
Thierry Delisle |
processor_id_t now have a bool to state if it is a full processor. …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@772411a
|
4 years |
Thierry Delisle |
Moved bias to it's own function.
Fixed minor assertions triggering.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e67a82d
|
4 years |
pabuhr |
fix conflicts
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@88cafe7
|
4 years |
pabuhr |
add CtxGet? routine for ARM 64-bit
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@442b624
|
4 years |
pabuhr |
temporarily disable ARM disable/enable_global_interrupts()
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@f2384c9a
|
4 years |
Thierry Delisle |
Added forward/reverse rng for later use in the ready queue
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@62502cc4
|
4 years |
Thierry Delisle |
Fixed deadlock where threads could acquire the central scheduler lock …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@1eb239e4
|
4 years |
Thierry Delisle |
Removed snzi and replaced it with a fast/slow path
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3e2b9c9
|
4 years |
Thierry Delisle |
More restructuring of translation units
Unclear if it improves …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e660761
|
4 years |
Thierry Delisle |
First attempt at reducing complation time by restructuring the code. …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|