Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
1023 |
6809 d 12 h |
vana |
/kernel/trunk/ |
Itanium FPU active context switch |
|
/kernel/trunk/arch/ia64/include/fpu_context.h /kernel/trunk/arch/ia64/include/interrupt.h /kernel/trunk/arch/ia64/include/register.h /kernel/trunk/arch/ia64/src/dummy.s /kernel/trunk/arch/ia64/src/fpu_context.c /kernel/trunk/arch/ia64/src/interrupt.c /kernel/trunk/arch/ia64/src/ivt.S /kernel/trunk/kernel.config /kernel/trunk/test/fpu/fpu1/test.c
|
919 |
6815 d 18 h |
jermar |
/kernel/trunk/ |
ia64 work.
Changes to make userspace work (kernel part).
Use ski.conf from contrib directory to run Ski.
There is actually no appropriate syscall handler yet. |
|
/kernel/trunk/arch/ia64/Makefile.inc /kernel/trunk/arch/ia64/include/asm.h /kernel/trunk/arch/ia64/include/context.h /kernel/trunk/arch/ia64/include/mm/as.h /kernel/trunk/arch/ia64/include/register.h /kernel/trunk/arch/ia64/src/asm.S /kernel/trunk/arch/ia64/src/dummy.s /kernel/trunk/arch/ia64/src/ia64.c /kernel/trunk/arch/ia64/src/ivt.S /kernel/trunk/arch/ia64/src/mm/tlb.c /kernel/trunk/arch/ia64/src/start.S /kernel/trunk/contrib/conf/ski.conf
|
901 |
6823 d 19 h |
jermar |
/kernel/trunk/arch/ |
ia64 work.
Provide PA2KA(identity) mapping for kernel data references via Alternate Data TLB Fault handler.
Add before_thread_runs_arch() that maps kstack, if necessary.
Add easy to use dtlb_mapping_insert() for comfortable insertion of kernel data mappings. |
|
/kernel/trunk/arch/ia64/src/proc /kernel/trunk/arch/ia64/src/proc/scheduler.c
/kernel/trunk/arch/ia64/Makefile.inc /kernel/trunk/arch/ia64/include/mm/asid.h /kernel/trunk/arch/ia64/include/mm/page.h /kernel/trunk/arch/ia64/include/mm/tlb.h /kernel/trunk/arch/ia64/src/dummy.s /kernel/trunk/arch/ia64/src/mm/page.c /kernel/trunk/arch/ia64/src/mm/tlb.c /kernel/trunk/arch/ia64/src/start.S /kernel/trunk/arch/sparc64/include/mm/tlb.h /kernel/trunk/arch/sparc64/src/proc/scheduler.c
|
897 |
6825 d 7 h |
jermar |
/kernel/trunk/ |
sparc64 work.
Fix KBD_VIRT_ADDRESS.
Call before_thread_runs() prior to the switch to the thread's stack. Add comment why this is crucial.
Add after_thread_ran() to the scheduler.
Add before_thread_runs_arch() and after_thread_ran_arch() for sparc64, mapping/demapping thread's kernel stack.
Add dummy after_thread_ran_arch() to all other architectures.
Add dtlb_insert_mapping() to promote code reuse. |
|
/kernel/trunk/arch/sparc64/src/proc /kernel/trunk/arch/sparc64/src/proc/scheduler.c
/kernel/trunk/arch/amd64/src/proc/scheduler.c /kernel/trunk/arch/ia32/src/proc/scheduler.c /kernel/trunk/arch/ia64/src/dummy.s /kernel/trunk/arch/mips32/src/mips32.c /kernel/trunk/arch/ppc32/src/dummy.s /kernel/trunk/arch/sparc64/Makefile.inc /kernel/trunk/arch/sparc64/include/drivers/i8042.h /kernel/trunk/arch/sparc64/include/mm/tlb.h /kernel/trunk/arch/sparc64/include/trap/exception.h /kernel/trunk/arch/sparc64/src/console.c /kernel/trunk/arch/sparc64/src/mm/tlb.c /kernel/trunk/arch/sparc64/src/sparc64.c /kernel/trunk/arch/sparc64/src/trap/exception.c /kernel/trunk/arch/sparc64/src/trap/trap_table.S /kernel/trunk/generic/include/proc/scheduler.h /kernel/trunk/generic/src/proc/scheduler.c
|
534 |
6910 d 11 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel again. |
|
/kernel
/SPARTAN
|
532 |
6910 d 11 h |
jermar |
/ |
Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch. |
|
/SPARTAN
/kernel
|
503 |
6922 d 14 h |
jermar |
/kernel/trunk/ |
Rename arch_late_init() to arch_pre_smp_init().
Add arch_post_smp_init().
Enable IRQ_KBD on ia-32 (doesn't work on Bochs SMP, works on Bochs UP). |
|
/kernel/trunk/arch/amd64/src/amd64.c /kernel/trunk/arch/ia32/src/ia32.c /kernel/trunk/arch/ia64/src/dummy.s /kernel/trunk/arch/ia64/src/ia64.c /kernel/trunk/arch/mips32/src/mips32.c /kernel/trunk/arch/ppc32/src/ppc32.c /kernel/trunk/arch/sparc64/src/sparc64.c /kernel/trunk/generic/include/arch.h /kernel/trunk/generic/src/main/main.c
|
501 |
6922 d 15 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel. |
|
/kernel
/SPARTAN
|
476 |
6933 d 18 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
ia64 CPU identification. |
|
/SPARTAN/trunk/arch/ia64/include/cpu.h /SPARTAN/trunk/arch/ia64/include/register.h /SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/dummy.s
|
432 |
6941 d 10 h |
jermar |
/SPARTAN/trunk/arch/ |
IA-64 work.
Add some asm functions for manipulation with PSR, AR and CR registers. |
|
/SPARTAN/trunk/arch/ia64/include/register.h
/SPARTAN/trunk/arch/ia32/include/asm.h /SPARTAN/trunk/arch/ia64/include/asm.h /SPARTAN/trunk/arch/ia64/include/barrier.h /SPARTAN/trunk/arch/ia64/src/dummy.s /SPARTAN/trunk/arch/ia64/src/interrupt.c
|
413 |
6958 d 7 h |
jermar |
/SPARTAN/trunk/ |
Rename cpu_priority_{high|low|restore|read} functions to interrupts_{disable|enable|restore|read}.
Rename pri_t to ipl_t (Interrupt Priority Level).
Rename thread_t::pri to thread_t::priority. |
|
/SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/include/context.h /SPARTAN/trunk/arch/amd64/include/types.h /SPARTAN/trunk/arch/amd64/src/interrupt.c /SPARTAN/trunk/arch/amd64/src/userspace.c /SPARTAN/trunk/arch/ia32/include/asm.h /SPARTAN/trunk/arch/ia32/include/context.h /SPARTAN/trunk/arch/ia32/include/types.h /SPARTAN/trunk/arch/ia32/src/drivers/ega.c /SPARTAN/trunk/arch/ia32/src/interrupt.c /SPARTAN/trunk/arch/ia32/src/userspace.c /SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/ia64/include/types.h /SPARTAN/trunk/arch/ia64/src/context.S /SPARTAN/trunk/arch/ia64/src/dummy.s /SPARTAN/trunk/arch/mips32/include/context.h /SPARTAN/trunk/arch/mips32/include/types.h /SPARTAN/trunk/arch/mips32/src/drivers/arc.c /SPARTAN/trunk/arch/mips32/src/exception.c /SPARTAN/trunk/arch/mips32/src/interrupt.c /SPARTAN/trunk/arch/mips32/src/mips32.c /SPARTAN/trunk/arch/mips32/src/mm/asid.c /SPARTAN/trunk/arch/mips32/src/mm/tlb.c /SPARTAN/trunk/arch/mips32/src/mm/vm.c /SPARTAN/trunk/arch/ppc32/include/asm.h /SPARTAN/trunk/arch/ppc32/include/context.h /SPARTAN/trunk/arch/ppc32/include/types.h /SPARTAN/trunk/include/arch.h /SPARTAN/trunk/include/proc/thread.h /SPARTAN/trunk/src/debug/print.c /SPARTAN/trunk/src/lib/func.c /SPARTAN/trunk/src/main/kinit.c /SPARTAN/trunk/src/main/main.c /SPARTAN/trunk/src/mm/frame.c /SPARTAN/trunk/src/mm/heap.c /SPARTAN/trunk/src/mm/vm.c /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/proc/task.c /SPARTAN/trunk/src/proc/thread.c /SPARTAN/trunk/src/synch/rwlock.c /SPARTAN/trunk/src/synch/semaphore.c /SPARTAN/trunk/src/synch/waitq.c /SPARTAN/trunk/src/time/clock.c /SPARTAN/trunk/src/time/delay.c /SPARTAN/trunk/src/time/timeout.c /SPARTAN/trunk/test/synch/rwlock4/test.c /SPARTAN/trunk/tools/amd64/gencontext.c /SPARTAN/trunk/tools/mips32/gencontext.c
|
368 |
6984 d 17 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap. |
|
/SPARTAN/trunk/arch/ia64/src/mm /SPARTAN/trunk/arch/ia64/src/mm/frame.c
/SPARTAN/trunk/arch/amd64/src/mm/page.c /SPARTAN/trunk/arch/ia32/src/mm/frame.c /SPARTAN/trunk/arch/ia32/src/mm/page.c /SPARTAN/trunk/arch/ia32/src/smp/mps.c /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/src/dummy.s /SPARTAN/trunk/arch/mips32/src/mm/frame.c /SPARTAN/trunk/arch/ppc32/src/mm/frame.c /SPARTAN/trunk/include/mm/frame.h /SPARTAN/trunk/src/mm/frame.c
|
322 |
6997 d 8 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
Reduce IA-64 context_t according to IA-64 ABI.
Make IA-64 port compile again. |
|
/SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/ia64/src/context.S /SPARTAN/trunk/arch/ia64/src/dummy.s
|
309 |
6999 d 21 h |
palkovsky |
/SPARTAN/trunk/ |
Added architecture independent hooks for fpu lazy context switching.
It is enabled by defining FPU_LAZY |
|
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/include/cpu.h /SPARTAN/trunk/arch/amd64/src/cpu/cpu.c /SPARTAN/trunk/arch/amd64/src/fpu_context.c /SPARTAN/trunk/arch/amd64/src/interrupt.c /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia32/Makefile.inc.cross /SPARTAN/trunk/arch/ia32/include/cpu.h /SPARTAN/trunk/arch/ia32/include/fpu_context.h /SPARTAN/trunk/arch/ia32/src/cpu/cpu.c /SPARTAN/trunk/arch/ia32/src/fpu_context.c /SPARTAN/trunk/arch/ia32/src/interrupt.c /SPARTAN/trunk/arch/ia64/src/dummy.s /SPARTAN/trunk/arch/ia64/src/fpu_context.c /SPARTAN/trunk/arch/mips/src/dummy.s /SPARTAN/trunk/arch/mips/src/fpu_context.c /SPARTAN/trunk/arch/ppc/src/dummy.s /SPARTAN/trunk/arch/ppc/src/fpu_context.c /SPARTAN/trunk/include/fpu_context.h /SPARTAN/trunk/include/proc/scheduler.h /SPARTAN/trunk/src/proc/scheduler.c
|
212 |
7005 d 9 h |
vana |
/SPARTAN/trunk/ |
Basic exception support added for ia64 arch ...... |
|
/SPARTAN/trunk/arch/ia64/src/cpu /SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/interrupt_handler.c /SPARTAN/trunk/arch/ia64/src/ivt.S
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/src/dummy.s /SPARTAN/trunk/arch/mips/src/putchar.c /SPARTAN/trunk/src/Makefile.config /SPARTAN/trunk/src/main/main.c /SPARTAN/trunk/src/proc/scheduler.c
|
161 |
7021 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. |
|
/SPARTAN/trunk/arch/ia64/src/dummy.s /SPARTAN/trunk/arch/mips/src/dummy.s /SPARTAN/trunk/arch/ppc/src/dummy.s
/SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/mips/src/fake.s /SPARTAN/trunk/arch/ppc/src/fake.s
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/mips/Makefile.inc /SPARTAN/trunk/arch/ppc/Makefile.inc
|
120 |
7067 d 7 h |
jermar |
/SPARTAN/trunk/ |
Generic 4-level page tables interface & implementation (review & test).
Implement more architecture dependant macros on IA-32.
Provide fake implementation on IA-64 and MIPS.
Convert map_page_to_frame() to use the new interface.
Move adjusted map_page_to_frame() from IA-32's arch/mm/page.c to the generic mm/page.c. |
|
/SPARTAN/trunk/arch/ia32/include/mm/page.h /SPARTAN/trunk/arch/ia32/src/mm/page.c /SPARTAN/trunk/arch/ia64/include/mm/page.h /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/mips/include/mm/page.h /SPARTAN/trunk/arch/mips/src/mm/page.c /SPARTAN/trunk/include/mm/page.h /SPARTAN/trunk/include/typedefs.h /SPARTAN/trunk/src/mm/page.c
|
102 |
7100 d 10 h |
jermar |
/SPARTAN/trunk/ |
IA-64 work.
Redefine FRAME_SIZE to "(16*1024)" instead of "2*4096". Note that the latter definition was wrong because of the lack of "()".
Take panic_printf(), cpu_halt() and memsetb() out of fake.s and implement them properly in asm.S.
Move ski_init_console() from arch_post_mm_init() to arch_pre_mm_init().
In start.S, write r0 to ar.bspstore.
Janitorial fixes.
Add count_t type.
Replace several occurrences of int and __u32 by count_t or size_t.
Shorten several panic strings. |
|
/SPARTAN/trunk/arch/ia64/include/mm/frame.h /SPARTAN/trunk/arch/ia64/src/asm.S /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/ia64/src/ia64.c /SPARTAN/trunk/arch/ia64/src/start.S /SPARTAN/trunk/include/config.h /SPARTAN/trunk/include/mm/frame.h /SPARTAN/trunk/include/mm/heap.h /SPARTAN/trunk/include/typedefs.h /SPARTAN/trunk/src/mm/frame.c /SPARTAN/trunk/src/mm/heap.c
|
78 |
7115 d 9 h |
jermar |
/SPARTAN/trunk/ |
IA-64 cosmetics.
Add ski_init_console() and ski_putchar() to ski.c to perform ski specific tasks.
Change the copyright string in main.c to display both copyrights on a new line. |
|
/SPARTAN/trunk/arch/ia64/src/ski /SPARTAN/trunk/arch/ia64/src/ski/ski.c
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/include/ski/ski.h /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/ia64/src/ia64.c /SPARTAN/trunk/arch/ia64/src/putchar.c /SPARTAN/trunk/arch/ia64/src/start.S /SPARTAN/trunk/src/main/main.c
|
68 |
7117 d 11 h |
decky |
/SPARTAN/trunk/ |
NDEBUG debug symbol, ASSERT debug macro, fancier panic() in debug mode
indentation fixes, ASSERTs |
|
/SPARTAN/trunk/arch/ia32/src/debug/panic.s /SPARTAN/trunk/arch/ia32/src/interrupt.c /SPARTAN/trunk/arch/ia32/src/pm.c /SPARTAN/trunk/arch/ia32/src/smp/mps.c /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/mips/src/cache.c /SPARTAN/trunk/arch/mips/src/exception.c /SPARTAN/trunk/arch/mips/src/interrupt.c /SPARTAN/trunk/arch/mips/src/mm/tlb.c /SPARTAN/trunk/arch/mips/src/panic.s /SPARTAN/trunk/include/list.h /SPARTAN/trunk/include/panic.h /SPARTAN/trunk/include/print.h /SPARTAN/trunk/include/typedefs.h /SPARTAN/trunk/src/debug/print.c /SPARTAN/trunk/src/main/kinit.c /SPARTAN/trunk/src/main/main.c /SPARTAN/trunk/src/mm/frame.c /SPARTAN/trunk/src/mm/heap.c /SPARTAN/trunk/src/mm/vm.c /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/synch/rwlock.c /SPARTAN/trunk/src/time/timeout.c
|
60 |
7117 d 16 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
IA-64 work.
Give up attempts to persuade ld to patch the kernel image with proper hardcoded lenghts and addresses.
Add special sections and calculate the numbers manually.
Fix wrong order of operands in sub instructions in memcpy() implementation. |
|
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/_link.ld /SPARTAN/trunk/arch/ia64/src/asm.S /SPARTAN/trunk/arch/ia64/src/context.S /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/ia64/src/start.S
|
52 |
7120 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(). |
|
/SPARTAN/trunk/arch/ia32/src/fpu_context.c /SPARTAN/trunk/arch/ia64/src/fpu_context.c /SPARTAN/trunk/arch/mips/src/fpu_context.c /SPARTAN/trunk/arch/powerpc/src/fpu_context.c /SPARTAN/trunk/include/fpu_context.h
/SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia32/src/context.s /SPARTAN/trunk/arch/ia32/src/proc/scheduler.c /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/mips/Makefile.inc /SPARTAN/trunk/arch/mips/src/fake.s /SPARTAN/trunk/arch/powerpc/Makefile.inc /SPARTAN/trunk/include/context.h /SPARTAN/trunk/include/proc/scheduler.h /SPARTAN/trunk/src/proc/scheduler.c
|
51 |
7120 d 11 h |
jermar |
/SPARTAN/trunk/ |
Small changes, fix last few wrong indentations.
TODO cleanup.
IA-64 bits.
Call main_bsp from kernel_image_start().
Prepare for IA-64 context_save and context_restore. |
|
/SPARTAN/trunk/arch/ia32/include/context.h /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/ia64/src/start.S /SPARTAN/trunk/arch/mips/include/context.h /SPARTAN/trunk/doc/TODO
|
36 |
7126 d 11 h |
jermar |
/SPARTAN/trunk/arch/ia64/ |
More IA-64 work. |
|
/SPARTAN/trunk/arch/ia64/include/ski /SPARTAN/trunk/arch/ia64/include/ski/ski.h /SPARTAN/trunk/arch/ia64/src/ia64.c /SPARTAN/trunk/arch/ia64/src/putchar.c
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/_link.ld /SPARTAN/trunk/arch/ia64/boot/_link.ld /SPARTAN/trunk/arch/ia64/boot/boot.s /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/ia64/src/start.S
|
35 |
7127 d 19 h |
jermar |
/SPARTAN/trunk/ |
Early support for IA-64 architecture. |
|
/SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/ia64/_link.ld /SPARTAN/trunk/arch/ia64/boot /SPARTAN/trunk/arch/ia64/boot/Makefile /SPARTAN/trunk/arch/ia64/boot/_link.ld /SPARTAN/trunk/arch/ia64/boot/boot.s /SPARTAN/trunk/arch/ia64/include /SPARTAN/trunk/arch/ia64/include/asm.h /SPARTAN/trunk/arch/ia64/include/atomic.h /SPARTAN/trunk/arch/ia64/include/context.h /SPARTAN/trunk/arch/ia64/include/cpu.h /SPARTAN/trunk/arch/ia64/include/interrupt.h /SPARTAN/trunk/arch/ia64/include/mm /SPARTAN/trunk/arch/ia64/include/mm/frame.h /SPARTAN/trunk/arch/ia64/include/mm/page.h /SPARTAN/trunk/arch/ia64/include/mm/vm.h /SPARTAN/trunk/arch/ia64/include/smp /SPARTAN/trunk/arch/ia64/include/smp/atomic.h /SPARTAN/trunk/arch/ia64/include/thread.h /SPARTAN/trunk/arch/ia64/include/types.h /SPARTAN/trunk/arch/ia64/src /SPARTAN/trunk/arch/ia64/src/fake.s /SPARTAN/trunk/arch/ia64/src/start.S /SPARTAN/trunk/doc/arch /SPARTAN/trunk/doc/arch/ia64 /SPARTAN/trunk/doc/arch/mips
/SPARTAN/trunk/doc/mips
/SPARTAN/trunk/doc/requirements /SPARTAN/trunk/src/Makefile.config /SPARTAN/trunk/src/mm/vm.c /SPARTAN/trunk/src/proc/task.c
|