Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
1595 |
6699 d 11 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
|
1288 |
6731 d 7 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
|
958 |
6783 d 22 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
|
664 |
6861 d 17 h |
jermar |
/kernel/trunk/ |
sparc64 work.
Interrupt Levels 1 - 15 serviced.
Minor changes in the exc_* functions. |
|
/kernel/trunk/arch/sparc64/include/drivers /kernel/trunk/arch/sparc64/include/drivers/tick.h /kernel/trunk/arch/sparc64/include/trap/interrupt.h /kernel/trunk/arch/sparc64/src/drivers /kernel/trunk/arch/sparc64/src/drivers/tick.c /kernel/trunk/arch/sparc64/src/trap/interrupt.c
/kernel/trunk/arch/sparc64/Makefile.inc /kernel/trunk/arch/sparc64/include/asm.h /kernel/trunk/arch/sparc64/include/interrupt.h /kernel/trunk/arch/sparc64/include/register.h /kernel/trunk/arch/sparc64/src/console.c /kernel/trunk/arch/sparc64/src/sparc64.c /kernel/trunk/arch/sparc64/src/trap/trap.c /kernel/trunk/arch/sparc64/src/trap/trap_table.S /kernel/trunk/generic/include/interrupt.h /kernel/trunk/generic/include/typedefs.h /kernel/trunk/generic/src/interrupt/interrupt.c
|
586 |
6877 d 2 h |
jermar |
/kernel/trunk/ |
Fix ppc32 and sparc64 to compile again.
Fix sparc64 to function again. |
|
/kernel/trunk/arch/ppc32/include/console.h /kernel/trunk/arch/sparc64/include/console.h
/kernel/trunk/arch/ia64/src/ski/ski.c /kernel/trunk/arch/ppc32/src/console.c /kernel/trunk/arch/ppc32/src/ppc32.c /kernel/trunk/arch/sparc64/src/console.c /kernel/trunk/arch/sparc64/src/sparc64.c /kernel/trunk/generic/include/console/chardev.h /kernel/trunk/generic/include/interrupt.h /kernel/trunk/generic/src/interrupt/interrupt.c
|
578 |
6877 d 16 h |
palkovsky |
/kernel/trunk/ |
Added exception printing.
It does not work correctly on SMP architectures :-/
Preemption error.... |
|
/kernel/trunk/arch/mips32/include/interrupt.h /kernel/trunk/generic/include/interrupt.h /kernel/trunk/generic/src/interrupt/interrupt.c /kernel/trunk/generic/src/main/kinit.c /kernel/trunk/generic/src/main/main.c
|
575 |
6877 d 18 h |
palkovsky |
/kernel/trunk/ |
Added generic exc_register/exc_dispatch functions,
copied from ia32 architecture. Currently only mips32 uses them.
The chardev_t can now be both input & output device (was
needed for serial driver).
Broken other architectures - ia64, sparc, powerpc will not compile.
Mips32 supports input on all msim, gxemul, indy(tested emulation
in gxemul, loses characters), simics. Simics serial line
is done using polling, I was unable to make it produce
an interrupt when the key was pressed. |
|
/kernel/trunk/arch/mips32/include/drivers/msim.h /kernel/trunk/arch/mips32/include/drivers/serial.h /kernel/trunk/arch/mips32/src/drivers/msim.c /kernel/trunk/arch/mips32/src/drivers/serial.c /kernel/trunk/generic/include/interrupt.h /kernel/trunk/generic/src/interrupt /kernel/trunk/generic/src/interrupt/interrupt.c
/kernel/trunk/arch/mips32/include/drivers/keyboard.h /kernel/trunk/arch/mips32/src/drivers/keyboard.c
/kernel/trunk/Makefile /kernel/trunk/arch/ia32/include/ega.h /kernel/trunk/arch/ia32/src/drivers/ega.c /kernel/trunk/arch/ia32/src/drivers/i8042.c /kernel/trunk/arch/mips32/Makefile.inc /kernel/trunk/arch/mips32/include/console.h /kernel/trunk/arch/mips32/include/drivers/arc.h /kernel/trunk/arch/mips32/include/interrupt.h /kernel/trunk/arch/mips32/src/console.c /kernel/trunk/arch/mips32/src/drivers/arc.c /kernel/trunk/arch/mips32/src/interrupt.c /kernel/trunk/arch/mips32/src/mips32.c /kernel/trunk/generic/include/console/chardev.h /kernel/trunk/generic/include/console/console.h /kernel/trunk/generic/include/print.h /kernel/trunk/generic/src/console/chardev.c /kernel/trunk/generic/src/console/console.c
|