Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
2784 5943 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.
 
2606 6067 d 21 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
2071 6370 d 17 h jermar /trunk/ (c) versus (C)  
2018 6407 d 20 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
1787 6560 d 19 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1288 6628 d 1 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.
 
1278 6630 d 19 h palkovsky /kernel/trunk/ Changed interrupt_control to preemption_control.  
1212 6640 d 19 h palkovsky /kernel/trunk/ Added uspace call to enable/disable interrupts.  
1121 6670 d 16 h jermar /kernel/trunk/ Small textual changes.  
1094 6674 d 3 h palkovsky /kernel/trunk/ Allowed saving less registers.  
1021 6678 d 19 h jermar /kernel/trunk/ Hopefully final version of interrupt handlers for amd64 and ia32.
amd64 has been especially tricky to debug.
Error code detection is now done in compile time.
 
955 6680 d 18 h palkovsky /kernel/trunk/ Added kernel IPC functionality.  
820 6713 d 15 h jermar /kernel/trunk/ Convert size_t, count_t and index_t to 64-bits on 64-bit architectures.
Change some pfn_t usages to count_t, size_t and index_t.
 
808 6715 d 4 h palkovsky /kernel/trunk/arch/amd64/ Doc updates.  
806 6715 d 11 h palkovsky /kernel/trunk/arch/amd64/ Added (finally!) userspace to AMD64.
It does not work on Simics *$U&%&$&*#. Broken simics!!!
There should be probably LEA instead of MOV/ADD, but LEA does not
work in neither qemu nor bochs. Any other simulator to test? :-/
 
803 6715 d 14 h palkovsky /kernel/trunk/arch/amd64/ Basic amd syscall support.  
799 6715 d 16 h palkovsky /kernel/trunk/ Preliminary work on AMD userspace.  
717 6737 d 19 h decky /kernel/trunk/ remove obsolete in-kernel userspace code
remove CONFIG_USERSPACE switch, uspace support is configured at run-time
 
702 6740 d 1 h jermar /kernel/trunk/arch/amd64/src/ Fix amd64 interrupt_handler to properly remove error code from stack before iretq.  
576 6774 d 12 h palkovsky /kernel/trunk/ Changed ia32 & amd64 to use exc_register instead of trap_register.

Fixed dependency list building. I hope you all have 'makedepend' installed,
if you don't it's time to install it, as CC -M builds the dependency
list without directory names..and it just does not work.
 
534 6779 d 18 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6779 d 18 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6791 d 22 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
472 6804 d 23 h jermar /SPARTAN/trunk/ Changes in build system.
For .S targets, always do -D__ASM__.
Remove unnecessary #define __ASM__ from various *.S files.
At the end of build, generate disassembler dump for kernel.raw.

ia64 work.
Better General Exception handler.
 
348 6861 d 16 h jermar /SPARTAN/trunk/arch/ Optimize some assembler functions.  
332 6864 d 1 h palkovsky /SPARTAN/trunk/ Updated symtab so that it works correctly with BE architectures.
Changed compiler for BE MIPS to be mips-sgi-irix5, because
mipsel -EB does not behave correctly.
Doc updates to amd64.
Added ARC BIOS support to MIPS architecture. Putchar works correctly,
kernel passed FPU & some rwlock tests.
 
257 6872 d 4 h palkovsky /SPARTAN/trunk/ Added basic FPU context (not working).
Added CPU utilities from ia32
Fixed bug in vm.c that wanted PTL to be mapped in bottom memory.
 
252 6872 d 6 h palkovsky /SPARTAN/trunk/arch/amd64/ Added volatile to inb/outb, so that it does not optimeze
lot of things out anymore.
Working delay loop.
 
251 6872 d 13 h palkovsky /SPARTAN/trunk/ Changes, that were needed to make it work on Bochs.
- We CAN use the NX bit in paging tables, but we have
to initialize the NXE bit in EFER register first.
 
242 6872 d 23 h palkovsky /SPARTAN/trunk/ Fixed stack settings in boot.S in real mode.
Added ia32 memmap support.
Added cpuid support.
 
224 6874 d 4 h palkovsky /SPARTAN/trunk/arch/ Interrupts for amd64.