Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
4490 5684 d 9 h decky /trunk/kernel/ remove redundant index_t and count_t types (which were always quite ambiguous and not actually needed)  
3578 5888 d 20 h vana /trunk/ Alfa of SMP support on IA64  
3068 6049 d 13 h decky /trunk/kernel/generic/include/ reflect changes in sources  
2462 6412 d 8 h jermar /trunk/kernel/ Replace gcc-specific __FUNCTION__ with C99 __func__.
suncc's xregs=no%float can be used only on sparc64.
 
2183 6474 d 12 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 6540 d 11 h decky /trunk/kernel/ spinlock extern declaration macro  
2089 6541 d 15 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2085 6547 d 14 h decky /trunk/kernel/ typedef elimination  
2071 6552 d 8 h jermar /trunk/ (c) versus (C)  
1888 6677 d 11 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6742 d 10 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6770 d 14 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1104 6853 d 11 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 6855 d 8 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 6950 d 12 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 6950 d 18 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 6959 d 6 h palkovsky /kernel/trunk/generic/include/synch/ Fix of compiling without SMP.  
552 6959 d 6 h palkovsky /kernel/trunk/ Named spinlocks  
534 6961 d 9 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6961 d 9 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  

Show All