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 5962 d 1 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.
 
2777 5966 d 12 h cejka /trunk/ Unified context handling code for amd64.  
2774 5966 d 13 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.
 
2725 6004 d 8 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)
 
2721 6005 d 8 h decky /trunk/kernel/ convert e820list to a generic physmem command  
2697 6026 d 9 h decky /trunk/kernel/ amd64: shorten kernel address space by 2 GB to support proper mapping of more than 2 GB of physical memory  
2692 6030 d 4 h decky /trunk/kernel/arch/amd64/ move cpuid tests from amd64.c to boot.S  
2630 6076 d 0 h jermar /trunk/kernel/arch/ Formatting fixes.  
2612 6085 d 2 h jermar /trunk/kernel/arch/ Cleanup.  
2606 6086 d 6 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
2467 6242 d 4 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
2465 6247 d 7 h jermar /trunk/ Merge arm32 into trunk.  
2453 6250 d 7 h jermar /trunk/kernel/ More suncc fixes.
- remove more empty declarations
- add options to turn errors on empty structs into warnings and options to
silence these warnings
 
2452 6250 d 8 h jermar /trunk/kernel/ More suncc fixes.
- Removed extra semicolons after function declaration.
- Sun Studio recognizes only C99 __func__ and no gcc-specific __FUNCTION__.
In this case, a simple -D option can fix the problem.
 
2441 6255 d 1 h decky /trunk/kernel/ fix ICC compilation  
2233 6307 d 1 h decky /trunk/kernel/arch/ use the hlt instruction more properly  
2216 6309 d 2 h decky /trunk/ make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls
 
2089 6378 d 9 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2083 6384 d 9 h decky /trunk/kernel/ typedef elimination  
2082 6384 d 9 h decky /trunk/ __asm__ __volatile__ -> asm volatile  
2079 6385 d 3 h decky /trunk/kernel/ remove some typedefs in favor of anonymous structures  
2071 6389 d 2 h jermar /trunk/ (c) versus (C)  
2057 6416 d 13 h jermar /trunk/kernel/arch/ Fix all remaining mistmatches in width of byte swapping functions for ia64,
ppc32, ppc64, amd64, mips32 and ia32.
 
2018 6426 d 5 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2007 6436 d 0 h jermar /trunk/kernel/ Introduce page colors. So far, only sparc64 uses correct page color bits. Other architectures have a dummy define
specifying zero bits for a page color.

There is a new check of page color in as_area_share(). Because of lack of support for this in the userspace, the
check has been #ifef'ed out.
 
2003 6437 d 7 h decky /trunk/kernel/arch/ cleanup endian conversion macros  
1958 6471 d 9 h decky /trunk/kernel/arch/amd64/ amd64: adopt new IRQ interface  
1949 6476 d 9 h jermar /trunk/kernel/arch/ Remove notes about automatically generated context_offset.h
and replace it with a proper copyright notice.
 
1948 6476 d 12 h jermar /trunk/kernel/ Remove broken, outdated and unused gencontext.c utilities.  
1940 6480 d 5 h decky /trunk/kernel/arch/amd64/ amd64: fix compilation, keyboard not checked yet  
1891 6510 d 0 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6510 d 10 h jermar /trunk/ - Create a dedicated slab cache for as_t objects and switch from malloc/free to slab_alloc/slab_free for
them.

- Slightly fix and improve both the kernel and userspace atomic_add() on sparc64.

- More TSB work on the sparc64 front.
 
1889 6511 d 2 h jermar /trunk/kernel/ Fix bug in mm/as.c:
- as_area_destroy() should not work with AS but as

sparc64 work:
- start implementing TSB support
 
1888 6514 d 5 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1882 6515 d 9 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1854 6530 d 11 h jermar /trunk/kernel/ Define architecture-specific thread sub-constructors and sub-destructors on all architectures.
Define the THREAD_FLAG_USPACE which means that the thread runs in user space.
The forementioned changes allow for allocating of user window buffer on sparc64
threads that execute in userspace.

A lot of formatting and indentation fixes.
 
1811 6566 d 10 h decky /trunk/kernel/arch/ unify bootstrapping  
1787 6579 d 4 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6586 d 5 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1731 6602 d 21 h jermar /kernel/trunk/ Updates in Doxygen-style comments.
Make architecture specific modules appear conditionally in the documentation.
Add time management module.
Improve names of other modules and sort module order
to be more like in the design documentation.