Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
1251 6766 d 5 h jermar /kernel/trunk/ Fix BITS2BYTES macro to return 0 when passed 0 as argument.
Fix ia32 TSS segment granularity to be 0.
Fix ia32 and amd64 initial TSS limit to be 103.
Little textual changes here and there.
 
/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/include/smp/apic.h
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/proc/scheduler.c
/kernel/trunk/generic/include/adt/bitmap.h
1212 6772 d 1 h palkovsky /kernel/trunk/ Added uspace call to enable/disable interrupts.  
/kernel/trunk/arch/amd64/include/cpu.h
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/amd64/src/ddi/ddi.c
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/cpu.h
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/ia32/src/ddi/ddi.c
/kernel/trunk/arch/mips32/src/ddi/ddi.c
/kernel/trunk/arch/mips32/src/start.S
/kernel/trunk/generic/include/ddi/ddi.h
/kernel/trunk/generic/include/security/cap.h
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/syscall/syscall.c
1203 6777 d 3 h jermar /kernel/trunk/arch/ Full implementation of amd64 and ia32 SYS_ENABLE_IOSPACE syscall.
Needs testing.
 
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/src/ddi/ddi.c
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/src/ddi/ddi.c
1201 6777 d 4 h jermar /kernel/trunk/arch/ Fix amd64 and ia32 management of I/O bitmap in before_task_runs_arch()
by treating the iomap array as a bitmap. Make use of the bitmap type
and functions added in previous commit.
 
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/include/proc/task.h
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/amd64/src/proc/task.c
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/include/proc/task.h
/kernel/trunk/arch/ia32/src/proc/scheduler.c
/kernel/trunk/arch/ia32/src/proc/task.c
1187 6781 d 2 h jermar /kernel/trunk/ Cleanup pm.c and pm.h code on ia32 and amd64.
Add before_task_runs() and before_task_runs_arch() for each architecture.
Add ia32 and amd64 code to ensure I/O Permission Bitmap update.
 
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/src/cpu/cpu.c
/kernel/trunk/arch/amd64/src/pm.c
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/ia32/include/asm.h
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/src/cpu/cpu.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/proc/scheduler.c
/kernel/trunk/arch/ia64/src/proc/scheduler.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/arch/ppc32/src/proc/scheduler.c
/kernel/trunk/arch/ppc64/src/proc/scheduler.c
/kernel/trunk/arch/sparc64/src/proc/scheduler.c
/kernel/trunk/generic/include/proc/scheduler.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/proc/scheduler.c
1186 6781 d 3 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
1184 6781 d 5 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
1112 6802 d 9 h palkovsky /kernel/trunk/ Added basic kernel infrastructure for ThreadLocalStorage(TLS) for
ia32(complete),amd64(complete),mips32(missing emulation of rdhwr instruction).
 
/kernel/trunk/arch/amd64/include/cpu.h
/kernel/trunk/arch/amd64/include/thread.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/include/thread.h
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/proc/scheduler.c
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/syscall/syscall.c
1104 6803 d 2 h jermar /kernel/trunk/ Define atomic_t only once in atomic.h
Change the encapsulated counter type to long so that it supports negative values as well.
 
/kernel/trunk/generic/include/atomic.h
/kernel/trunk/arch/amd64/include/atomic.h
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/ia32/include/atomic.h
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/ia64/include/atomic.h
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/include/atomic.h
/kernel/trunk/arch/ppc32/include/atomic.h
/kernel/trunk/arch/sparc64/include/atomic.h
/kernel/trunk/generic/include/func.h
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/include/proc/scheduler.h
/kernel/trunk/generic/include/synch/spinlock.h
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/console/console.c
/kernel/trunk/generic/src/mm/tlb.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/spinlock.c
/kernel/trunk/generic/src/time/clock.c
/kernel/trunk/test/atomic/atomic1/test.c
/kernel/trunk/test/debug/mips1/test.c
/kernel/trunk/test/fault/fault1/test.c
/kernel/trunk/test/fpu/fpu1/test.c
/kernel/trunk/test/fpu/mips1/test.c
/kernel/trunk/test/fpu/sse1/test.c
/kernel/trunk/test/mm/falloc2/test.c
/kernel/trunk/test/synch/rwlock1/test.c
/kernel/trunk/test/synch/rwlock2/test.c
/kernel/trunk/test/synch/rwlock3/test.c
/kernel/trunk/test/synch/rwlock4/test.c
/kernel/trunk/test/synch/rwlock5/test.c
/kernel/trunk/test/synch/semaphore1/test.c
/kernel/trunk/test/synch/semaphore2/test.c
/kernel/trunk/test/thread/thread1/test.c
1100 6804 d 23 h palkovsky /kernel/trunk/ Cleanup of spinlocks, now compiles both ia32 and amd64 with
and without DEBUG_SPINLOCKS. Made spinlocks inline.
Moved syscall_handler to generic (it was identical for ia32,amd64 & mips32).
Made slightly faster syscall for ia32.
Made better interrupt routines for ia32.
Allow not saving non-scratch registers during interrupt on ia32,amd64,mips32.
Aligned interrupt handlers on ia32,amd64, this should prevent problems
with different instruction lengths.
 
