Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
2223 6269 d 19 h decky /trunk/kernel/generic/src/ add mcall0 command (calling a function on each CPU)  
2222 6269 d 22 h decky /trunk/kernel/ map kernel pages explicitly as writable (this solves compatibility issues with Intel Core 2)
make VESA framebuffer initialization more robust
 
2221 6270 d 0 h decky /trunk/kernel/arch/ia32/src/boot/ fix typo in comment  
2220 6270 d 0 h decky /trunk/kernel/arch/ia32/src/boot/ check for PSE support, add error message on PSE not present
make initial mapping explicitly writeable, turn PAE explicitly off (just in case)
 
2219 6270 d 1 h decky /trunk/kernel/arch/amd64/src/boot/ add error message on no long mode support  
2218 6270 d 19 h decky /trunk/kernel/ support the possibility to send EOI or Interrupt Acknowledgement
prior to processing the interrupt
(this is essential on some architectures to prevent preemption deadlock)
 
2217 6270 d 20 h jermar /trunk/kernel/arch/ia32/src/smp/ On SMP amd64 and ia32 systems, release the irq->lock
before calling clock() from the interrupt handler.
This is important for maintaining kernel preemption
since no preemption can take place while a spinlock
is held.
 
2216 6270 d 23 h decky /trunk/ make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls
 
2211 6271 d 1 h decky /trunk/kernel/generic/src/synch/ reflect the renaming of printflock to printf_lock  
2210 6271 d 1 h decky /trunk/ use more useful values  
2209 6271 d 1 h decky /trunk/uspace/ use futex instead of pthread serialization
synchronize only output to stdout
cleanup
 
2208 6271 d 1 h decky /trunk/kernel/generic/ use spinlock only on console output, not other print functions
cleanup
 
2193 6272 d 4 h decky /trunk/uspace/tester/ reimplement all tests from original ipcc
(cleanup needed)
 
2192 6272 d 4 h decky /trunk/uspace/libc/arch/sparc64/include/ fix uspace atomic_add according kernel code  
2188 6272 d 5 h decky /trunk/ new user space testing framework (unfinished)  
2187 6272 d 6 h decky /trunk/kernel/generic/ add syscall for getting current thread ID  
2186 6272 d 7 h decky /trunk/uspace/tester/ rename ipcc.c to tester.c  
2185 6272 d 7 h decky /trunk/ rename ipcc to tester  
2184 6272 d 9 h decky /trunk/kernel/generic/src/lib/ add zetta (sextillion) prefix
make constants explicitly unsigned
 
2183 6273 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.
 

Show All