Rev |
Age |
Author |
Path |
Log message |
Diff |
2218 |
6343 d 11 h |
decky |
/trunk/kernel/ |
support the possibility to send EOI or Interrupt Acknowledgement
prior to processing the interrupt
(this is essential on some architectures to prevent preemption deadlock) |
|
2217 |
6343 d 12 h |
jermar |
/trunk/kernel/arch/ia32/src/smp/ |
On SMP amd64 and ia32 systems, release the irq->lock
before calling clock() from the interrupt handler.
This is important for maintaining kernel preemption
since no preemption can take place while a spinlock
is held. |
|
2216 |
6343 d 15 h |
decky |
/trunk/ |
make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls |
|
2125 |
6398 d 15 h |
decky |
/trunk/ |
experimental support for Objective C
(disabled by default) |
|
2107 |
6406 d 13 h |
jermar |
/trunk/ |
When clock() is called by an external interrupt dispatched by the IRQ dispatcher,
no spinlock can be held or the kernel will not be preemptive. This fixes Ticket #24.
Formating and indentation fixes. |
|
2106 |
6406 d 22 h |
jermar |
/trunk/kernel/ |
Merge as_t structure into one and leave the differring parts in as_genarch_t.
Indentation and formatting changes in header files. |
|
2101 |
6411 d 16 h |
decky |
/trunk/kernel/ |
fix signed/unsigned comparison and integer overflow |
|
2100 |
6411 d 16 h |
decky |
/trunk/kernel/ |
signed/unsigned comparison, explicit typecast |
|
2099 |
6411 d 17 h |
decky |
/trunk/kernel/arch/ia32/src/ |
explicit cast on pointer arithmetic |
|
2097 |
6411 d 17 h |
decky |
/trunk/kernel/arch/ia32/src/smp/ |
fix signed/unsigned comparison |
|
2095 |
6411 d 17 h |
decky |
/trunk/kernel/arch/ia32/src/smp/ |
fix signed/unsigned comparison |
|
2089 |
6412 d 22 h |
decky |
/trunk/ |
huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes |
|
2087 |
6413 d 17 h |
jermar |
/trunk/kernel/ |
Indentaion and formatting changes even Martin will like :-) |
|
2083 |
6418 d 21 h |
decky |
/trunk/kernel/ |
typedef elimination |
|
2082 |
6418 d 22 h |
decky |
/trunk/ |
__asm__ __volatile__ -> asm volatile |
|
2079 |
6419 d 16 h |
decky |
/trunk/kernel/ |
remove some typedefs in favor of anonymous structures |
|
2071 |
6423 d 14 h |
jermar |
/trunk/ |
(c) versus (C) |
|
2065 |
6437 d 13 h |
jermar |
/trunk/kernel/ |
Coding style fixes and formatting improvements. |
|
2057 |
6451 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 |
6460 d 17 h |
decky |
/trunk/kernel/ |
rename rdtsc() to get_cycle() |
|
2015 |
6462 d 15 h |
jermar |
/trunk/ |
Rework support for virtually indexed cache.
Instead of repeatedly flushing the data cache, which was a huge overkill, refuse to create an illegal address alias
in the kernel (again) and allocate appropriate page color in userspace instead. Extend the detection also to
SYS_PHYSMEM_MAP syscall.
Add support for tracking physical memory areas mappable by SYS_PHYSMEM_MAP.
Lots of coding style changes. |
|
2007 |
6470 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 |
6471 d 19 h |
decky |
/trunk/kernel/arch/ |
cleanup endian conversion macros |
|
1993 |
6479 d 22 h |
decky |
/trunk/ |
make framebuffer code more generic |
|
1970 |
6503 d 22 h |
decky |
/trunk/kernel/arch/ia32/src/smp/ |
use new IRQ scheme in l_apic_timer_interrupt() |
|
1957 |
6505 d 22 h |
decky |
/trunk/kernel/ |
ia32: mouse support, mouse regrab is still broken |
|
1956 |
6506 d 0 h |
decky |
/trunk/kernel/ |
ia32: adopt new IRQ interface, mouse not tested yet |
|
1939 |
6514 d 18 h |
decky |
/trunk/ |
ia32: fix compilation, keyboard not checked yet |
|
1937 |
6515 d 1 h |
decky |
/trunk/kernel/arch/ |
remove orphaned functions |
|
1901 |
6536 d 20 h |
jermar |
/trunk/kernel/ |
Make SMP related parts of main.c more generic.
Move initialization of local APIC to architecture specific code.
Add arch_post_cpu_init() to support the above. |
|
1891 |
6544 d 13 h |
jermar |
/trunk/kernel/ |
sparc64 work:
- Experimental support for TSB (Translation Storage Buffer). |
|
1890 |
6544 d 23 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 |
6545 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 |
6548 d 18 h |
jermar |
/trunk/ |
C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64. |
|
1882 |
6549 d 22 h |
jermar |
/trunk/kernel/ |
Support for sparc64 FPU context. |
|
1877 |
6554 d 1 h |
jermar |
/trunk/kernel/ |
Coding style fixes.
Remove unneeded sparc64 dummy functions. |
|
1854 |
6565 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. |
|
1844 |
6584 d 16 h |
jermar |
/trunk/kernel/ |
Add an option to compile the sparc64 kernel for Ultra 5 or Enterprise E6500.
Basic keyboard support (polling) based on ns16550 serial port (deployed on Ultra). |
|
1842 |
6584 d 21 h |
jermar |
/trunk/kernel/ |
i8042 and z8530 separated, the tree compiles again.
Now there is some duplicated code in i8042.c and z8530.c,
but that can be eliminated in slower pace. |
|
1838 |
6589 d 19 h |
jermar |
/trunk/kernel/ |
Add scan code map for Sun keyboard. |
|