Subversion Repositories HelenOS

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
2784 5963 d 16 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
2783 5963 d 17 h jermar /trunk/kernel/arch/amd64/src/cpu/ Fix cstyle.  
/trunk/kernel/arch/amd64/src/cpu/cpu.c
2781 5968 d 1 h cejka /trunk/ Unified context saving/restoring macros in ppc32.  
/trunk/uspace/lib/libc/arch/ppc32/include/context_offset.h
/trunk/kernel/arch/ppc32/include/context_offset.h
/trunk/kernel/arch/ppc32/src/context.S
/trunk/uspace/lib/libc/arch/ppc32/src/fibril.S
2780 5968 d 1 h cejka /trunk/ Fixed broken context_offset.h symlinks for mips32eb and ia32xen.  
/trunk/kernel/arch/ia32xen/include/context_offset.h
/trunk/uspace/lib/libc/arch/mips32eb/include/context_offset.h
2779 5968 d 1 h cejka /trunk/ Context saving/restoring macros used for mips32.  
/trunk/uspace/lib/libc/arch/mips32/include/context_offset.h
/trunk/kernel/arch/mips32/include/context_offset.h
/trunk/kernel/arch/mips32/src/context.S
/trunk/uspace/lib/libc/arch/mips32/src/fibril.S
2777 5968 d 3 h cejka /trunk/ Unified context handling code for amd64.  
/trunk/uspace/lib/libc/arch/amd64/include/context_offset.h
/trunk/kernel/arch/amd64/include/context_offset.h
/trunk/kernel/arch/amd64/src/context.S
/trunk/uspace/lib/libc/arch/amd64/src/fibril.S
2775 5968 d 4 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 5968 d 5 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
2772 5970 d 18 h jermar /trunk/kernel/arch/arm32/src/mm/ Fix breakage in arm32 non-debug build.  
/trunk/kernel/arch/arm32/src/mm/page_fault.c
2767 5972 d 18 h jermar /trunk/kernel/arch/amd64/src/ Fix breakage in non-debug amd64 build.  
/trunk/kernel/arch/amd64/src/debugger.c
2765 5973 d 18 h jermar /trunk/kernel/generic/src/proc/ tasklet.c needs to include config.h  
/trunk/kernel/generic/src/proc/tasklet.c
2746 5984 d 21 h decky /trunk/kernel/ start merging tasklets (more or less a rewrite)  
/trunk/kernel/generic/include/proc/tasklet.h
/trunk/kernel/generic/src/proc/tasklet.c
/trunk/kernel/Makefile
/trunk/kernel/generic/src/main/main.c
2745 5985 d 2 h decky /trunk/ code cleanup (mostly signed/unsigned)
allow extra compiler warnings
 
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/src/mm/page.c
/trunk/kernel/arch/arm32/src/arm32.c
/trunk/kernel/arch/arm32/src/cpu/cpu.c
/trunk/kernel/arch/arm32/src/debug/print.c
/trunk/kernel/arch/ia32xen/src/mm/tlb.c
/trunk/kernel/arch/ia32xen/src/smp/mps.c
/trunk/kernel/arch/ia32xen/src/smp/smp.c
/trunk/kernel/arch/ia64/src/ia64.c
/trunk/kernel/arch/ia64/src/mm/tlb.c
/trunk/kernel/arch/mips32/src/cpu/cpu.c
/trunk/kernel/arch/mips32/src/debugger.c
/trunk/kernel/arch/mips32/src/drivers/arc.c
/trunk/kernel/arch/mips32/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/mm/frame.c
/trunk/kernel/arch/sparc64/src/mm/page.c
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/smp/ipi.c
/trunk/kernel/genarch/src/ofw/ebus.c
/trunk/kernel/genarch/src/ofw/fhc.c
/trunk/kernel/genarch/src/ofw/ofw_tree.c
/trunk/kernel/genarch/src/ofw/pci.c
/trunk/kernel/genarch/src/ofw/sbus.c
/trunk/kernel/generic/include/lib/elf.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/mm/slab.h
/trunk/kernel/generic/src/debug/symtab.c
/trunk/kernel/generic/src/interrupt/interrupt.c
/trunk/kernel/generic/src/ipc/irq.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/lib/elf.c
/trunk/kernel/generic/src/lib/func.c
/trunk/kernel/generic/src/lib/memstr.c
/trunk/kernel/generic/src/lib/sort.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/backend_anon.c
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/mm/frame.c
/trunk/kernel/generic/src/mm/slab.c
/trunk/kernel/generic/src/mm/tlb.c
/trunk/kernel/generic/src/printf/printf_core.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/synch/futex.c
/trunk/kernel/generic/src/time/clock.c
/trunk/kernel/test/avltree/avltree1.c
/trunk/kernel/test/fpu/fpu1.c
/trunk/kernel/test/fpu/mips2.c
/trunk/kernel/test/fpu/sse1.c
/trunk/kernel/test/mm/falloc2.c
/trunk/kernel/test/synch/rwlock5.c
/trunk/kernel/test/test.c
/trunk/kernel/test/thread/thread1.c
/trunk/uspace/lib/libc/arch/ppc64/src/syscall.c
2726 6003 d 3 h vana /trunk/ Basic IA64 boot and kernel suport for real machines  
/trunk/boot/arch/ia64/loader/gefi
/trunk/boot/arch/ia64/loader/gefi/ChangeLog
/trunk/boot/arch/ia64/loader/gefi/HelenOS
/trunk/boot/arch/ia64/loader/gefi/HelenOS/Makefile
/trunk/boot/arch/ia64/loader/gefi/HelenOS/hello.c
/trunk/boot/arch/ia64/loader/gefi/Make.defaults
/trunk/boot/arch/ia64/loader/gefi/Make.rules
/trunk/boot/arch/ia64/loader/gefi/Makefile
/trunk/boot/arch/ia64/loader/gefi/README.efilib
/trunk/boot/arch/ia64/loader/gefi/README.elilo
/trunk/boot/arch/ia64/loader/gefi/README.gnuefi
/trunk/boot/arch/ia64/loader/gefi/apps
/trunk/boot/arch/ia64/loader/gefi/apps/Makefile
/trunk/boot/arch/ia64/loader/gefi/apps/printenv.c
/trunk/boot/arch/ia64/loader/gefi/apps/t.c
/trunk/boot/arch/ia64/loader/gefi/apps/t2.c
/trunk/boot/arch/ia64/loader/gefi/apps/t3.c
/trunk/boot/arch/ia64/loader/gefi/apps/t4.c
/trunk/boot/arch/ia64/loader/gefi/apps/t5.c
/trunk/boot/arch/ia64/loader/gefi/apps/t6.c
/trunk/boot/arch/ia64/loader/gefi/apps/t7.c
/trunk/boot/arch/ia64/loader/gefi/apps/tpause.c
/trunk/boot/arch/ia64/loader/gefi/apps/trivial.S
/trunk/boot/arch/ia64/loader/gefi/gnuefi
/trunk/boot/arch/ia64/loader/gefi/gnuefi/Makefile
/trunk/boot/arch/ia64/loader/gefi/gnuefi/crt0-efi-ia32.S
/trunk/boot/arch/ia64/loader/gefi/gnuefi/crt0-efi-ia64.S
/trunk/boot/arch/ia64/loader/gefi/gnuefi/elf_ia32_efi.lds
/trunk/boot/arch/ia64/loader/gefi/gnuefi/elf_ia64_efi.lds
/trunk/boot/arch/ia64/loader/gefi/gnuefi/reloc_ia32.c
/trunk/boot/arch/ia64/loader/gefi/gnuefi/reloc_ia64.S
/trunk/boot/arch/ia64/loader/gefi/inc
/trunk/boot/arch/ia64/loader/gefi/inc/Makefile
/trunk/boot/arch/ia64/loader/gefi/inc/efi.h
/trunk/boot/arch/ia64/loader/gefi/inc/efi_nii.h
/trunk/boot/arch/ia64/loader/gefi/inc/efi_pxe.h
/trunk/boot/arch/ia64/loader/gefi/inc/efiapi.h
/trunk/boot/arch/ia64/loader/gefi/inc/eficon.h
/trunk/boot/arch/ia64/loader/gefi/inc/efidebug.h
/trunk/boot/arch/ia64/loader/gefi/inc/efidef.h
/trunk/boot/arch/ia64/loader/gefi/inc/efidevp.h
/trunk/boot/arch/ia64/loader/gefi/inc/efierr.h
/trunk/boot/arch/ia64/loader/gefi/inc/efifs.h
/trunk/boot/arch/ia64/loader/gefi/inc/efigpt.h
/trunk/boot/arch/ia64/loader/gefi/inc/efilib.h
/trunk/boot/arch/ia64/loader/gefi/inc/efilink.h
/trunk/boot/arch/ia64/loader/gefi/inc/efinet.h
/trunk/boot/arch/ia64/loader/gefi/inc/efipart.h
/trunk/boot/arch/ia64/loader/gefi/inc/efiprot.h
/trunk/boot/arch/ia64/loader/gefi/inc/efipxebc.h
/trunk/boot/arch/ia64/loader/gefi/inc/efirtlib.h
/trunk/boot/arch/ia64/loader/gefi/inc/efiser.h
/trunk/boot/arch/ia64/loader/gefi/inc/efistdarg.h
/trunk/boot/arch/ia64/loader/gefi/inc/efiui.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia32
/trunk/boot/arch/ia64/loader/gefi/inc/ia32/efibind.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia32/efilibplat.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia32/pe.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia64
/trunk/boot/arch/ia64/loader/gefi/inc/ia64/efibind.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia64/efilibplat.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia64/pe.h
/trunk/boot/arch/ia64/loader/gefi/inc/ia64/salproc.h
/trunk/boot/arch/ia64/loader/gefi/inc/inc.mak
/trunk/boot/arch/ia64/loader/gefi/inc/libsmbios.h
/trunk/boot/arch/ia64/loader/gefi/inc/make.inf
/trunk/boot/arch/ia64/loader/gefi/inc/makefile.hdr
/trunk/boot/arch/ia64/loader/gefi/inc/pci22.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/adapterdebug.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/eficonsplit.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/efidbg.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/efivar.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/ia64
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/ia64/eficontext.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/intload.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/legacyboot.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/make.inf
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/makefile.hdr
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/piflash64.h
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/readme.txt
/trunk/boot/arch/ia64/loader/gefi/inc/protocol/vgaclass.h
/trunk/boot/arch/ia64/loader/gefi/inc/romload.h
/trunk/boot/arch/ia64/loader/gefi/lib
/trunk/boot/arch/ia64/loader/gefi/lib/Makefile
/trunk/boot/arch/ia64/loader/gefi/lib/boxdraw.c
/trunk/boot/arch/ia64/loader/gefi/lib/console.c
/trunk/boot/arch/ia64/loader/gefi/lib/crc.c
/trunk/boot/arch/ia64/loader/gefi/lib/data.c
/trunk/boot/arch/ia64/loader/gefi/lib/debug.c
/trunk/boot/arch/ia64/loader/gefi/lib/dpath.c
/trunk/boot/arch/ia64/loader/gefi/lib/error.c
/trunk/boot/arch/ia64/loader/gefi/lib/event.c
/trunk/boot/arch/ia64/loader/gefi/lib/guid.c
/trunk/boot/arch/ia64/loader/gefi/lib/hand.c
/trunk/boot/arch/ia64/loader/gefi/lib/hw.c
/trunk/boot/arch/ia64/loader/gefi/lib/ia32
/trunk/boot/arch/ia64/loader/gefi/lib/ia32/initplat.c
/trunk/boot/arch/ia64/loader/gefi/lib/ia32/math.c
/trunk/boot/arch/ia64/loader/gefi/lib/ia64
/trunk/boot/arch/ia64/loader/gefi/lib/ia64/initplat.c
/trunk/boot/arch/ia64/loader/gefi/lib/ia64/math.c
/trunk/boot/arch/ia64/loader/gefi/lib/ia64/palproc.S
/trunk/boot/arch/ia64/loader/gefi/lib/ia64/palproc.h
/trunk/boot/arch/ia64/loader/gefi/lib/ia64/salpal.c
/trunk/boot/arch/ia64/loader/gefi/lib/init.c
/trunk/boot/arch/ia64/loader/gefi/lib/lib.h
/trunk/boot/arch/ia64/loader/gefi/lib/lock.c
/trunk/boot/arch/ia64/loader/gefi/lib/misc.c
/trunk/boot/arch/ia64/loader/gefi/lib/print.c
/trunk/boot/arch/ia64/loader/gefi/lib/runtime
/trunk/boot/arch/ia64/loader/gefi/lib/runtime/efirtlib.c
/trunk/boot/arch/ia64/loader/gefi/lib/runtime/rtdata.c
/trunk/boot/arch/ia64/loader/gefi/lib/runtime/rtlock.c
/trunk/boot/arch/ia64/loader/gefi/lib/runtime/rtstr.c
/trunk/boot/arch/ia64/loader/gefi/lib/runtime/vm.c
/trunk/boot/arch/ia64/loader/gefi/lib/smbios.c
/trunk/boot/arch/ia64/loader/gefi/lib/sread.c
/trunk/boot/arch/ia64/loader/gefi/lib/str.c
/trunk/boot/arch/ia64/loader/Makefile
/trunk/boot/arch/ia64/loader/boot.S
/trunk/kernel/arch/ia64/include/asm.h
/trunk/kernel/arch/ia64/include/drivers/ega.h
/trunk/kernel/arch/ia64/include/mm/page.h
/trunk/kernel/arch/ia64/src/mm/frame.c
/trunk/kernel/arch/ia64/src/start.S
2725 6005 d 23 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
2724 6006 d 0 h decky /trunk/kernel/generic/src/interrupt/ enlarge description field  
/trunk/kernel/generic/src/interrupt/interrupt.c
2723 6006 d 22 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
2722 6006 d 23 h decky /trunk/kernel/arch/mips32/ convert ARC specific commands to generic ones  
/trunk/kernel/arch/mips32/include/drivers/arc.h
/trunk/kernel/arch/mips32/include/mm/frame.h
/trunk/kernel/arch/mips32/src/console.c
/trunk/kernel/arch/mips32/src/drivers/arc.c
/trunk/kernel/arch/mips32/src/mips32.c
/trunk/kernel/arch/mips32/src/mm/frame.c
2721 6007 d 0 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
2720 6007 d 3 h decky /trunk/kernel/arch/mips32/src/mm/ prettyprint tlb command  
/trunk/kernel/arch/mips32/src/mm/tlb.c

Show All