/kernel/trunk/arch/amd64/include/atomic.h
/kernel/trunk/arch/amd64/include/syscall.h
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/syscall.c
/kernel/trunk/arch/ia32/include/atomic.h
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/mips32/src/start.S
/kernel/trunk/generic/include/synch/spinlock.h
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/lib/func.c
/kernel/trunk/generic/src/synch/spinlock.c
/kernel/trunk/generic/src/syscall/syscall.c
/kernel/trunk/kernel.config
1077 6808 d 6 h palkovsky /kernel/trunk/ Modified debugger to be able to coexist in AS watch mode and SMP.  
/kernel/trunk/arch/amd64/include/debugger.h
/kernel/trunk/arch/amd64/include/interrupt.h
/kernel/trunk/arch/amd64/src/debugger.c
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/proc/scheduler.c
/kernel/trunk/test/thread/thread1/test.c
1074 6808 d 8 h palkovsky /kernel/trunk/ Ported AMD64 debugger to ia32 and enabled AS watchpoint to ia32 as well.  
/kernel/trunk/arch/ia32/include/debugger.h
/kernel/trunk/arch/ia32/src/debugger.c
/kernel/trunk/arch/amd64/src/debugger.c
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/include/asm.h
/kernel/trunk/arch/ia32/include/cpu.h
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/proc/scheduler.c
/kernel/trunk/kernel.config
1070 6808 d 9 h jermar /kernel/trunk/ More checks for address space area conflicts.  
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/as.h
/kernel/trunk/generic/include/macros.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
1066 6808 d 18 h jermar /kernel/trunk/ Support for user space threads.  
/kernel/trunk/arch/amd64/src/userspace.c
/kernel/trunk/arch/ia32/include/fpu_context.h
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/include/userspace.h
/kernel/trunk/generic/src/main/uinit.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/syscall/syscall.c
1024 6810 d 1 h jermar /kernel/trunk/ Redefine semantics of unary atomic operations.
Add test to verify that an architecture understands the semantics correctly.
 
/kernel/trunk/test/atomic
/kernel/trunk/test/atomic/atomic1
/kernel/trunk/test/atomic/atomic1/test.c
/kernel/trunk/arch/amd64/include/atomic.h
/kernel/trunk/arch/ia32/include/atomic.h
/kernel/trunk/arch/ia64/include/atomic.h
/kernel/trunk/arch/mips32/include/atomic.h
/kernel/trunk/arch/ppc32/include/atomic.h
/kernel/trunk/arch/sparc64/include/atomic.h
/kernel/trunk/generic/src/syscall/syscall.c
/kernel/trunk/kernel.config
1019 6810 d 3 h vana /kernel/trunk/arch/ia32/ ia32 MMX and SSEx support  
/kernel/trunk/arch/ia32/include/cpu.h
/kernel/trunk/arch/ia32/include/cpuid.h
/kernel/trunk/arch/ia32/include/fpu_context.h
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/cpu/cpu.c
/kernel/trunk/arch/ia32/src/fpu_context.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/pm.c
984 6811 d 4 h palkovsky /kernel/trunk/arch/ Fixed invlpg for ia32 & amd64.  
/kernel/trunk/arch/amd64/include/asm.h
/kernel/trunk/arch/ia32/include/asm.h
977 6811 d 5 h jermar /kernel/trunk/ Add sys_mremap() syscall.  
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/arch/ppc32/include/mm/page.h
/kernel/trunk/arch/ppc32/src/dummy.s
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/arch/sparc64/include/types.h
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/syscall/syscall.c
967 6811 d 9 h palkovsky /kernel/trunk/ Allowed userspace to include page.h.  
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/frame.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/ia64/include/mm/frame.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/frame.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/arch/ppc32/include/mm/frame.h
/kernel/trunk/arch/ppc32/include/mm/page.h
/kernel/trunk/arch/sparc64/include/mm/frame.h
/kernel/trunk/arch/sparc64/include/mm/page.h
958 6811 d 23 h jermar /kernel/trunk/ Nicer ia32 interrupt handlers and structures holding interrupted context data.
Unify the name holding interrupted context data on all architectures to be istate.
 
