Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
1186 |
6746 d 13 h |
jermar |
/kernel/trunk/arch/ |
Replace assembly from pm.c with new inline functions defined in asm.h. |
|
/kernel/trunk/arch/amd64/include/asm.h /kernel/trunk/arch/amd64/src/pm.c /kernel/trunk/arch/ia32/include/asm.h /kernel/trunk/arch/ia32/src/pm.c
|
1185 |
6746 d 14 h |
jermar |
/kernel/trunk/ |
Add task_create_arch() for all architectures. |
|
/kernel/trunk/arch/amd64/src/proc/task.c /kernel/trunk/arch/ia32/src/proc/task.c
/kernel/trunk/arch/amd64/Makefile.inc /kernel/trunk/arch/ia32/Makefile.inc /kernel/trunk/arch/ia64/include/proc/task.h /kernel/trunk/arch/mips32/include/proc/task.h /kernel/trunk/arch/ppc32/include/proc/task.h /kernel/trunk/arch/ppc64/include/proc/task.h /kernel/trunk/arch/sparc64/include/proc/task.h /kernel/trunk/generic/include/proc/task.h /kernel/trunk/generic/src/proc/task.c
|
1184 |
6746 d 14 h |
jermar |
/kernel/trunk/ |
Move arch/thread.h to arch/proc/thread.h on all architectures.
Replace ARCH_THREAD_DATA with new thread_arch_t arch on all architectures.
Similarily, add task_arch_t arch on all architectures.
On amd64 and ia32, grow the TSS segment by 64K + 1B to support IO port
permission bitmap. For the same reason, define per task IO port permission bitmaps
on ia32 and amd64. |
|
/kernel/trunk/arch/amd64/include/proc /kernel/trunk/arch/amd64/include/proc/task.h /kernel/trunk/arch/amd64/include/proc/thread.h /kernel/trunk/arch/ia32/include/proc /kernel/trunk/arch/ia32/include/proc/task.h /kernel/trunk/arch/ia32/include/proc/thread.h /kernel/trunk/arch/ia64/include/proc /kernel/trunk/arch/ia64/include/proc/task.h /kernel/trunk/arch/ia64/include/proc/thread.h /kernel/trunk/arch/mips32/include/proc /kernel/trunk/arch/mips32/include/proc/task.h /kernel/trunk/arch/mips32/include/proc/thread.h /kernel/trunk/arch/ppc32/include/proc /kernel/trunk/arch/ppc32/include/proc/task.h /kernel/trunk/arch/ppc32/include/proc/thread.h /kernel/trunk/arch/ppc64/include/proc /kernel/trunk/arch/ppc64/include/proc/task.h /kernel/trunk/arch/ppc64/include/proc/thread.h /kernel/trunk/arch/sparc64/include/proc /kernel/trunk/arch/sparc64/include/proc/task.h /kernel/trunk/arch/sparc64/include/proc/thread.h
/kernel/trunk/arch/amd64/include/thread.h /kernel/trunk/arch/ia32/include/thread.h /kernel/trunk/arch/ia64/include/thread.h /kernel/trunk/arch/mips32/include/thread.h /kernel/trunk/arch/ppc32/include/thread.h /kernel/trunk/arch/ppc64/include/thread.h /kernel/trunk/arch/sparc64/include/thread.h
/kernel/trunk/arch/amd64/include/pm.h /kernel/trunk/arch/amd64/src/amd64.c /kernel/trunk/arch/amd64/src/proc/scheduler.c /kernel/trunk/arch/amd64/src/proc/thread.c /kernel/trunk/arch/ia32/include/pm.h /kernel/trunk/arch/ia32/src/ia32.c /kernel/trunk/arch/ia32/src/proc/scheduler.c /kernel/trunk/arch/ia32/src/proc/thread.c /kernel/trunk/generic/include/proc/task.h /kernel/trunk/generic/include/proc/thread.h /kernel/trunk/generic/src/proc/thread.c
|
1179 |
6747 d 12 h |
jermar |
/kernel/trunk/generic/src/mm/ |
Add some sanity checks to make sure the address space created by SYS_MAM_PHYSMEM will not be remapped
and that as_page_fault() will not try to service page fault for that area. |
|
/kernel/trunk/generic/src/mm/as.c
|
1178 |
6747 d 12 h |
jermar |
/kernel/trunk/ |
Add task_find_by_id().
Add kernel support for SYS_MAP_PHYSMEM. |
|
/kernel/trunk/generic/include/ddi /kernel/trunk/generic/include/ddi/ddi.h /kernel/trunk/generic/include/ddi/ddi_arg.h /kernel/trunk/generic/src/ddi /kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/Makefile /kernel/trunk/generic/include/errno.h /kernel/trunk/generic/include/mm/as.h /kernel/trunk/generic/include/proc/task.h /kernel/trunk/generic/include/syscall/syscall.h /kernel/trunk/generic/src/mm/as.c /kernel/trunk/generic/src/proc/task.c /kernel/trunk/generic/src/syscall/syscall.c
|
1177 |
6747 d 16 h |
jermar |
/kernel/trunk/generic/ |
Modify B+tree node key width to be 64-bit wide on all platforms. |
|
/kernel/trunk/generic/include/adt/btree.h /kernel/trunk/generic/src/adt/btree.c /kernel/trunk/generic/src/proc/task.c /kernel/trunk/generic/src/proc/thread.c
|
1176 |
6747 d 17 h |
jermar |
/kernel/trunk/generic/ |
Kernel support for SYS_GET_TASK_ID syscall. |
|
/kernel/trunk/generic/include/proc/task.h /kernel/trunk/generic/include/syscall/syscall.h /kernel/trunk/generic/src/proc/task.c /kernel/trunk/generic/src/syscall/syscall.c
|
1174 |
6747 d 18 h |
jermar |
/kernel/trunk/ |
Start capabilities support. |
|
/kernel/trunk/generic/include/security /kernel/trunk/generic/include/security/cap.h /kernel/trunk/generic/src/security /kernel/trunk/generic/src/security/cap.c
/kernel/trunk/Makefile /kernel/trunk/generic/include/proc/task.h /kernel/trunk/generic/src/main/kinit.c /kernel/trunk/generic/src/proc/task.c
|
1172 |
6747 d 19 h |
palkovsky |
/kernel/trunk/arch/amd64/src/proc/ |
Comment update. |
|
/kernel/trunk/arch/amd64/src/proc/scheduler.c
|
1171 |
6747 d 20 h |
jermar |
/kernel/trunk/ |
Initialize ARCH_THREAD_DATA on all architectures.
On ia32 and amd64 this fixes bug caused by uninitialized TLS pointer. |
|
/kernel/trunk/arch/amd64/src/proc/thread.c /kernel/trunk/arch/ia32/src/proc/thread.c
/kernel/trunk/arch/amd64/Makefile.inc /kernel/trunk/arch/ia32/Makefile.inc /kernel/trunk/arch/ia64/include/thread.h /kernel/trunk/arch/mips32/include/thread.h /kernel/trunk/arch/ppc32/include/thread.h /kernel/trunk/arch/ppc64/include/thread.h /kernel/trunk/arch/sparc64/include/thread.h /kernel/trunk/generic/include/proc/thread.h /kernel/trunk/generic/src/proc/thread.c
|
1170 |
6748 d 12 h |
vana |
/kernel/trunk/ |
Stack size definition macro definition fix |
|
/kernel/trunk/arch/ia64/include/arch.h /kernel/trunk/generic/include/arch.h /kernel/trunk/generic/src/proc/task.c
|
1169 |
6749 d 7 h |
jermar |
/kernel/trunk/doc/ |
Change developer emails to their aliases in helenos.eu. |
|
/kernel/trunk/doc/AUTHORS
|
1168 |
6750 d 10 h |
vana |
/kernel/trunk/ |
Thread RSE support completion (kernel) |
|
/kernel/trunk/arch/ia64/src/ia64.c /kernel/trunk/generic/src/proc/task.c
|
1165 |
6750 d 12 h |
decky |
/kernel/trunk/arch/ |
set ELF format explicitly |
|
/kernel/trunk/arch/ppc32/_link.ld.in /kernel/trunk/arch/ppc64/_link.ld.in
|
1164 |
6750 d 12 h |
jermar |
/kernel/trunk/generic/ |
Switch B+tree node allocation from malloc() to a dedicated slab - btree_node_slab. |
|
/kernel/trunk/generic/include/adt/btree.h /kernel/trunk/generic/src/adt/btree.c /kernel/trunk/generic/src/main/main.c
|
1163 |
6750 d 13 h |
decky |
/kernel/trunk/arch/ |
fix types |
|
/kernel/trunk/arch/ppc32/include/types.h /kernel/trunk/arch/ppc64/include/types.h
|
1162 |
6750 d 13 h |
decky |
/kernel/trunk/arch/ |
make the ppc ports generate proper 32b or 64b code |
|
/kernel/trunk/arch/ppc32/Makefile.inc /kernel/trunk/arch/ppc32/_link.ld.in /kernel/trunk/arch/ppc64/Makefile.inc /kernel/trunk/arch/ppc64/_link.ld.in /kernel/trunk/arch/ppc64/src/dummy.s
|
1161 |
6750 d 13 h |
decky |
/kernel/trunk/ |
remove AFLAGS from C argument list |
|
/kernel/trunk/Makefile
|
1160 |
6750 d 13 h |
decky |
/kernel/trunk/ |
start ppc64 port
the code is currently a wild mixture of 32/64b code, will be fixed |
|
/kernel/trunk/arch/ppc64 /kernel/trunk/arch/ppc64/Makefile.inc /kernel/trunk/arch/ppc64/_link.ld.in /kernel/trunk/arch/ppc64/include /kernel/trunk/arch/ppc64/include/arch.h /kernel/trunk/arch/ppc64/include/arg.h /kernel/trunk/arch/ppc64/include/asm /kernel/trunk/arch/ppc64/include/asm.h /kernel/trunk/arch/ppc64/include/asm/regname.h /kernel/trunk/arch/ppc64/include/atomic.h /kernel/trunk/arch/ppc64/include/barrier.h /kernel/trunk/arch/ppc64/include/boot /kernel/trunk/arch/ppc64/include/boot/boot.h /kernel/trunk/arch/ppc64/include/byteorder.h /kernel/trunk/arch/ppc64/include/console.h /kernel/trunk/arch/ppc64/include/context.h /kernel/trunk/arch/ppc64/include/context_offset.h /kernel/trunk/arch/ppc64/include/cpu.h /kernel/trunk/arch/ppc64/include/cpuid.h /kernel/trunk/arch/ppc64/include/debug.h /kernel/trunk/arch/ppc64/include/elf.h /kernel/trunk/arch/ppc64/include/faddr.h /kernel/trunk/arch/ppc64/include/fpu_context.h /kernel/trunk/arch/ppc64/include/interrupt.h /kernel/trunk/arch/ppc64/include/memstr.h /kernel/trunk/arch/ppc64/include/mm /kernel/trunk/arch/ppc64/include/mm/as.h /kernel/trunk/arch/ppc64/include/mm/asid.h /kernel/trunk/arch/ppc64/include/mm/frame.h /kernel/trunk/arch/ppc64/include/mm/memory_init.h /kernel/trunk/arch/ppc64/include/mm/page.h /kernel/trunk/arch/ppc64/include/mm/tlb.h /kernel/trunk/arch/ppc64/include/thread.h /kernel/trunk/arch/ppc64/include/types.h /kernel/trunk/arch/ppc64/src /kernel/trunk/arch/ppc64/src/asm.S /kernel/trunk/arch/ppc64/src/boot /kernel/trunk/arch/ppc64/src/boot/boot.S /kernel/trunk/arch/ppc64/src/console.c /kernel/trunk/arch/ppc64/src/context.S /kernel/trunk/arch/ppc64/src/cpu /kernel/trunk/arch/ppc64/src/cpu/cpu.c /kernel/trunk/arch/ppc64/src/debug /kernel/trunk/arch/ppc64/src/debug/panic.s /kernel/trunk/arch/ppc64/src/dummy.s /kernel/trunk/arch/ppc64/src/exception.S /kernel/trunk/arch/ppc64/src/fpu_context.S /kernel/trunk/arch/ppc64/src/interrupt.c /kernel/trunk/arch/ppc64/src/mm /kernel/trunk/arch/ppc64/src/mm/as.c /kernel/trunk/arch/ppc64/src/mm/frame.c /kernel/trunk/arch/ppc64/src/mm/memory_init.c /kernel/trunk/arch/ppc64/src/mm/page.c /kernel/trunk/arch/ppc64/src/ppc64.c /kernel/trunk/arch/ppc64/src/proc /kernel/trunk/arch/ppc64/src/proc/scheduler.c /kernel/trunk/tools/ppc64 /kernel/trunk/tools/ppc64/gencontext.c
/kernel/trunk/arch/ppc32/Makefile.inc /kernel/trunk/kernel.config
|
1159 |
6750 d 13 h |
jermar |
/kernel/trunk/generic/ |
Replace list of all tasks with B+tree of all tasks. |
|
/kernel/trunk/generic/include/proc/task.h /kernel/trunk/generic/src/proc/task.c
|
1158 |
6750 d 14 h |
jermar |
/kernel/trunk/generic/ |
Replace list of all threads with B+tree of all threads.
Add function thread_exists() for querying existence of thread. |
|
/kernel/trunk/generic/include/proc/thread.h /kernel/trunk/generic/src/proc/thread.c /kernel/trunk/generic/src/synch/waitq.c
|
1156 |
6750 d 15 h |
jermar |
/kernel/trunk/generic/ |
Sleeping in a wait queue can be now interrupted with
waitq_interrupt_sleep(). |
|
/kernel/trunk/generic/include/proc/thread.h /kernel/trunk/generic/include/synch/synch.h /kernel/trunk/generic/include/synch/waitq.h /kernel/trunk/generic/src/synch/waitq.c
|
1154 |
6754 d 11 h |
jermar |
/kernel/trunk/generic/src/adt/ |
Fix critical bug in hash table initialization.
Only half of the table was actually allocated and initialized. |
|
/kernel/trunk/generic/src/adt/hash_table.c
|
1153 |
6754 d 17 h |
jermar |
/kernel/trunk/generic/src/synch/ |
Because of another race condition, futex_wakeup() needs to be able to allocate and initialize the kernel futex structure too. |
|
/kernel/trunk/generic/src/synch/futex.c
|
1151 |
6754 d 18 h |
decky |
/kernel/trunk/arch/ppc32/src/mm/ |
ppc32: mark four first frames as unavailable |
|
/kernel/trunk/arch/ppc32/src/mm/frame.c
|
1150 |
6755 d 20 h |
jermar |
/kernel/trunk/generic/ |
Rename btree_node_left_sibling() to btree_leaf_node_left_neighbour()
and btree_node_right_sibling() to btree_leaf_node_right_neighbour()
as the left and right neighbours of a node needn't be its siblings. |
|
/kernel/trunk/generic/include/adt/btree.h /kernel/trunk/generic/src/adt/btree.c /kernel/trunk/generic/src/mm/as.c
|
1149 |
6756 d 7 h |
jermar |
/kernel/trunk/generic/include/mm/ |
s/B+-tree/B+tree/ |
|
/kernel/trunk/generic/include/mm/as.h
|
1148 |
6756 d 7 h |
jermar |
/kernel/trunk/generic/src/ |
s/B+-tree/B+tree/ |
|
/kernel/trunk/generic/src/adt/btree.c /kernel/trunk/generic/src/mm/as.c
|
1147 |
6756 d 7 h |
jermar |
/kernel/trunk/generic/ |
Deploy B+tree in address space area management.
Change as_remap() to check for conflicts with other address space areas only when the area in question grows. |
|
/kernel/trunk/generic/include/adt/btree.h /kernel/trunk/generic/include/mm/as.h /kernel/trunk/generic/src/adt/btree.c /kernel/trunk/generic/src/mm/as.c
|
1145 |
6757 d 14 h |
decky |
/kernel/trunk/arch/ppc32/ |
align ppc32 framebuffer on 128K boundary |
|
/kernel/trunk/arch/ppc32/include/boot/boot.h /kernel/trunk/arch/ppc32/src/console.c
|
1144 |
6758 d 10 h |
jermar |
/kernel/trunk/ |
Completed B+-tree support.
Enable btree_remove().
Reorder some static functions and group them together.
Fix order of nodes in the leaf_head list. |
|
/kernel/trunk/generic/src/adt/btree.c /kernel/trunk/generic/src/mm/slab.c /kernel/trunk/test/btree/btree1/test.c
|
1142 |
6758 d 18 h |
jermar |
/kernel/trunk/ |
Update B+-tree code.
The code is there, btree_remove() has not been tested yet.
(Fixes, if any, are to come later today.) |
|
/kernel/trunk/generic/include/adt/btree.h /kernel/trunk/generic/src/adt/btree.c /kernel/trunk/test/btree/btree1/test.c
|
1141 |
6759 d 15 h |
palkovsky |
/kernel/trunk/generic/src/ipc/ |
Completed ipc_cleanup, it should be somehow integrated into
cleanup of task. The function can sleep. |
|
/kernel/trunk/generic/src/ipc/ipc.c /kernel/trunk/generic/src/ipc/ipcrsc.c /kernel/trunk/generic/src/ipc/sysipc.c
|
1140 |
6760 d 10 h |
jermar |
/kernel/trunk/generic/ |
Change B+-tree from 2-3-4 tree to 2-3-4-5 tree by adding space for the fourth key.
This should make key removal easier. |
|
/kernel/trunk/generic/include/adt/btree.h /kernel/trunk/generic/src/adt/btree.c
|
1139 |
6760 d 10 h |
jermar |
/kernel/trunk/generic/include/ |
Fix comments. |
|
/kernel/trunk/generic/include/arch.h /kernel/trunk/generic/include/mm/buddy.h /kernel/trunk/generic/include/synch/futex.h
|
1138 |
6763 d 12 h |
jermar |
/kernel/trunk/ |
CPU stacks must have two frames on ia64.
Make sure both thread stack frames are mapped in before_thread_runs_arch().
Take STACK_FRAMES into account during kernel memory layout initialization in main_bsp(). |
|
/kernel/trunk/arch/ia64/include/context.h /kernel/trunk/arch/ia64/include/mm/tlb.h /kernel/trunk/arch/ia64/src/ivt.S /kernel/trunk/arch/ia64/src/proc/scheduler.c /kernel/trunk/contrib/conf/msim.conf /kernel/trunk/generic/include/config.h /kernel/trunk/generic/include/mm/frame.h /kernel/trunk/generic/src/cpu/cpu.c /kernel/trunk/generic/src/main/main.c /kernel/trunk/generic/src/proc/thread.c
|
1137 |
6763 d 16 h |
vana |
/kernel/trunk/arch/ia64/include/ |
context_set patch in kernel for changed allocation of ia64 RSE and stack |
|
/kernel/trunk/arch/ia64/include/context.h
|
1136 |
6764 d 10 h |
jermar |
/kernel/trunk/generic/src/adt/ |
Try to avoid splitting full B+-tree nodes by trying left or right rotation first.
(This improved memory consumption of this algorithm by some 40% - meassured on 101-item set). |
|
/kernel/trunk/generic/src/adt/btree.c
|
1135 |
6765 d 6 h |
decky |
/kernel/trunk/ |
framebuffer code cleanup, support for non-standard scanline sizes
ppc32: get framebuffer parameters from boot loader |
|
/kernel/trunk/arch/mips32/src/console.c /kernel/trunk/arch/ppc32/src/console.c /kernel/trunk/arch/sparc64/src/console.c /kernel/trunk/genarch/include/fb/fb.h /kernel/trunk/genarch/src/fb/fb.c
|
1134 |
6765 d 13 h |
jermar |
/kernel/trunk/generic/src/adt/ |
Change B+-tree to:
- store lesser keys in a key's left subtree
- propagate the bigger of medians (if there are two medians) when splitting a node |
|
/kernel/trunk/generic/src/adt/btree.c
|