Rev |
Age |
Author |
Path |
Log message |
Diff |
111 |
7001 d 11 h |
palkovsky |
/SPARTAN/trunk/ |
Code cleanup in scheduler.c thread.c - removed unnecessary spinlock.
atomic_inc, atomic_dec moved to arch/atomic.h instead of arch/smp/atomic.h,
advisable to use even in non-smp mode.
Fixed atomic_inc, atomic_dec in mips architecture. |
|
109 |
7004 d 11 h |
jermar |
/SPARTAN/trunk/ |
Discard 'copy' parameter of map_page_to_frame().
Introduce 'root' parameter of map_page_to_frame().
If 'root' is zero, page directory address is read from CPU.
Otherwise 'root' is used as page directory address.
Add missing word to new doxygen-style comments in scheduler.c. |
|
107 |
7004 d 16 h |
decky |
/SPARTAN/trunk/src/ |
doxygen-style comments
cleanups |
|
99 |
7012 d 22 h |
jermar |
/SPARTAN/trunk/ |
Replace "THREAD->cpu" with "CPU" in scheduler().
Add trailing '\n' to memmap.h
Fix some translations.
Relpace one Czech sentence with its English translation. |
|
97 |
7013 d 18 h |
jermar |
/SPARTAN/trunk/ |
Add context_set() macro to support extended behaviour for architectures with more than one stack (e.g. IA-64).
Now there is one generic context_set() defined in include/context.h and one IA-64 specific defined in arch/ia64/include/context.h. |
|
81 |
7021 d 10 h |
jermar |
/SPARTAN/trunk/ |
Add SP_DELTA macro for each architecture.
On IA-32, this macro represents two doublewords that must be on the stack when switching to a new stack.
On MIPS, there is no need to fix sp when switching to a new stack.
On IA-64, this macro is used to allocate the 16-byte scratch area.
IA-64 work.
Changes in start.S. More changes to come.
Define memcopy().
Janitorial fixes.
Add missing #include <panic.h> to rwlock4/test.c.
Remove wrong use of inline keyword from both declaration and definition of l_apic_id(). |
|
76 |
7026 d 10 h |
jermar |
/SPARTAN/trunk/ |
For each architecture, add function/macro FADDR that calculates absolute address of a function referenced by void (* f)(void).
IA-32 and MIPS gcc's use direct addressing (f == FADDR(f)) while IA-64 gcc uses indirect addressing (f != FADDR(f)).
Tweaks in IA-64 Makefile.inc to declare constant gp and main Makefile to consider ASFLAGS when compiling .s targets. |
|
75 |
7026 d 13 h |
vana |
/SPARTAN/trunk/ |
Move fpu_owner pointer from cpu_arch_t to cpu_t. |
|
73 |
7027 d 9 h |
vana |
/SPARTAN/trunk/ |
Finished FPU lazy context switching - first version. I have not tested it and there are many things which must be changed when
it runs first time OK. |
|
68 |
7027 d 11 h |
decky |
/SPARTAN/trunk/ |
NDEBUG debug symbol, ASSERT debug macro, fancier panic() in debug mode
indentation fixes, ASSERTs |
|
57 |
7030 d 7 h |
vana |
/SPARTAN/trunk/ |
Begin support for FPU context switching on platforms which can't do it in lazy way. |
|
52 |
7030 d 8 h |
vana |
/SPARTAN/trunk/ |
Move fpu_context switching functions from context.s to fpu_context.c on all platforms.
Add fpu_context.h.
Make before_thread_runs() arch-independent and create arch dependent version before_thread_runs_arch(). |
|
35 |
7037 d 20 h |
jermar |
/SPARTAN/trunk/ |
Early support for IA-64 architecture. |
|
22 |
7051 d 13 h |
jermar |
/SPARTAN/trunk/ |
Added before_thread_runs() to cope with TSS of user space tasks. |
|
16 |
7058 d 14 h |
jermar |
/SPARTAN/trunk/ |
Switch from mm-based 'the' mechanism to macro-based 'cpu_private_data[CPU_ID_ARCH]' mechanism.
Added l_apic_id() and some other minor APIC changes.
Move gdtr to K_DATA_START section.
Move K_DATA_START section immediately behind K_TEXT_START section so that real-mode addresses work even with growing size of kernel code. |
|
15 |
7059 d 13 h |
jermar |
/SPARTAN/trunk/ |
Introduce macros CPU, THREAD, TASK and use them to replace the->cpu, the->thread, the->task.
Later on, this will make it possible to reference *current* cpu, thread and/or task without the aid from virtual memory. |
|
11 |
7102 d 7 h |
jermar |
/SPARTAN/trunk/ |
Clean up (ia32 vs. i386).
Header files reorganization. |
|
10 |
7102 d 19 h |
jermar |
/SPARTAN/trunk/ |
Be more careful when sending IPI on UP configured as SMP. |
|
8 |
7104 d 19 h |
jermar |
/SPARTAN/trunk/src/proc/ |
Use ipi_broadcast() instead of l_apic_broadcast_custom_ipi(). |
|
7 |
7104 d 19 h |
jermar |
/SPARTAN/trunk/ |
New IPI for waking up idle CPU's halted in scheduler.
Added architecture-independent ipi_broadcast(). |
|