Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
565 6766 d 2 h jermar /kernel/trunk/generic/include/ Improved ALIGN_UP.  
/kernel/trunk/generic/include/align.h
564 6766 d 3 h jermar /kernel/trunk/ Send in some improvements.  
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia64/include/context.h
/kernel/trunk/arch/sparc64/include/context.h
/kernel/trunk/generic/include/align.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/frame.c
562 6766 d 9 h decky /kernel/trunk/generic/src/main/ fix typo  
/kernel/trunk/generic/src/main/main.c
561 6766 d 9 h decky /kernel/trunk/ better way of placing revision, timestamp and arch in banner  
/kernel/trunk/tools/buildtag
/kernel/trunk/Makefile
/kernel/trunk/generic/include/debug.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/kernel.config
/kernel/trunk/tools/config.py
557 6766 d 13 h jermar /kernel/trunk/ Add comments describing locking rules for some locks.
Cleanup.
 
/kernel/trunk/arch/ia32/include/atomic.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/synch/waitq.h
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/rwlock.c
/kernel/trunk/generic/src/synch/spinlock.c
/kernel/trunk/generic/src/synch/waitq.c
553 6767 d 4 h palkovsky /kernel/trunk/generic/include/synch/ Fix of compiling without SMP.  
/kernel/trunk/generic/include/synch/spinlock.h
552 6767 d 4 h palkovsky /kernel/trunk/ Named spinlocks  
/kernel/trunk/arch/ia32/src/drivers/i8042.c
/kernel/trunk/generic/include/synch/spinlock.h
/kernel/trunk/generic/src/console/chardev.c
/kernel/trunk/generic/src/console/kconsole.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/heap.c
/kernel/trunk/generic/src/mm/tlb.c
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/rwlock.c
/kernel/trunk/generic/src/synch/spinlock.c
/kernel/trunk/generic/src/synch/waitq.c
/kernel/trunk/generic/src/time/timeout.c
/kernel/trunk/tools/config.py
548 6767 d 6 h jermar /kernel/trunk/ Cleanup and fixes.  
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/mips32/src/mm/page.c
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/console/kconsole.c
/kernel/trunk/generic/src/cpu/cpu.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/kernel.config
/kernel/trunk/test/mm/mapping1/test.c
544 6767 d 13 h decky /kernel/trunk/generic/src/console/ kconsole halt command  
/kernel/trunk/generic/src/console/kconsole.c
541 6768 d 3 h jermar /kernel/trunk/generic/src/mm/ Get rid of junk.  
/kernel/trunk/generic/src/mm/frame.c
539 6768 d 7 h jermar /kernel/trunk/ Buddy allocator cleanup and fixes.
- Add some comments.
- Update zone information on frames allocation/deallocation.
 
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/frame.c
538 6768 d 8 h jermar /kernel/trunk/ Buddy allocator cleanup and fixes II.
- Rewrite IS_BUDDY_LEFT_BLOCK so that it does not need floating point on some architectures (e.g. IA-64).
- Get rid of IS_BUDDY_RIGHT_BLOCK.
- Make sparc64 use zone_create_in_region.
 
/kernel/trunk/arch/sparc64/src/mm/frame.c
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/frame.c
537 6768 d 9 h jermar /kernel/trunk/ Buddy system cleanup and fixes.
- missing use of KA2PA in frame_init
- truncating black list addresses to frame boundaries
- removal of left-over obsolete structures
- fixing some comments
 
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/frame.c
536 6769 d 5 h bondari /kernel/trunk/ Minor bugfix caused by invalid frame_region_not_free() usage  
/kernel/trunk/Makefile.config
/kernel/trunk/arch/mips32/src/mm/frame.c
/kernel/trunk/generic/src/mm/frame.c
534 6769 d 6 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
/kernel
/SPARTAN
533 6769 d 6 h bondari /SPARTAN/trunk/ Buddy allocator for physical memory complete implementation.
Tested on IA32, AMD64, MIPS32. RWLock Test #5 is not passed.
NOTE: Other architectures could be broken (but should not be)
 
/SPARTAN/trunk/Makefile.config
/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/ia64/src/mm/frame.c
/SPARTAN/trunk/arch/mips32/src/mm/frame.c
/SPARTAN/trunk/arch/mips32/src/mm/page.c
/SPARTAN/trunk/arch/ppc32/src/mm/frame.c
/SPARTAN/trunk/generic/include/mm/buddy.h
/SPARTAN/trunk/generic/include/mm/frame.h
/SPARTAN/trunk/generic/include/typedefs.h
/SPARTAN/trunk/generic/src/cpu/cpu.c
/SPARTAN/trunk/generic/src/mm/buddy.c
/SPARTAN/trunk/generic/src/mm/frame.c
/SPARTAN/trunk/generic/src/mm/page.c
/SPARTAN/trunk/generic/src/mm/vm.c
/SPARTAN/trunk/generic/src/proc/thread.c
532 6769 d 7 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
/SPARTAN
/kernel
524 6774 d 12 h jermar /kernel/trunk/generic/include/ sort.h was actually written by Sergey Bondari.  
/kernel/trunk/generic/include/sort.h
523 6775 d 10 h jermar /kernel/trunk/ Clean up.  
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia64/src/drivers/keyboard.c
/kernel/trunk/arch/ia64/src/ski/ski.c
/kernel/trunk/doc/arch/ia32
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
518 6777 d 3 h jermar /kernel/trunk/ Improve kconsole's support for recognition of commands with arguments.
Implement ARG_TYPE_STRING.
Add 'describe' command.
Move kconsole.c to generic/src/console.
Move kconsole.h to generic/include/console.
 