/kernel/trunk/arch/amd64/include/context.h
/kernel/trunk/arch/amd64/include/interrupt.h
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/include/types.h
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/ia32/src/drivers/i8254.c
/kernel/trunk/arch/ia32/src/drivers/i8259.c
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia64/include/interrupt.h
/kernel/trunk/arch/ia64/include/mm/tlb.h
/kernel/trunk/arch/ia64/include/types.h
/kernel/trunk/arch/ia64/src/interrupt.c
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/include/debugger.h
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/include/mm/tlb.h
/kernel/trunk/arch/mips32/include/thread.h
/kernel/trunk/arch/mips32/src/debugger.c
/kernel/trunk/arch/mips32/src/drivers/arc.c
/kernel/trunk/arch/mips32/src/drivers/msim.c
/kernel/trunk/arch/mips32/src/drivers/serial.c
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/mips32/src/fpu_context.c
/kernel/trunk/arch/mips32/src/interrupt.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/sparc64/include/drivers/tick.h
/kernel/trunk/arch/sparc64/src/drivers/tick.c
/kernel/trunk/genarch/src/i8042/i8042.c
/kernel/trunk/generic/include/interrupt.h
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/interrupt/interrupt.c
957 6812 d 0 h decky /kernel/trunk/arch/ run ppc32 kernel above 2 GB  
/kernel/trunk/arch/ppc32/include/boot
/kernel/trunk/arch/ppc32/include/boot/boot.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/ppc32/_link.ld.in
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/ppc32/include/mm/page.h
955 6812 d 0 h palkovsky /kernel/trunk/ Added kernel IPC functionality.  
/kernel/trunk/generic/include/errno.h
/kernel/trunk/generic/include/ipc
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/src/ipc
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/types.h
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/amd64/src/syscall.c
/kernel/trunk/arch/ia32/include/types.h
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia64/include/types.h
/kernel/trunk/arch/mips32/include/types.h
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/sparc64/include/types.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/syscall/syscall.c
952 6812 d 3 h jermar /kernel/trunk/ Support for loading segments containing .bss section.  
/kernel/trunk/arch/ia32/include/boot/boot.h
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/generic/include/elf.h
/kernel/trunk/generic/src/lib/elf.c
940 6813 d 1 h jermar /kernel/trunk/ Get rid of unneeded macros.
Their functionality has been replaced by the ELF loader.
 
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/as.h
/kernel/trunk/arch/sparc64/include/types.h
/kernel/trunk/generic/include/mm/as.h
938 6813 d 1 h jermar /kernel/trunk/ Basic support for loading ELF object files.
ia64, amd64, ia32 working.
mips32 requires some attention.
 
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/include/elf32.h
/kernel/trunk/generic/include/elf64.h
/kernel/trunk/generic/src/lib/elf32.c
/kernel/trunk/generic/src/lib/elf64.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/_link.ld.in
/kernel/trunk/arch/amd64/include/elf.h
/kernel/trunk/arch/amd64/include/types.h
/kernel/trunk/arch/amd64/src/userspace.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/include/elf.h
/kernel/trunk/arch/ia32/include/types.h
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/elf.h
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/include/elf.h
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/include/elf.h
/kernel/trunk/arch/ppc32/include/types.h
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/include/elf.h
/kernel/trunk/contrib/conf/msim.conf
/kernel/trunk/contrib/conf/ski.conf
/kernel/trunk/contrib/conf/spmips.conf
/kernel/trunk/generic/include/elf.h
/kernel/trunk/generic/include/userspace.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/uinit.c
910 6820 d 6 h bondari /kernel/trunk/ ELF framework for all archs. SPARC V9 not tested to compile.  
/kernel/trunk/arch/amd64/include/elf.h
/kernel/trunk/arch/ia64/include/elf.h
/kernel/trunk/arch/mips32/include/elf.h
/kernel/trunk/arch/ppc32/include/elf.h
/kernel/trunk/arch/sparc64/include/elf.h
/kernel/trunk/generic/include/elf64.h
/kernel/trunk/generic/src/lib/elf64.c
/kernel/trunk/Makefile
/kernel/trunk/arch/ia32/include/elf.h
/kernel/trunk/generic/include/elf32.h
/kernel/trunk/generic/src/lib/elf32.c
906 6822 d 19 h palkovsky /kernel/trunk/ Added lazy fpu context allocation.
- threads that don't use fpu, don't get allocated fpu context
- fpu context alignment on AMD64 nicely disappeared
 
