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 5971 d 22 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 5971 d 22 h jermar /trunk/kernel/arch/amd64/src/cpu/ Fix cstyle.  
/trunk/kernel/arch/amd64/src/cpu/cpu.c
2781 5976 d 6 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 5976 d 6 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 5976 d 7 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 5976 d 9 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 5976 d 10 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 5976 d 10 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 5978 d 23 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 5981 d 0 h jermar /trunk/kernel/arch/amd64/src/ Fix breakage in non-debug amd64 build.  
/trunk/kernel/arch/amd64/src/debugger.c
2765 5981 d 23 h jermar /trunk/kernel/generic/src/proc/ tasklet.c needs to include config.h  
/trunk/kernel/generic/src/proc/tasklet.c
2746 5993 d 2 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 5993 d 7 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 6011 d 8 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 6014 d 5 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 6014 d 5 h decky /trunk/kernel/generic/src/interrupt/ enlarge description field  
/trunk/kernel/generic/src/interrupt/interrupt.c
2723 6015 d 3 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 6015 d 4 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 6015 d 5 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 6015 d 8 h decky /trunk/kernel/arch/mips32/src/mm/ prettyprint tlb command  
/trunk/kernel/arch/mips32/src/mm/tlb.c

Show All