/kernel/trunk/generic/include/console/kconsole.h
/kernel/trunk/generic/src/console/kconsole.c
/kernel/trunk/generic/include/main/kconsole.h
/kernel/trunk/generic/src/main/kconsole.c
/kernel/trunk/Makefile
/kernel/trunk/generic/include/func.h
/kernel/trunk/generic/include/macros.h
/kernel/trunk/generic/src/lib/func.c
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
517 6778 d 3 h jermar /kernel/trunk/ Implement basic kernel console command recognition.
Commands without arguments are now recognized.
 
/kernel/trunk/generic/include/macros.h
/kernel/trunk/arch/ia32/src/drivers/i8042.c
/kernel/trunk/generic/include/console/console.h
/kernel/trunk/generic/include/func.h
/kernel/trunk/generic/include/main/kconsole.h
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/console/console.c
/kernel/trunk/generic/src/lib/func.c
/kernel/trunk/generic/src/main/kconsole.c
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
512 6780 d 13 h jermar /kernel/trunk/ SMP work.
Add madt_irq_to_pin().
Make ksmp() use virtual irq_to_pin() function, which makes better sence for ACPI configurations.
 
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/ia32/include/smp/apic.h
/kernel/trunk/arch/ia32/include/smp/mps.h
/kernel/trunk/arch/ia32/include/smp/smp.h
/kernel/trunk/arch/ia32/src/drivers/i8042.c
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia32/src/smp/mps.c
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/genarch/src/acpi/matd.c
/kernel/trunk/generic/src/main/kconsole.c
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
511 6781 d 2 h jermar /kernel/trunk/ Enable dummy kconsole for ia32 and amd64 (UP mode works).  
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/ia32/src/drivers/i8042.c
/kernel/trunk/arch/mips32/src/drivers/keyboard.c
/kernel/trunk/generic/include/console/chardev.h
/kernel/trunk/generic/src/console/chardev.c
/kernel/trunk/generic/src/console/console.c
510 6781 d 2 h jermar /kernel/trunk/ Add chardev_t.
This type is meant to abstract any input character device such as keyboard, serial port etc.
Add stdin.
Add dummy kconsole.
 
/kernel/trunk/generic/include/console
/kernel/trunk/generic/include/console/chardev.h
/kernel/trunk/generic/include/console/console.h
/kernel/trunk/generic/include/main/kconsole.h
/kernel/trunk/generic/src/console
/kernel/trunk/generic/src/console/chardev.c
/kernel/trunk/generic/src/console/console.c
/kernel/trunk/generic/src/main/kconsole.c
/kernel/trunk/Makefile
/kernel/trunk/arch/mips32/src/drivers/keyboard.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
508 6781 d 5 h jermar /kernel/trunk/ Basic keyboard support for ia32.
For some reason, keyoboard looks dead on SMP.

Make kinit() print "kinit..." strings in longer intervals.
 
/kernel/trunk/arch/ia32/include/i8042.h
/kernel/trunk/arch/ia32/src/drivers/i8042.c
/kernel/trunk/generic/src/main/kinit.c
506 6781 d 7 h decky /kernel/trunk/ preparation for init task loading  
/kernel/trunk/arch/ia32/include/boot/memmapasm.h
/kernel/trunk/arch/ia32/include/boot/boot.h
/kernel/trunk/arch/ia32/include/boot/memmap.h
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/boot/memmap.S
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/contrib/conf/msim.conf
/kernel/trunk/generic/src/main/main.c
503 6781 d 10 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 6781 d 11 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
/kernel
/SPARTAN
492 6782 d 4 h jermar /SPARTAN/trunk/ Rename map_page_to_frame() to page_mapping_insert() and find_mapping() to page_mapping_find().
New names should make it more apparent that these two belong together.
 
/SPARTAN/trunk/arch/amd64/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/drivers/ega.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/arch/mips32/src/mm/tlb.c
/SPARTAN/trunk/genarch/src/acpi/acpi.c
/SPARTAN/trunk/generic/include/mm/page.h
/SPARTAN/trunk/generic/src/mm/page.c
/SPARTAN/trunk/generic/src/mm/vm.c
/SPARTAN/trunk/test/mm/mapping1/test.c
490 6788 d 10 h jermar /SPARTAN/trunk/generic/src/mm/ Fix typo and clean up comments.  
/SPARTAN/trunk/generic/src/mm/buddy.c
489 6788 d 10 h jermar /SPARTAN/trunk/generic/ Make the buddy system more general.
Store implementation defined pointer in buddy_system_t.
Pass buddy system pointer to implementation defined buddy system operations.
 
