Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3593 5840 d 1 h rimsky /branches/sparc/ Merged latest trunk changes into sparc branch.  
3343 5930 d 7 h decky /branches/sparc/ add sparc branch  
3068 6007 d 9 h decky /trunk/kernel/generic/include/ reflect changes in sources  
2462 6370 d 4 h jermar /trunk/kernel/ Replace gcc-specific __FUNCTION__ with C99 __func__.
suncc's xregs=no%float can be used only on sparc64.
 
2183 6432 d 8 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.
 
2093 6498 d 7 h decky /trunk/kernel/ spinlock extern declaration macro  
2089 6499 d 11 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2085 6505 d 9 h decky /trunk/kernel/ typedef elimination  
2071 6510 d 3 h jermar /trunk/ (c) versus (C)  
1888 6635 d 7 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6700 d 6 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6728 d 10 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1104 6811 d 7 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 6813 d 3 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.
 
625 6908 d 8 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.
 
623 6908 d 14 h jermar /kernel/trunk/ Add SPINLOCK_DECLARE and SPINLOCK_INITIALIZE macros.
SPINLOCK_DECLARE is to be used instead of direct spinlock_t declarations
in dynamically allocated structures on which spinlock_initialize() is called after
their creation.
SPINLOCK_INITIALIZE is to be used instead of direct spinlock_t declarations
of global spinlocks. It declares and initializes the spinlock.
Moreover, both macros are empty on UP so that -Wall warnings about unused structures
get supressed.
 
553 6917 d 2 h palkovsky /kernel/trunk/generic/include/synch/ Fix of compiling without SMP.  
552 6917 d 2 h palkovsky /kernel/trunk/ Named spinlocks  
534 6919 d 4 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6919 d 4 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  

Show All