Rev |
Age |
Author |
Path |
Log message |
Diff |
2784 |
6049 d 17 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 |
6054 d 3 h |
cejka |
/trunk/ |
Unified context handling code for amd64. |
|
2774 |
6054 d 5 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 |
6091 d 23 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 |
6093 d 0 h |
decky |
/trunk/kernel/ |
convert e820list to a generic physmem command |
|
2697 |
6114 d 0 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 |
6117 d 20 h |
decky |
/trunk/kernel/arch/amd64/ |
move cpuid tests from amd64.c to boot.S |
|
2630 |
6163 d 15 h |
jermar |
/trunk/kernel/arch/ |
Formatting fixes. |
|
2612 |
6172 d 18 h |
jermar |
/trunk/kernel/arch/ |
Cleanup. |
|
2606 |
6173 d 21 h |
jermar |
/trunk/ |
Support for 6 syscalls arguments on amd64. |
|
2467 |
6329 d 20 h |
jermar |
/trunk/ |
Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting. |
|
2465 |
6334 d 23 h |
jermar |
/trunk/ |
Merge arm32 into trunk. |
|
2453 |
6337 d 22 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 |
6338 d 0 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 |
6342 d 16 h |
decky |
/trunk/kernel/ |
fix ICC compilation |
|
2233 |
6394 d 17 h |
decky |
/trunk/kernel/arch/ |
use the hlt instruction more properly |
|
2216 |
6396 d 18 h |
decky |
/trunk/ |
make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls |
|
2089 |
6466 d 0 h |
decky |
/trunk/ |
huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes |
|
2083 |
6472 d 0 h |
decky |
/trunk/kernel/ |
typedef elimination |
|
2082 |
6472 d 1 h |
decky |
/trunk/ |
__asm__ __volatile__ -> asm volatile |
|
2079 |
6472 d 19 h |
decky |
/trunk/kernel/ |
remove some typedefs in favor of anonymous structures |
|
2071 |
6476 d 17 h |
jermar |
/trunk/ |
(c) versus (C) |
|
2057 |
6504 d 4 h |
jermar |
/trunk/kernel/arch/ |
Fix all remaining mistmatches in width of byte swapping functions for ia64,
ppc32, ppc64, amd64, mips32 and ia32. |
|
2018 |
6513 d 20 h |
decky |
/trunk/kernel/ |
rename rdtsc() to get_cycle() |
|
2007 |
6523 d 16 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 |
6524 d 22 h |
decky |
/trunk/kernel/arch/ |
cleanup endian conversion macros |
|
1958 |
6559 d 0 h |
decky |
/trunk/kernel/arch/amd64/ |
amd64: adopt new IRQ interface |
|
1949 |
6564 d 1 h |
jermar |
/trunk/kernel/arch/ |
Remove notes about automatically generated context_offset.h
and replace it with a proper copyright notice. |
|
1948 |
6564 d 3 h |
jermar |
/trunk/kernel/ |
Remove broken, outdated and unused gencontext.c utilities. |
|
1940 |
6567 d 21 h |
decky |
/trunk/kernel/arch/amd64/ |
amd64: fix compilation, keyboard not checked yet |
|
1891 |
6597 d 16 h |
jermar |
/trunk/kernel/ |
sparc64 work:
- Experimental support for TSB (Translation Storage Buffer). |
|
1890 |
6598 d 2 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 |
6598 d 18 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 |
6601 d 21 h |
jermar |
/trunk/ |
C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64. |
|
1882 |
6603 d 0 h |
jermar |
/trunk/kernel/ |
Support for sparc64 FPU context. |
|
1854 |
6618 d 3 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 |
6654 d 1 h |
decky |
/trunk/kernel/arch/ |
unify bootstrapping |
|
1787 |
6666 d 19 h |
decky |
/ |
move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot |
|
1780 |
6673 d 20 h |
jermar |
/kernel/trunk/ |
Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.). |
|
1731 |
6690 d 13 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. |
|