Rev |
Age |
Author |
Path |
Log message |
Diff |
2183 |
6424 d 4 h |
jermar |
/trunk/kernel/generic/ |
Continue to de-oversynchronize the kernel.
- replace as->refcount with an atomic counter; accesses to this
reference counter are not to be done when the as->lock mutex is held;
this gets us rid of mutex_lock_active();
Remove the possibility of a deadlock between TLB shootdown and asidlock.
- get rid of mutex_lock_active() on as->lock
- when locking the asidlock spinlock, always do it conditionally and with
preemption disabled; in the unsuccessful case, enable interrupts and try again
- there should be no deadlock between TLB shootdown and the as->lock mutexes
- PLEASE REVIEW !!!
Add DEADLOCK_PROBE's to places where we have spinlock_trylock() loops. |
|
2087 |
6492 d 3 h |
jermar |
/trunk/kernel/ |
Indentaion and formatting changes even Martin will like :-) |
|
2071 |
6502 d 0 h |
jermar |
/trunk/ |
(c) versus (C) |
|
1787 |
6692 d 2 h |
decky |
/ |
move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot |
|
1780 |
6699 d 3 h |
jermar |
/kernel/trunk/ |
Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.). |
|
1757 |
6713 d 8 h |
jermar |
/kernel/trunk/ |
Cleanup of comments. |
|
1702 |
6720 d 6 h |
cejka |
/kernel/trunk/ |
Kernel doxygen comments updated. |
|
1667 |
6725 d 4 h |
jermar |
/kernel/trunk/ |
Print spurious interrupt messages only when compiled with CONFIG_DEBUG.
Print warning about looping spinlock only after 100000000 unsuccessfull attempts to gain the spinlock. |
|
1323 |
6750 d 11 h |
jermar |
/kernel/trunk/ |
Increase "timeout" for debugging spinlock so that false positive
deadlock reports are suppressed on real hardware.
Also add one HT configuration to hardware compatibility list. |
|
1313 |
6751 d 8 h |
jermar |
/kernel/trunk/ |
Do not report possible deadlock on fb_lock.
This issue was causing troubles in connection
with slow framebuffer in simulated environment
when false positives triggered an infinite
recursion of attempts to report deadlock on
fb_lock using printf() and fb_putchar(). |
|
1264 |
6763 d 8 h |
jermar |
/kernel/trunk/generic/ |
Improve Doxygen-comments. |
|
1224 |
6771 d 6 h |
cejka |
/kernel/trunk/ |
Fix pointers output format.
Fix format of slab and zones tables. |
|
1104 |
6803 d 3 h |
jermar |
/kernel/trunk/ |
Define atomic_t only once in atomic.h
Change the encapsulated counter type to long so that it supports negative values as well. |
|
1100 |
6805 d 0 h |
palkovsky |
/kernel/trunk/ |
Cleanup of spinlocks, now compiles both ia32 and amd64 with
and without DEBUG_SPINLOCKS. Made spinlocks inline.
Moved syscall_handler to generic (it was identical for ia32,amd64 & mips32).
Made slightly faster syscall for ia32.
Made better interrupt routines for ia32.
Allow not saving non-scratch registers during interrupt on ia32,amd64,mips32.
Aligned interrupt handlers on ia32,amd64, this should prevent problems
with different instruction lengths. |
|
787 |
6848 d 3 h |
palkovsky |
/kernel/trunk/generic/ |
Added constructor/destructor calls to SLAB.
Changed allocation of thread_t structure to use SLAB. |
|
625 |
6900 d 4 h |
palkovsky |
/kernel/trunk/ |
We are now almost -Wall clean.
- redefined atomic_t
- deleted many, many unused variables
- some minor code cleanups found using compiler warning. |
|
622 |
6901 d 0 h |
palkovsky |
/kernel/trunk/ |
Better gcc CALLER implementation |
|
581 |
6905 d 8 h |
palkovsky |
/kernel/trunk/ |
Small debug changes. |
|
557 |
6908 d 7 h |
jermar |
/kernel/trunk/ |
Add comments describing locking rules for some locks.
Cleanup. |
|
552 |
6908 d 22 h |
palkovsky |
/kernel/trunk/ |
Named spinlocks |
|
534 |
6911 d 1 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel again. |
|
532 |
6911 d 1 h |
jermar |
/ |
Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch. |
|
501 |
6923 d 5 h |
jermar |
/ |
Rename HelenOS/SPARTAN to HelenOS/kernel. |
|
458 |
6937 d 8 h |
decky |
/SPARTAN/trunk/ |
make configuration variables usage consistent |
|
430 |
6943 d 22 h |
jermar |
/SPARTAN/trunk/ |
Move src/ and include/ to generic. |
|
383 |
6974 d 6 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for spinlock.c. |
|
223 |
7005 d 11 h |
jermar |
/SPARTAN/trunk/ |
Preemption work.
Instrument spinlock functions with preemption_disable() and preemption_enable() calls. |
|
195 |
7007 d 1 h |
vana |
/SPARTAN/trunk/ |
1) memcopy and _memcopy functions rewriten to ANSI C norm.
2) Repaired ia32,ia64 and mips version of SPARTAN to work with this memcopy functions
3) Warning for non declared funcions added and repaired ia32,ia64 and mips versions to pass build process with this warning and Werror option |
|
153 |
7029 d 21 h |
jermar |
/SPARTAN/trunk/ |
Add memory barriers into spinlock_*().
Implement CS_{ENTER|LEAVE}_BARRIER() for IA-32 (no-op).
Provide incomplete CS_{ENTER|LEAVE}_BARRIER() macros for IA-64 and MIPS as well.
Small changes here and there. |
|
111 |
7092 d 0 h |
palkovsky |
/SPARTAN/trunk/ |
Code cleanup in scheduler.c thread.c - removed unnecessary spinlock.
atomic_inc, atomic_dec moved to arch/atomic.h instead of arch/smp/atomic.h,
advisable to use even in non-smp mode.
Fixed atomic_inc, atomic_dec in mips architecture. |
|
15 |
7150 d 2 h |
jermar |
/SPARTAN/trunk/ |
Introduce macros CPU, THREAD, TASK and use them to replace the->cpu, the->thread, the->task.
Later on, this will make it possible to reference *current* cpu, thread and/or task without the aid from virtual memory. |
|
11 |
7192 d 21 h |
jermar |
/SPARTAN/trunk/ |
Clean up (ia32 vs. i386).
Header files reorganization. |
|
1 |
7200 d 3 h |
jermar |
/SPARTAN/ |
Initial import |
|