Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
2784 5934 d 8 h jermar /trunk/kernel/arch/ Fortify ia32 and amd64 kernels against mallicious uspace applications that set
DF prior to entering the kernel. For AMD64 syscalls, we don't use the CLD
instruction, but make use of the SFMASK MSR instead. Simics works fine with
it, but QEMU seems to have a problem.
 
/trunk/kernel/arch/amd64/include/cpu.h
/trunk/kernel/arch/amd64/src/asm_utils.S
/trunk/kernel/arch/amd64/src/boot/boot.S
/trunk/kernel/arch/amd64/src/syscall.c
/trunk/kernel/arch/ia32/src/asm.S
/trunk/kernel/arch/ia32/src/boot/boot.S
2775 5938 d 20 h cejka /trunk/kernel/arch/ia32/src/ Added missing ia32/context.S from last commit.  
/trunk/kernel/arch/ia32/src/context.S
/trunk/kernel/arch/ia32/src/context.s
2774 5938 d 20 h cejka /trunk/kernel/arch/ Context.s renamed to context.S for ia32 and fixed links for ia32xen.
Added asm macros for context save/restore and offset definitions.
 
/trunk/kernel/arch/ia32/include/context_offset.h
/trunk/kernel/arch/ia32xen/src/context.S
/trunk/kernel/arch/ia32xen/src/context.s
/trunk/kernel/arch/amd64/include/context.h
/trunk/kernel/arch/amd64/include/context_offset.h
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32/include/context.h
/trunk/kernel/arch/ia32xen/Makefile.inc
2725 5976 d 15 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)
 
