Rev |
Age |
Author |
Path |
Log message |
Diff |
192 |
6976 d 12 h |
jermar |
/SPARTAN/trunk/ |
Dump implementation of THREAD, TASK and CPU.
Implement preemption-safe versions of THREAD, TASK and CPU using THE.
Get rid of CPU_ID_ARCH on all architectures.
Get rid of write_dr0() and read_dr0() on IA-32.
Get rid of cpu_private_data and cpu_private_data_t. |
|
191 |
6976 d 13 h |
decky |
/SPARTAN/trunk/arch/ppc/ |
PPC memory size detection |
|
190 |
6976 d 13 h |
decky |
/SPARTAN/trunk/arch/ppc/src/debug/ |
PPC panic() |
|
189 |
6976 d 14 h |
decky |
/SPARTAN/trunk/arch/ppc/include/asm/ |
PPC assembler register names |
|
188 |
6976 d 15 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
AMD64 now can switch into long mode.
Basic page tables working. |
|
187 |
6976 d 17 h |
cejka |
/SPARTAN/trunk/ |
Licence to print1/test.c added.
New function for printing memory map at ia32. |
|
186 |
6976 d 18 h |
decky |
/SPARTAN/trunk/arch/ppc/ |
add missing OpenFirmware related files |
|
185 |
6976 d 18 h |
decky |
/SPARTAN/trunk/arch/ |
OpenFirmware support |
|
184 |
6976 d 20 h |
jermar |
/SPARTAN/trunk/ |
Add lib/the.c.
Add and deploy the_initialize() and the_copy().
Make IA-32's before_thread_runs() use SP_DELTA macro. |
|
183 |
6976 d 20 h |
cejka |
/SPARTAN/trunk/ |
Small improvements in print1 test and its source code format. |
|
182 |
6976 d 21 h |
cejka |
/SPARTAN/trunk/ |
Test for printf added. |
|
181 |
6976 d 21 h |
cejka |
/SPARTAN/trunk/ |
Bugs in printf and va_arg functions repaired. |
|
180 |
6977 d 10 h |
jermar |
/SPARTAN/trunk/ |
Globalize 'size' and 'delta' and rename them to 'kernel_size' and 'heap_delta'.
Fix heap initialization to take 'heap_delta' into account.
Implement IA-64 get_stack_base().
Adjust SP_DELTA's to consider one extra word on stack.
(So that the stack pointer is within appropriate limits even on IA-64).
More #include cleanup. |
|
179 |
6977 d 12 h |
decky |
/SPARTAN/trunk/ |
frmaebuffer font |
|
178 |
6977 d 16 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Fixed linker script to include .eh_frame section.
It now boots into protected mode. |
|
177 |
6977 d 18 h |
jermar |
/SPARTAN/trunk/ |
Add some comments to IA-32 src/boot/boot.S and src/smp.S.
Make the boot stack start on page boundary.
This is required by get_stack_base().
Define 'THE' macro.
Implement preemption_disable() and preemption_enable().
Add memory barrier macros.
IA-32 macros need support for older processors.
Non IA-32 macros are dummy.
Reduction of many #include paths. |
|
176 |
6978 d 9 h |
jermar |
/SPARTAN/trunk/arch/ia32/src/boot/ |
Initialize the stack prior to using it. |
|
175 |
6978 d 17 h |
decky |
/SPARTAN/trunk/contrib/ |
Basic PearPC configuration |
|
174 |
6981 d 9 h |
jermar |
/SPARTAN/trunk/ |
Small changes.
Coding style fix in main.c.
Make 'cli' be the first instruction in boot.S again. |
|
173 |
6981 d 9 h |
jermar |
/SPARTAN/trunk/ |
Preparations for weaker preemption model.
Make all kernel stacks (i.e. startup, scheduler and thread) be STACK_SIZE bytes long.
Reincarnate "the" structure. This time, it is planned to be located at the base of each and every kernel stack.
On IA-32 and MIPS, implement get_stack_base() functions. On the rest of supported platforms, define it to be dummy. |
|
172 |
6982 d 18 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/ |
Do not allow red area on stack in kernel mode.
Small updates for AMD64 memory layout. |
|
171 |
6982 d 18 h |
jermar |
/SPARTAN/trunk/ |
Make rwlock test #3 compile again.
Make rwlock test #4 preemption-safe.
Prepare for preemption controlling functions. |
|
170 |
6985 d 8 h |
jermar |
/SPARTAN/trunk/ |
Add comment to scheduler.c explaining the reason behind saving CPU priority of preempted thread.
Remove two unnecessary cpu_priority_high() calls. |
|
169 |
6986 d 8 h |
jermar |
/SPARTAN/trunk/arch/ |
For each architecture, add an extra type cast of x to __address to both KA2PA() and PA2KA(). |
|
168 |
6986 d 8 h |
jermar |
/SPARTAN/trunk/ |
Add type cast to __address in vm_create().
This seems to fix the problem with userspace.
Looks like KA2PA() returned wrong address when applied on pte_t *.
Uncomment panic() in gp_fault().
Get rid of cli and sti in userspace code. |
|
167 |
6987 d 17 h |
jermar |
/SPARTAN/trunk/ |
Switch over to per vm_t page tables. (breaks ia32 userspace)
Define dummy memcopy() for amd64 and ppc to satisfy compiler.
Get rid of problematic #include <arch/mm/page.h> in mm/page.h.
Indentation fixes and small changes here and there. |
|
166 |
6989 d 10 h |
decky |
/SPARTAN/trunk/arch/ppc/ |
prepare for PPC console support |
|
165 |
6989 d 11 h |
palkovsky |
/SPARTAN/trunk/arch/amd64/boot/ |
Copied from ia32, bootloader can be the same. |
|
164 |
6989 d 11 h |
palkovsky |
/SPARTAN/trunk/ |
Basics for amd64 architecture. It does compile, but it does not work yet. |
|
163 |
6989 d 16 h |
decky |
/SPARTAN/trunk/arch/ppc/ |
first booting ELF |
|
162 |
6989 d 18 h |
decky |
/SPARTAN/trunk/arch/ppc/ |
PPC linker script |
|
161 |
6991 d 19 h |
jermar |
/SPARTAN/trunk/arch/ |
For all relevant architectures, rename fake.s to dummy.s to better reflect the purpose of the file.
Also define global symbol called dummy. |
|
160 |
6995 d 7 h |
jermar |
/SPARTAN/trunk/ |
PPC work.
Define dummy implementations of many functions in fake.s.
Define kernel_image_start in start.S. |
|
159 |
6995 d 7 h |
jermar |
/SPARTAN/trunk/arch/ppc/include/ |
Fix copyright dates. |
|
158 |
6995 d 15 h |
decky |
/SPARTAN/trunk/src/mm/ |
remove forgotten comment |
|
157 |
6995 d 15 h |
decky |
/SPARTAN/trunk/ |
remove cyclic including, change linker script path |
|
156 |
6995 d 18 h |
decky |
/SPARTAN/trunk/ |
PPC work in progress |
|
155 |
6997 d 8 h |
decky |
/SPARTAN/trunk/arch/powerpc/boot/ |
PPC preparation work (not working yet) |
|
154 |
6999 d 7 h |
jermar |
/SPARTAN/trunk/ |
Update TODO.
Explicitly mark places of interest related to memory barriers on non-IA-32 architectures with TODO remarks so that they don't get forgotten. |
|
153 |
6999 d 7 h |
jermar |
/SPARTAN/trunk/ |
Add memory barriers into spinlock_*().
Implement CS_{ENTER|LEAVE}_BARRIER() for IA-32 (no-op).
Provide incomplete CS_{ENTER|LEAVE}_BARRIER() macros for IA-64 and MIPS as well.
Small changes here and there. |
|