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
1692 6544 d 12 h palkovsky /kernel/trunk/arch/amd64/include/ Fix prein/predec instructions to be the same as on ia32.  
/kernel/trunk/arch/amd64/include/atomic.h
1595 6549 d 21 h palkovsky /kernel/trunk/ Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog.
 
/kernel/trunk/generic/include/console/klog.h
/kernel/trunk/generic/src/console/klog.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/interrupt.h
/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/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia64/include/interrupt.h
/kernel/trunk/arch/ia64/src/interrupt.c
/kernel/trunk/arch/mips32/include/arg.h
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/include/exception.h
/kernel/trunk/arch/ppc32/src/interrupt.c
/kernel/trunk/arch/ppc64/include/exception.h
/kernel/trunk/arch/sparc64/include/interrupt.h
/kernel/trunk/generic/include/interrupt.h
/kernel/trunk/generic/include/ipc/irq.h
/kernel/trunk/generic/include/ipc/sysipc.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/stackarg.h
/kernel/trunk/generic/include/stdarg.h
/kernel/trunk/generic/src/interrupt/interrupt.c
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/generic/src/ipc/irq.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/proc/thread.c
1511 6553 d 14 h palkovsky /kernel/trunk/arch/ Remove __address from include file included by uspace  
/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/ppc64/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/as.h
1477 6555 d 0 h decky /kernel/trunk/arch/ cleanup  
/kernel/trunk/arch/amd64/include/drivers/i8254.h
/kernel/trunk/arch/amd64/include/drivers/i8259.h
/kernel/trunk/arch/amd64/include/drivers/vesa.h
/kernel/trunk/arch/ia32/include/drivers/i8254.h
/kernel/trunk/arch/ia32/include/drivers/i8259.h
/kernel/trunk/arch/ia32/include/drivers/vesa.h
/kernel/trunk/arch/amd64/include/i8254.h
/kernel/trunk/arch/amd64/include/i8259.h
/kernel/trunk/arch/amd64/include/vesa.h
/kernel/trunk/arch/ia32/include/i8254.h
/kernel/trunk/arch/ia32/include/i8259.h
/kernel/trunk/arch/ia32/include/vesa.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/ia32/src/drivers/i8254.c
/kernel/trunk/arch/ia32/src/drivers/i8259.c
/kernel/trunk/arch/ia32/src/drivers/vesa.c
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/smp/smp.c
1473 6555 d 9 h decky /kernel/trunk/ kernel support for text-only framebuffer  
/kernel/trunk/arch/amd64/include/drivers/ega.h
/kernel/trunk/arch/ia32/include/drivers/ega.h
/kernel/trunk/arch/amd64/include/ega.h
/kernel/trunk/arch/ia32/include/ega.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/ia32/src/drivers/ega.c
/kernel/trunk/arch/ia32/src/drivers/vesa.c
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/genarch/src/fb/fb.c
1423 6559 d 15 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
/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/ppc64/include/mm/page.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/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
1411 6562 d 12 h jermar /kernel/trunk/ Modify the hierarchy of page fault handlers to pass access mode that caused the fault.
Architectures are required to pass either PF_ACCESS_READ, PF_ACCESS_WRITE or PF_ACCESS_EXEC
to as_page_fault(), depending on the cause of the fault.
 
/kernel/trunk/arch/amd64/include/mm/page.h
/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/interrupt.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/src/mm/page.c
/kernel/trunk/arch/ppc64/src/mm/page.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
1292 6581 d 14 h vana /kernel/trunk/arch/ VESA FB cut unwanted  
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/src/pm.c
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/src/drivers/vesa.c
/kernel/trunk/arch/ia32/src/pm.c
1289 6581 d 15 h vana /kernel/trunk/arch/ Amd64 framebuffer  
/kernel/trunk/arch/amd64/include/vesa.h
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/amd64/src/boot/boot.S
/kernel/trunk/arch/amd64/src/pm.c
/kernel/trunk/arch/ia32/include/vesa.h
/kernel/trunk/arch/ia32/src/drivers/vesa.c
/kernel/trunk/arch/ia32/src/pm.c
1288 6581 d 17 h jermar /kernel/trunk/ Complete implementation of copy_from_uspace() and copy_to_uspace()
for amd64 and ia32. Other architectures still compile and run,
but need to implement their own assembly-only memcpy(), memcpy_from_uspace(),
memcpy_to_uspace() and their failover parts. For these architectures
only dummy implementations are provided.
 
/kernel/trunk/generic/include/syscall/copy.h
/kernel/trunk/generic/src/syscall/copy.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/interrupt.h
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia64/include/interrupt.h
/kernel/trunk/arch/ia64/src/asm.S
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/include/exception.h
/kernel/trunk/arch/ppc32/include/interrupt.h
/kernel/trunk/arch/ppc32/src/asm.S
/kernel/trunk/arch/ppc32/src/mm/tlb.c
/kernel/trunk/arch/sparc64/include/interrupt.h
/kernel/trunk/arch/sparc64/src/asm.S
/kernel/trunk/generic/include/interrupt.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/ipc/irq.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/printf/vsnprintf.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/smp/ipi.c
/kernel/trunk/generic/src/synch/waitq.c
1256 6587 d 14 h jermar /kernel/trunk/arch/ Improve SYS_IOSPACE_ENABLE support.
The general protection fault handler now contains
code to service early I/O Permission bitmap faults.
 
/kernel/trunk/arch/amd64/include/ddi
/kernel/trunk/arch/amd64/include/ddi/ddi.h
/kernel/trunk/arch/ia32/include/ddi
/kernel/trunk/arch/ia32/include/ddi/ddi.h
/kernel/trunk/arch/amd64/include/cpu.h
/kernel/trunk/arch/amd64/include/proc/task.h
/kernel/trunk/arch/amd64/src/ddi/ddi.c
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/proc/scheduler.c
/kernel/trunk/arch/ia32/include/cpu.h
/kernel/trunk/arch/ia32/include/proc/task.h
/kernel/trunk/arch/ia32/src/ddi/ddi.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/proc/scheduler.c
1251 6588 d 14 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 6594 d 11 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 6599 d 13 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 6599 d 13 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 6603 d 11 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 6603 d 13 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 6603 d 14 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
1121 6624 d 8 h jermar /kernel/trunk/ Small textual changes.  
/kernel/trunk/arch/amd64/include/atomic.h
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/generic/src/adt/btree.c
1112 6624 d 18 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

Show All