/trunk/kernel/arch/amd64/src/boot/memmap.c
/trunk/kernel/arch/ia32/src/boot/memmap.c
/trunk/kernel/arch/amd64/include/mm/memory_init.h
/trunk/kernel/arch/amd64/src/mm/memory_init.c
/trunk/kernel/arch/arm32/include/mm/memory_init.h
/trunk/kernel/arch/arm32/src/mm/memory_init.c
/trunk/kernel/arch/ia32/include/mm/memory_init.h
/trunk/kernel/arch/ia32/src/mm/memory_init.c
/trunk/kernel/arch/ia32xen/include/mm/memory_init.h
/trunk/kernel/arch/ia32xen/src/mm/memory_init.c
/trunk/kernel/arch/ia64/include/mm/memory_init.h
/trunk/kernel/arch/mips32/include/mm/memory_init.h
/trunk/kernel/arch/ppc32/include/mm/memory_init.h
/trunk/kernel/arch/ppc32/src/mm/memory_init.c
/trunk/kernel/arch/ppc64/include/mm/memory_init.h
/trunk/kernel/arch/ppc64/src/mm/memory_init.c
/trunk/kernel/arch/sparc64/include/mm/memory_init.h
/trunk/kernel/arch/sparc64/src/mm/memory_init.c
/trunk/kernel/arch/amd64/Makefile.inc
/trunk/kernel/arch/amd64/src/amd64.c
/trunk/kernel/arch/amd64/src/boot/boot.S
/trunk/kernel/arch/arm32/Makefile.inc
/trunk/kernel/arch/arm32/src/mm/frame.c
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32/include/boot/memmap.h
/trunk/kernel/arch/ia32/src/boot/boot.S
/trunk/kernel/arch/ia32/src/ia32.c
/trunk/kernel/arch/ia32xen/Makefile.inc
/trunk/kernel/arch/ia32xen/src/ia32xen.c
/trunk/kernel/arch/ia64/src/mm/frame.c
/trunk/kernel/arch/mips32/src/drivers/arc.c
/trunk/kernel/arch/mips32/src/mm/frame.c
/trunk/kernel/arch/ppc32/Makefile.inc
/trunk/kernel/arch/ppc32/src/mm/frame.c
/trunk/kernel/arch/ppc32/src/ppc32.c
/trunk/kernel/arch/ppc64/Makefile.inc
/trunk/kernel/arch/ppc64/src/mm/frame.c
/trunk/kernel/arch/ppc64/src/ppc64.c
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/generic/include/config.h
/trunk/kernel/generic/include/macros.h
/trunk/kernel/generic/include/mm/frame.h
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/frame.c
2723 5977 d 13 h decky /trunk/kernel/arch/ remove memory_print_map(), as it duplicates functionality of physmem_print()  
/trunk/kernel/arch/amd64/src/amd64.c
/trunk/kernel/arch/amd64/src/mm/memory_init.c
/trunk/kernel/arch/ia32/include/mm/memory_init.h
/trunk/kernel/arch/ia32/src/ia32.c
/trunk/kernel/arch/ia32/src/mm/frame.c
/trunk/kernel/arch/ia32/src/mm/memory_init.c
/trunk/kernel/arch/ia32xen/include/mm/frame.h
/trunk/kernel/arch/ia32xen/include/mm/memory_init.h
/trunk/kernel/arch/ia32xen/src/ia32xen.c
/trunk/kernel/arch/ia32xen/src/mm/frame.c
/trunk/kernel/arch/ia32xen/src/mm/memory_init.c
/trunk/kernel/arch/ppc32/include/mm/frame.h
/trunk/kernel/arch/ppc32/include/mm/memory_init.h
/trunk/kernel/arch/ppc32/src/mm/frame.c
/trunk/kernel/arch/ppc32/src/mm/memory_init.c
/trunk/kernel/arch/ppc32/src/ppc32.c
/trunk/kernel/arch/ppc64/include/mm/frame.h
/trunk/kernel/arch/ppc64/include/mm/memory_init.h
/trunk/kernel/arch/ppc64/src/mm/frame.c
/trunk/kernel/arch/ppc64/src/mm/memory_init.c
/trunk/kernel/arch/ppc64/src/ppc64.c
2721 5977 d 15 h decky /trunk/kernel/ convert e820list to a generic physmem command  
/trunk/kernel/arch/amd64/include/mm/frame.h
/trunk/kernel/arch/arm32/include/mm/frame.h
/trunk/kernel/arch/ia32/include/mm/frame.h
/trunk/kernel/arch/ia32/src/mm/frame.c
/trunk/kernel/arch/ia32xen/include/mm/frame.h
/trunk/kernel/arch/ia64/include/mm/frame.h
/trunk/kernel/arch/mips32/include/mm/frame.h
/trunk/kernel/arch/ppc32/include/mm/frame.h
/trunk/kernel/arch/ppc64/include/mm/frame.h
/trunk/kernel/arch/sparc64/include/mm/frame.h
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/interrupt/interrupt.c
2712 5981 d 15 h decky /trunk/kernel/ prettyprint output  
/trunk/kernel/arch/amd64/src/debugger.c
/trunk/kernel/arch/ia32/src/mm/frame.c
/trunk/kernel/generic/include/macros.h
/trunk/kernel/generic/src/interrupt/interrupt.c
/trunk/kernel/generic/src/mm/frame.c
/trunk/kernel/generic/src/printf/printf_core.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
2702 5988 d 15 h decky /trunk/kernel/arch/ia32/src/mm/ change cstyle to human-readable form  
/trunk/kernel/arch/ia32/src/mm/frame.c
2701 5988 d 17 h jermar /trunk/kernel/ Fix cstyle and (c) to 2008.  
/trunk/kernel/arch/amd64/src/pm.c
/trunk/kernel/arch/ia32/src/mm/frame.c
/trunk/kernel/arch/ia32/src/smp/mps.c
/trunk/kernel/arch/ia32/src/smp/smp.c
/trunk/kernel/generic/src/main/version.c
2697 5998 d 16 h decky /trunk/kernel/ amd64: shorten kernel address space by 2 GB to support proper mapping of more than 2 GB of physical memory  
/trunk/kernel/arch/amd64/include/mm/as.h
/trunk/kernel/arch/amd64/src/amd64.c
/trunk/kernel/arch/amd64/src/mm/page.c
/trunk/kernel/arch/ia32/src/mm/frame.c
/trunk/kernel/generic/src/console/console.c
2630 6048 d 7 h jermar /trunk/kernel/arch/ Formatting fixes.  
/trunk/kernel/arch/amd64/include/proc/task.h
/trunk/kernel/arch/amd64/src/ddi/ddi.c
/trunk/kernel/arch/ia32/include/proc/task.h
/trunk/kernel/arch/ia32/src/ddi/ddi.c
/trunk/kernel/arch/ia32/src/proc/scheduler.c
2613 6057 d 9 h jermar /trunk/ Support for six syscall arguments for ia32.  
/trunk/uspace/lib/libc/arch/ia32/src/syscall.S
/trunk/uspace/lib/libc/arch/ia32/src/syscall.c
/trunk/kernel/arch/ia32/src/asm.S
/trunk/uspace/lib/libc/arch/ia32/Makefile.inc
/trunk/uspace/lib/libc/arch/ia32/src/fibril.S
2612 6057 d 9 h jermar /trunk/kernel/arch/ Cleanup.  
/trunk/kernel/arch/amd64/include/interrupt.h
/trunk/kernel/arch/ia32/include/interrupt.h
/trunk/kernel/arch/ia32/include/pm.h
/trunk/kernel/arch/ia32/src/pm.c
2599 6064 d 6 h decky /trunk/kernel/ replace prescott cpu type with currently more known category  
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32xen/Makefile.inc
/trunk/kernel/kernel.config
2575 6079 d 9 h jermar /trunk/kernel/arch/ia32/src/ Formatting fixes.  
/trunk/kernel/arch/ia32/src/userspace.c
2482 6200 d 4 h jermar /trunk/ Goodbye pseudo threads, welcome fibrils.
The renaming might still be incomplete.
 
