Make thread_t reference counted
commit1871118c75a2375392bbb2054288202965beca01
authorJiří Zárevúcky <zarevucky.jiri@gmail.com>
Fri, 10 Feb 2023 22:53:12 +0000 (10 23:53 +0100)
committerJiří Zárevúcky <zarevucky.jiri@gmail.com>
Fri, 10 Feb 2023 22:59:11 +0000 (10 23:59 +0100)
tree6ccec7dee84d1069b568c042010b9976def6e356
parentdaadfa699247351099d4c91048e2f9e9a29c346a
Make thread_t reference counted

This simplifies interaction between various locks and thread
lifespan, which simplifies things. For example, threads_lock can
now simply be a mutex protecting the global it was made for, and
nothing more.
20 files changed:
kernel/generic/include/lib/refcount.h
kernel/generic/include/proc/thread.h
kernel/generic/include/synch/waitq.h
kernel/generic/src/console/cmd.c
kernel/generic/src/ipc/kbox.c
kernel/generic/src/main/kinit.c
kernel/generic/src/main/uinit.c
kernel/generic/src/proc/program.c
kernel/generic/src/proc/scheduler.c
kernel/generic/src/proc/task.c
kernel/generic/src/proc/thread.c
kernel/generic/src/synch/waitq.c
kernel/generic/src/sysinfo/stats.c
kernel/generic/src/udebug/udebug_ops.c
kernel/test/mm/falloc2.c
kernel/test/mm/slab1.c
kernel/test/mm/slab2.c
kernel/test/synch/semaphore1.c
kernel/test/synch/semaphore2.c
kernel/test/thread/thread1.c