/kernel/trunk/arch/amd64/src/fpu_context.c
/kernel/trunk/arch/ia32/include/fpu_context.h
/kernel/trunk/arch/ia32/src/fpu_context.c
/kernel/trunk/arch/mips32/include/fpu_context.h
/kernel/trunk/arch/mips32/src/fpu_context.c
/kernel/trunk/generic/include/fpu_context.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
894 6826 d 2 h jermar /kernel/trunk/ Move i8042 driver to genarch as it might be used by more architectures.  
/kernel/trunk/arch/amd64/include/drivers
/kernel/trunk/arch/ia32/include/drivers
/kernel/trunk/arch/ia32/include/drivers/i8042.h
/kernel/trunk/arch/sparc64/include/drivers/keyboard.h
/kernel/trunk/genarch/include/i8042
/kernel/trunk/genarch/include/i8042/i8042.h
/kernel/trunk/genarch/src/i8042
/kernel/trunk/genarch/src/i8042/i8042.c
/kernel/trunk/arch/ia32/include/i8042.h
/kernel/trunk/arch/ia32/src/drivers/i8042.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/sparc64/src/console.c
/kernel/trunk/arch/sparc64/src/mm/tlb.c
/kernel/trunk/genarch/Makefile.inc
860 6832 d 19 h decky /kernel/trunk/ indentation changes
ppc32 fpu context save/restore
ppc32 CPU version
ppc32 memcpy
 
/kernel/trunk/arch/ppc32/include/cpuid.h
/kernel/trunk/arch/ppc32/src/fpu_context.S
/kernel/trunk/arch/ppc32/src/fpu_context.c
/kernel/trunk/arch/amd64/include/cpuid.h
/kernel/trunk/arch/ia32/include/cpuid.h
/kernel/trunk/arch/mips32/include/context_offset.h
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/include/context_offset.h
/kernel/trunk/arch/ppc32/include/cpu.h
/kernel/trunk/arch/ppc32/include/fpu_context.h
/kernel/trunk/arch/ppc32/src/asm.S
/kernel/trunk/arch/ppc32/src/cpu/cpu.c
/kernel/trunk/arch/sparc64/include/context_offset.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/proc/thread.c
854 6834 d 1 h bondari /kernel/trunk/ ELF loading workaround: some core declarations.  
/kernel/trunk/arch/ia32/include/elf.h
/kernel/trunk/generic/include/elf.h
/kernel/trunk/generic/include/elf32.h
/kernel/trunk/generic/src/lib/elf32.c
/kernel/trunk/Makefile
832 6842 d 21 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/doc/TODO
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/genarch/src/mm/page_pt.c
831 6843 d 3 h jermar /kernel/trunk/ Make use of one unused bit in PTE formats of amd64, ia32 and mips32 to store 1 in valid mappings.
This helps to distinguish valid entries from not present entries with 0 content (i.e. not present
entries with PFN 0 and other bits cleared).
 
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/tlb.h
/kernel/trunk/arch/mips32/include/types.h
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/genarch/src/mm/asid_fifo.c
825 6844 d 2 h jermar /kernel/trunk/ Remove WAKEUP_IPI stuff.