/SPARTAN/trunk/generic/include/mm/buddy.h
/SPARTAN/trunk/generic/include/mm/frame.h
/SPARTAN/trunk/generic/src/mm/buddy.c
/SPARTAN/trunk/generic/src/mm/frame.c
488 6788 d 15 h bondari /SPARTAN/trunk/generic/src/mm/ Small fix :)  
/SPARTAN/trunk/generic/src/mm/frame.c
487 6788 d 15 h bondari /SPARTAN/trunk/generic/src/mm/ Frame isect/coalesce functions optimization  
/SPARTAN/trunk/generic/src/mm/frame.c
483 6789 d 6 h jermar /SPARTAN/trunk/ For now, each architecture must use its own -O switch (-O2 doesn't work for ia64, -O3 doesn't work for mips32).

New mips32 atomic_add() function.

Cleanup.
 
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/include/atomic.h
/SPARTAN/trunk/arch/mips32/include/cpu.h
/SPARTAN/trunk/arch/mips32/src/interrupt.c
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/generic/include/arch.h
/SPARTAN/trunk/generic/include/config.h
/SPARTAN/trunk/generic/include/cpu.h
/SPARTAN/trunk/generic/include/proc/scheduler.h
/SPARTAN/trunk/generic/include/synch/rwlock.h
/SPARTAN/trunk/generic/include/typedefs.h
/SPARTAN/trunk/generic/src/proc/scheduler.c
/SPARTAN/trunk/test/fpu/fpu1/test.c
/SPARTAN/trunk/test/fpu/mips1/test.c
/SPARTAN/trunk/test/fpu/sse1/test.c
/SPARTAN/trunk/test/synch/rwlock5/test.c
482 6790 d 7 h jermar /SPARTAN/trunk/generic/include/ Fix typo in buddy.h.
Make default memsize 8M.
 
/SPARTAN/trunk/generic/include/config.h
/SPARTAN/trunk/generic/include/mm/buddy.h
480 6791 d 6 h bondari /SPARTAN/trunk/generic/ Buddy system allocator implementation. Not checked. For review only.  
/SPARTAN/trunk/generic/include/mm/buddy.h
/SPARTAN/trunk/generic/include/mm/frame.h
/SPARTAN/trunk/generic/src/mm/frame.c
479 6792 d 7 h bondari /SPARTAN/trunk/generic/ Buddy system implementation. Not functional yet - only framework prepeared.
Also added 2 macros FRAME2ADDR and ADDR2FRAME.
 
/SPARTAN/trunk/generic/include/mm/frame.h
/SPARTAN/trunk/generic/src/mm/frame.c
475 6793 d 12 h jermar /SPARTAN/trunk/ Define atomic_t type.  
/SPARTAN/trunk/arch/ia32/include/atomic.h
/SPARTAN/trunk/arch/ia64/include/atomic.h
/SPARTAN/trunk/arch/mips32/include/atomic.h
/SPARTAN/trunk/arch/ppc32/include/atomic.h
/SPARTAN/trunk/arch/sparc64/include/atomic.h
/SPARTAN/trunk/generic/include/proc/scheduler.h
/SPARTAN/trunk/generic/src/proc/scheduler.c
/SPARTAN/trunk/generic/src/proc/thread.c
/SPARTAN/trunk/test/synch/rwlock4/test.c
/SPARTAN/trunk/test/synch/rwlock5/test.c
/SPARTAN/trunk/test/synch/semaphore1/test.c
/SPARTAN/trunk/test/synch/semaphore2/test.c
471 6794 d 12 h decky /SPARTAN/trunk/ remove NDEBUG, replace it by ~CONFIG_DEBUG
set CONFIG_DEBUG = y
 
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/generic/include/debug.h
/SPARTAN/trunk/generic/include/panic.h
470 6795 d 1 h jermar /SPARTAN/trunk/ ia64 work.
Big cleanup of IA-64 interrupt processing.
Merge of interrupt.c and interrupt_handler.c.
Rewrite of ivt.S and interrupt.c.
Higher level interrupt handlers are now passed a vector number and a pointer to stack structure.

ia32 work.
ia32 has ordered writes. Until it deploys weaker memory ordering model, write_barrier() can be empty statement.
 
/SPARTAN/trunk/arch/ia64/src/interrupt_handler.c
/SPARTAN/trunk/arch/ia32/include/barrier.h
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/include/asm.h
/SPARTAN/trunk/arch/ia64/include/interrupt.h
/SPARTAN/trunk/arch/ia64/include/register.h
/SPARTAN/trunk/arch/ia64/src/cpu/cpu.c
/SPARTAN/trunk/arch/ia64/src/ia64.c
/SPARTAN/trunk/arch/ia64/src/interrupt.c
/SPARTAN/trunk/arch/ia64/src/ivt.S
/SPARTAN/trunk/generic/src/main/main.c