Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3593 5886 d 20 h rimsky /branches/sparc/ Merged latest trunk changes into sparc branch.  
3343 5977 d 2 h decky /branches/sparc/ add sparc branch  
3068 6054 d 4 h decky /trunk/kernel/generic/include/ reflect changes in sources  
2462 6416 d 22 h jermar /trunk/kernel/ Replace gcc-specific __FUNCTION__ with C99 __func__.
suncc's xregs=no%float can be used only on sparc64.
 
2183 6479 d 3 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 6545 d 2 h decky /trunk/kernel/ spinlock extern declaration macro  
2089 6546 d 5 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2085 6552 d 4 h decky /trunk/kernel/ typedef elimination  
2071 6556 d 22 h jermar /trunk/ (c) versus (C)  
1888 6682 d 2 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6747 d 0 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6775 d 4 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1104 6858 d 2 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 6859 d 22 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 6955 d 3 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 6955 d 8 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 6963 d 21 h palkovsky /kernel/trunk/generic/include/synch/ Fix of compiling without SMP.  
552 6963 d 21 h palkovsky /kernel/trunk/ Named spinlocks  
534 6965 d 23 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6965 d 23 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  

Show All