Make it possible to use PAGE_GLOBAL on ia32, amd64 and mips32.
Make ia32 and amd64 map the kernel using PAGE_GLOBAL.
 
/kernel/trunk/arch/amd64/include/interrupt.h
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/contrib/conf/msim.conf
823 6844 d 20 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
/kernel/trunk/arch/ia32/include/mm/asid.h
/kernel/trunk/arch/ia64/src/mm/frame.c
/kernel/trunk/arch/ppc32/include/mm/asid.h
/kernel/trunk/arch/sparc64/src/mm/frame.c
/kernel/trunk/genarch/src/mm/asid.c
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/asid.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/scheduler.c
814 6845 d 7 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
/kernel/trunk/generic/include/mm/heap.h
/kernel/trunk/generic/src/mm/heap.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/types.h
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/amd64/src/pm.c
/kernel/trunk/arch/ia32/include/types.h
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/include/types.h
/kernel/trunk/arch/mips32/src/drivers/arc.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/arch/mips32/src/mm/frame.c
/kernel/trunk/contrib/conf/msim.conf
/kernel/trunk/genarch/src/acpi/matd.c
/kernel/trunk/genarch/src/mm/as_pt.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/generic/include/mm/buddy.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/adt/hash_table.c
/kernel/trunk/generic/src/cpu/cpu.c
/kernel/trunk/generic/src/lib/sort.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/buddy.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/test/mm/falloc1/test.c
/kernel/trunk/test/mm/falloc2/test.c
765 6850 d 22 h jermar /kernel/trunk/ Add PAGE_WIDTH to aid divisions by PAGE_SIZE.  
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/include/mm/page.h
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/generic/src/mm/slab.c
763 6851 d 4 h jermar /kernel/trunk/ Modify frame.h to use shifting instead of multiplication and division.
Define FRAME_WIDTH for all architectures.
 
/kernel/trunk/arch/amd64/include/mm/frame.h
/kernel/trunk/arch/ia32/include/mm/frame.h
/kernel/trunk/arch/ia64/include/mm/frame.h
/kernel/trunk/arch/mips32/include/mm/frame.h
/kernel/trunk/arch/ppc32/include/mm/frame.h
/kernel/trunk/arch/sparc64/include/mm/frame.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/slab.c
760 6851 d 7 h jermar /kernel/trunk/ mips32 is not supposed to allocate page table.
This is done by the generic code now.
Remove PTL0 pointer as it is not needed.

Remove GET_PTL0_ADDRESS from kernel.

Update sparc64 comments in barrier.h.
 
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/arch/mips32/src/mm/page.c
/kernel/trunk/arch/ppc32/include/mm/page.h
/kernel/trunk/arch/sparc64/include/barrier.h
/kernel/trunk/genarch/include/mm/page_pt.h
756 6852 d 19 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
/kernel/trunk/arch/amd64/src/mm/as.c
/kernel/trunk/arch/ia32/src/mm/as.c
/kernel/trunk/arch/ia64/src/mm/as.c
/kernel/trunk/arch/ppc32/src/mm/as.c
/kernel/trunk/arch/sparc64/src/mm/as.c
/kernel/trunk/genarch/include/mm/as_ht.h
/kernel/trunk/genarch/include/mm/as_pt.h
/kernel/trunk/genarch/src/mm/as_ht.c
/kernel/trunk/genarch/src/mm/as_pt.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia32/src/drivers/ega.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/mips32/src/mm/as.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/frame.h
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/genarch/Makefile.inc
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/genarch/src/acpi/acpi.c
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/buddy.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/test/mm/mapping1/test.c
750 6855 d 0 h jermar /kernel/trunk/ ia32 SMP updates.
Update info about supported version of Bochs (bump the counter to 2.2.6).
Add Task Priority Register type and initialize this register to a known state.
 
/kernel/trunk/arch/ia32/include/smp/apic.h
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/doc/arch/amd64
/kernel/trunk/doc/arch/ia32