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
2794 5930 d 21 h jermar /trunk/kernel/ Add macros for byte swapping of uint16_t's.  
2784 5944 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.
 
2777 5949 d 7 h cejka /trunk/ Unified context handling code for amd64.  
2774 5949 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.
 
2725 5987 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)
 
2721 5988 d 3 h decky /trunk/kernel/ convert e820list to a generic physmem command  
2697 6009 d 4 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 6012 d 23 h decky /trunk/kernel/arch/amd64/ move cpuid tests from amd64.c to boot.S  
2630 6058 d 19 h jermar /trunk/kernel/arch/ Formatting fixes.  
2612 6067 d 21 h jermar /trunk/kernel/arch/ Cleanup.  
2606 6069 d 1 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
2467 6224 d 23 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
2465 6230 d 2 h jermar /trunk/ Merge arm32 into trunk.  
2453 6233 d 2 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 6233 d 3 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 6237 d 20 h decky /trunk/kernel/ fix ICC compilation  
2233 6289 d 20 h decky /trunk/kernel/arch/ use the hlt instruction more properly  
2216 6291 d 21 h decky /trunk/ make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls
 
2089 6361 d 4 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2083 6367 d 4 h decky /trunk/kernel/ typedef elimination  
2082 6367 d 4 h decky /trunk/ __asm__ __volatile__ -> asm volatile  
2079 6367 d 22 h decky /trunk/kernel/ remove some typedefs in favor of anonymous structures  
2071 6371 d 21 h jermar /trunk/ (c) versus (C)  
2057 6399 d 8 h jermar /trunk/kernel/arch/ Fix all remaining mistmatches in width of byte swapping functions for ia64,
ppc32, ppc64, amd64, mips32 and ia32.
 
2018 6409 d 0 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
2007 6418 d 19 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 6420 d 2 h decky /trunk/kernel/arch/ cleanup endian conversion macros  
1958 6454 d 4 h decky /trunk/kernel/arch/amd64/ amd64: adopt new IRQ interface  
1949 6459 d 4 h jermar /trunk/kernel/arch/ Remove notes about automatically generated context_offset.h
and replace it with a proper copyright notice.
 
1948 6459 d 7 h jermar /trunk/kernel/ Remove broken, outdated and unused gencontext.c utilities.  
1940 6463 d 0 h decky /trunk/kernel/arch/amd64/ amd64: fix compilation, keyboard not checked yet  
1891 6492 d 19 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6493 d 5 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 6493 d 21 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 6497 d 0 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1882 6498 d 4 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1854 6513 d 6 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 6549 d 5 h decky /trunk/kernel/arch/ unify bootstrapping  
1787 6561 d 23 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6569 d 0 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).