Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3593 5827 d 12 h rimsky /branches/sparc/ Merged latest trunk changes into sparc branch.  
3343 5917 d 18 h decky /branches/sparc/ add sparc branch  
3068 5994 d 20 h decky /trunk/kernel/generic/include/ reflect changes in sources  
2462 6357 d 15 h jermar /trunk/kernel/ Replace gcc-specific __FUNCTION__ with C99 __func__.
suncc's xregs=no%float can be used only on sparc64.
 
2183 6419 d 19 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 6485 d 18 h decky /trunk/kernel/ spinlock extern declaration macro  
2089 6486 d 22 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2085 6492 d 20 h decky /trunk/kernel/ typedef elimination  
2071 6497 d 14 h jermar /trunk/ (c) versus (C)  
1888 6622 d 18 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6687 d 17 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6715 d 21 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1104 6798 d 18 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 6800 d 14 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 6895 d 19 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 6896 d 1 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 6904 d 13 h palkovsky /kernel/trunk/generic/include/synch/ Fix of compiling without SMP.  
552 6904 d 13 h palkovsky /kernel/trunk/ Named spinlocks  
534 6906 d 15 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6906 d 16 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  

Show All