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 5958 d 14 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 5963 d 1 h cejka /trunk/ Unified context handling code for amd64.  
2774 5963 d 2 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 6000 d 21 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 6001 d 21 h decky /trunk/kernel/ convert e820list to a generic physmem command  
2697 6022 d 22 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 6026 d 18 h decky /trunk/kernel/arch/amd64/ move cpuid tests from amd64.c to boot.S  
2630 6072 d 13 h jermar /trunk/kernel/arch/ Formatting fixes.  
2612 6081 d 16 h jermar /trunk/kernel/arch/ Cleanup.  
2606 6082 d 19 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
2467 6238 d 18 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
2465 6243 d 20 h jermar /trunk/ Merge arm32 into trunk.  
2453 6246 d 20 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 6246 d 21 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 6251 d 14 h decky /trunk/kernel/ fix ICC compilation  
2233 6303 d 14 h decky /trunk/kernel/arch/ use the hlt instruction more properly  
2216 6305 d 15 h decky /trunk/ make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls
 
2089 6374 d 22 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2083 6380 d 22 h decky /trunk/kernel/ typedef elimination  
2082 6380 d 22 h decky /trunk/ __asm__ __volatile__ -> asm volatile  
2079 6381 d 17 h decky /trunk/kernel/ remove some typedefs in favor of anonymous structures  
2071 6385 d 15 h jermar /trunk/ (c) versus (C)  
2057 6413 d 2 h jermar /trunk/kernel/arch/ Fix all remaining mistmatches in width of byte swapping functions for ia64,
ppc32, ppc64, amd64, mips32 and ia32.
 
2018 6422 d 18 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2007 6432 d 13 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 6433 d 20 h decky /trunk/kernel/arch/ cleanup endian conversion macros  
1958 6467 d 22 h decky /trunk/kernel/arch/amd64/ amd64: adopt new IRQ interface  
1949 6472 d 22 h jermar /trunk/kernel/arch/ Remove notes about automatically generated context_offset.h
and replace it with a proper copyright notice.
 
1948 6473 d 1 h jermar /trunk/kernel/ Remove broken, outdated and unused gencontext.c utilities.  
1940 6476 d 18 h decky /trunk/kernel/arch/amd64/ amd64: fix compilation, keyboard not checked yet  
1891 6506 d 13 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6507 d 0 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 6507 d 15 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 6510 d 18 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1882 6511 d 22 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1854 6527 d 0 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 6562 d 23 h decky /trunk/kernel/arch/ unify bootstrapping  
1787 6575 d 17 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6582 d 18 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1731 6599 d 11 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.