/trunk/uspace/lib/libc/arch/amd64/include/fibril.h
/trunk/uspace/lib/libc/arch/amd64/src/fibril.S
/trunk/uspace/lib/libc/arch/arm32/include/fibril.h
/trunk/uspace/lib/libc/arch/arm32/src/fibril.S
/trunk/uspace/lib/libc/arch/ia32/include/fibril.h
/trunk/uspace/lib/libc/arch/ia32/src/fibril.S
/trunk/uspace/lib/libc/arch/ia64/include/fibril.h
/trunk/uspace/lib/libc/arch/ia64/src/fibril.S
/trunk/uspace/lib/libc/arch/mips32/include/fibril.h
/trunk/uspace/lib/libc/arch/mips32/src/fibril.S
/trunk/uspace/lib/libc/arch/mips32eb/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc32/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc32/src/fibril.S
/trunk/uspace/lib/libc/arch/ppc64/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc64/src/fibril.S
/trunk/uspace/lib/libc/arch/sparc64/include/fibril.h
/trunk/uspace/lib/libc/arch/sparc64/src/fibril.S
/trunk/uspace/lib/libc/generic/fibril.c
/trunk/uspace/lib/libc/include/fibril.h
/trunk/uspace/lib/libc/arch/amd64/include/psthread.h
/trunk/uspace/lib/libc/arch/amd64/src/psthread.S
/trunk/uspace/lib/libc/arch/arm32/include/psthread.h
/trunk/uspace/lib/libc/arch/arm32/src/psthread.S
/trunk/uspace/lib/libc/arch/ia32/include/psthread.h
/trunk/uspace/lib/libc/arch/ia32/src/psthread.S
/trunk/uspace/lib/libc/arch/ia64/include/psthread.h
/trunk/uspace/lib/libc/arch/ia64/src/psthread.S
/trunk/uspace/lib/libc/arch/mips32/include/psthread.h
/trunk/uspace/lib/libc/arch/mips32/src/psthread.S
/trunk/uspace/lib/libc/arch/mips32eb/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc32/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc32/src/psthread.S
/trunk/uspace/lib/libc/arch/ppc64/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc64/src/psthread.S
/trunk/uspace/lib/libc/arch/sparc64/include/psthread.h
/trunk/uspace/lib/libc/arch/sparc64/src/psthread.S
/trunk/uspace/lib/libc/generic/psthread.c
/trunk/uspace/lib/libc/include/psthread.h
/trunk/kernel/arch/ia32/src/context.s
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/arch/amd64/Makefile.inc
/trunk/uspace/lib/libc/arch/amd64/include/thread.h
/trunk/uspace/lib/libc/arch/arm32/Makefile.inc
/trunk/uspace/lib/libc/arch/arm32/include/thread.h
/trunk/uspace/lib/libc/arch/ia32/Makefile.inc
/trunk/uspace/lib/libc/arch/ia32/include/thread.h
/trunk/uspace/lib/libc/arch/ia64/Makefile.inc
/trunk/uspace/lib/libc/arch/ia64/include/thread.h
/trunk/uspace/lib/libc/arch/mips32/Makefile.inc
/trunk/uspace/lib/libc/arch/mips32/include/thread.h
/trunk/uspace/lib/libc/arch/mips32eb/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc32/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc32/include/thread.h
/trunk/uspace/lib/libc/arch/ppc64/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc64/include/thread.h
/trunk/uspace/lib/libc/arch/sparc64/Makefile.inc
/trunk/uspace/lib/libc/arch/sparc64/include/thread.h
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/libc.c
/trunk/uspace/lib/libc/generic/thread.c
/trunk/uspace/lib/libc/include/async.h
2467 6214 d 11 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
/trunk/boot/genarch/include/softint
/trunk/boot/generic/genarch
/trunk/kernel/arch/amd64/include/mm/page.h
/trunk/kernel/arch/arm32/include/mm/page.h
/trunk/kernel/arch/arm32/include/mm/page_fault.h
/trunk/kernel/arch/ia32/include/mm/page.h
/trunk/kernel/arch/ia32xen/include/mm/page.h
/trunk/kernel/arch/mips32/include/mm/page.h
/trunk/kernel/arch/ppc32/include/mm/page.h
/trunk/kernel/arch/ppc64/include/mm/page.h
/trunk/kernel/genarch/include/mm/page_ht.h
/trunk/kernel/genarch/include/mm/page_pt.h
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/syscall/syscall.c
2465 6219 d 14 h jermar /trunk/ Merge arm32 into trunk.  
/trunk/boot/arch/arm32/loader
/trunk/boot/doc
/trunk/boot/genarch/division.c
/trunk/boot/genarch/include
/trunk/boot/generic/genarch
/trunk/kernel/arch/arm32/include/asm
/trunk/kernel/arch/arm32/include/boot.h
/trunk/kernel/arch/arm32/include/console.h
/trunk/kernel/arch/arm32/include/debug
/trunk/kernel/arch/arm32/include/drivers
/trunk/kernel/arch/arm32/include/machine.h
/trunk/kernel/arch/arm32/include/mainpage.h
/trunk/kernel/arch/arm32/include/mm/page_fault.h
/trunk/kernel/arch/arm32/include/regutils.h
/trunk/kernel/arch/arm32/include/stack.h
/trunk/kernel/arch/arm32/src/asm.S
/trunk/kernel/arch/arm32/src/console.c
/trunk/kernel/arch/arm32/src/debug
/trunk/kernel/arch/arm32/src/drivers
/trunk/kernel/arch/arm32/src/exception.c
/trunk/kernel/arch/arm32/src/interrupt.c
/trunk/kernel/arch/arm32/src/mm/memory_init.c
/trunk/kernel/arch/arm32/src/mm/page_fault.c
/trunk/kernel/arch/arm32/src/mm/tlb.c
/trunk/kernel/arch/arm32/src/panic.S
/trunk/kernel/arch/arm32/src/userspace.c
/trunk/kernel/doc/arch/arm32
/trunk/tools/cygwin_symlink_patch.sh
/trunk/uspace/kbd/arch/arm32/src/kbd_gxemul.c
/trunk/uspace/libc/arch/arm32/src/eabi.S
/trunk/uspace/libc/arch/arm32/src/dummy.S
/trunk/HelenOS.config
/trunk/boot/arch/arm32/Makefile.inc
/trunk/boot/arch/arm32/loader/Makefile
/trunk/boot/boot.config
/trunk/boot/generic/align.h
/trunk/boot/generic/gentypes.h
/trunk/boot/generic/printf.c
/trunk/boot/generic/printf.h
/trunk/boot/generic/stdarg.h
/trunk/kernel/arch/amd64/include/mm/page.h
/trunk/kernel/arch/arm32/Makefile.inc
/trunk/kernel/arch/arm32/_link.ld.in
/trunk/kernel/arch/arm32/include/arch.h
/trunk/kernel/arch/arm32/include/arg.h
/trunk/kernel/arch/arm32/include/asm.h
/trunk/kernel/arch/arm32/include/atomic.h
/trunk/kernel/arch/arm32/include/barrier.h
/trunk/kernel/arch/arm32/include/byteorder.h
/trunk/kernel/arch/arm32/include/context.h
/trunk/kernel/arch/arm32/include/cpu.h
/trunk/kernel/arch/arm32/include/cycle.h
/trunk/kernel/arch/arm32/include/elf.h
/trunk/kernel/arch/arm32/include/exception.h
/trunk/kernel/arch/arm32/include/faddr.h
/trunk/kernel/arch/arm32/include/fpu_context.h
/trunk/kernel/arch/arm32/include/interrupt.h
/trunk/kernel/arch/arm32/include/memstr.h
/trunk/kernel/arch/arm32/include/mm/as.h
/trunk/kernel/arch/arm32/include/mm/asid.h
/trunk/kernel/arch/arm32/include/mm/frame.h
/trunk/kernel/arch/arm32/include/mm/memory_init.h
/trunk/kernel/arch/arm32/include/mm/page.h
/trunk/kernel/arch/arm32/include/mm/tlb.h
/trunk/kernel/arch/arm32/include/proc/task.h
/trunk/kernel/arch/arm32/include/proc/thread.h
/trunk/kernel/arch/arm32/include/types.h
/trunk/kernel/arch/arm32/src/arm32.c
/trunk/kernel/arch/arm32/src/context.S
/trunk/kernel/arch/arm32/src/cpu/cpu.c
/trunk/kernel/arch/arm32/src/ddi/ddi.c
/trunk/kernel/arch/arm32/src/dummy.S
/trunk/kernel/arch/arm32/src/mm/as.c
/trunk/kernel/arch/arm32/src/mm/frame.c
/trunk/kernel/arch/arm32/src/mm/page.c
/trunk/kernel/arch/arm32/src/start.S
/trunk/kernel/arch/ia32/include/mm/page.h
/trunk/kernel/arch/ia32xen/include/mm/page.h
/trunk/kernel/arch/mips32/include/mm/page.h
/trunk/kernel/arch/ppc32/include/mm/page.h
/trunk/kernel/arch/ppc64/include/mm/page.h
/trunk/kernel/doc/AUTHORS
/trunk/kernel/doc/doxygroups.h
/trunk/kernel/genarch/include/mm/page_pt.h
/trunk/kernel/genarch/src/mm/as_pt.c
/trunk/kernel/genarch/src/mm/page_pt.c
/trunk/kernel/generic/include/mm/frame.h
/trunk/kernel/generic/src/printf/printf.c
/trunk/kernel/kernel.config
/trunk/uspace/kbd/Makefile
/trunk/uspace/kbd/arch/arm32/include/kbd.h
/trunk/uspace/kbd/arch/arm32/src/kbd.c
/trunk/uspace/libc/arch/arm32/Makefile.inc
/trunk/uspace/libc/arch/arm32/_link.ld.in
/trunk/uspace/libc/arch/arm32/include/atomic.h
/trunk/uspace/libc/arch/arm32/include/config.h
/trunk/uspace/libc/arch/arm32/include/endian.h
/trunk/uspace/libc/arch/arm32/include/faddr.h
/trunk/uspace/libc/arch/arm32/include/limits.h
/trunk/uspace/libc/arch/arm32/include/psthread.h
/trunk/uspace/libc/arch/arm32/include/stackarg.h
/trunk/uspace/libc/arch/arm32/include/syscall.h
/trunk/uspace/libc/arch/arm32/include/thread.h
/trunk/uspace/libc/arch/arm32/include/types.h
/trunk/uspace/libc/arch/arm32/src/entry.s
/trunk/uspace/libc/arch/arm32/src/psthread.S
/trunk/uspace/libc/arch/arm32/src/syscall.c
/trunk/uspace/libc/arch/arm32/src/thread.c
/trunk/uspace/libc/arch/arm32/src/thread_entry.s
/trunk/uspace/softfloat/arch/arm32/include/functions.h
2462 6221 d 9 h jermar /trunk/kernel/ Replace gcc-specific __FUNCTION__ with C99 __func__.
suncc's xregs=no%float can be used only on sparc64.
 
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/src/interrupt.c
/trunk/kernel/arch/ia32/src/smp/mps.c
/trunk/kernel/arch/ia32xen/src/smp/mps.c
/trunk/kernel/arch/ia64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/smp/smp.c
/trunk/kernel/arch/sparc64/src/trap/exception.c
/trunk/kernel/generic/include/panic.h
/trunk/kernel/generic/include/synch/spinlock.h
/trunk/kernel/generic/src/console/kconsole.c
2460 6221 d 9 h jermar /trunk/kernel/ Better infrastructure for building with different compilers.
Separate ICC_CFLAGS added, SUNCC_CFLAGS extended.
 
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/Makefile.inc
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32xen/Makefile.inc
/trunk/kernel/arch/ia64/Makefile.inc
/trunk/kernel/arch/sparc64/Makefile.inc

Show All