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 5996 d 20 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 5996 d 21 h jermar /trunk/kernel/arch/amd64/src/cpu/ Fix cstyle.  
/trunk/kernel/arch/amd64/src/cpu/cpu.c
2781 6001 d 4 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 6001 d 5 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 6001 d 5 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 6001 d 7 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 6001 d 8 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 6001 d 8 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 6003 d 21 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 6005 d 22 h jermar /trunk/kernel/arch/amd64/src/ Fix breakage in non-debug amd64 build.  
/trunk/kernel/arch/amd64/src/debugger.c
2765 6006 d 21 h jermar /trunk/kernel/generic/src/proc/ tasklet.c needs to include config.h  
/trunk/kernel/generic/src/proc/tasklet.c
2746 6018 d 1 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 6018 d 6 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 6036 d 7 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 6039 d 3 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 6039 d 3 h decky /trunk/kernel/generic/src/interrupt/ enlarge description field  
/trunk/kernel/generic/src/interrupt/interrupt.c
2723 6040 d 1 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 6040 d 3 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 6040 d 3 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 6040 d 6 h decky /trunk/kernel/arch/mips32/src/mm/ prettyprint tlb command  
/trunk/kernel/arch/mips32/src/mm/tlb.c

Show All