Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
1597 6651 d 1 h palkovsky /kernel/trunk/ Added possibility to interrupt task at exit from interrupt routine.  
/kernel/trunk/arch/sparc64/include/interrupt.h
/kernel/trunk/generic/src/interrupt/interrupt.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/syscall/syscall.c
1595 6651 d 2 h palkovsky /kernel/trunk/ Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog.
 
/kernel/trunk/generic/include/console/klog.h
/kernel/trunk/generic/src/console/klog.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/include/interrupt.h
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia64/include/interrupt.h
/kernel/trunk/arch/ia64/src/interrupt.c
/kernel/trunk/arch/mips32/include/arg.h
/kernel/trunk/arch/mips32/include/exception.h
/kernel/trunk/arch/mips32/src/exception.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/include/exception.h
/kernel/trunk/arch/ppc32/src/interrupt.c
/kernel/trunk/arch/ppc64/include/exception.h
/kernel/trunk/arch/sparc64/include/interrupt.h
/kernel/trunk/generic/include/interrupt.h
/kernel/trunk/generic/include/ipc/irq.h
/kernel/trunk/generic/include/ipc/sysipc.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/stackarg.h
/kernel/trunk/generic/include/stdarg.h
/kernel/trunk/generic/src/interrupt/interrupt.c
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/generic/src/ipc/irq.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/proc/thread.c
1594 6651 d 9 h jermar /kernel/trunk/generic/src/mm/ Never ever walk a B+tree as you destroy it. Or vice versa.  
/kernel/trunk/generic/src/mm/as.c
1593 6651 d 10 h jermar /kernel/trunk/generic/src/synch/ When interrupted from sleep, pending timeouts must be unregistered.  
/kernel/trunk/generic/src/synch/waitq.c
1591 6651 d 12 h palkovsky /kernel/trunk/generic/ Small updates to ipc.  
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/generic/src/ipc/irq.c
/kernel/trunk/generic/src/ipc/sysipc.c
1589 6651 d 15 h jermar /kernel/trunk/generic/src/ Improve comments regarding liveliness of threads and tasks.  
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
1588 6651 d 16 h jermar /kernel/trunk/generic/src/ In task_kill(), remove the task from the tasks_btree before proceeding.
Thus, when the kernel finds the task in the tasks_btree and locks it before
releasing tasks_lock, it is guaranteed that the task will not be destroyed
until the lock is held. If the kernel needs to unlock the task, do some operation
and lock it again, it should increase its refcount before doing so. In that case,
when releasing the lock, it must decrement the refcount and if it reaches
zero, it must call task_destroy().
 
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/security/cap.c
1587 6651 d 16 h jermar /kernel/trunk/ task_destroy() implementation, fixes in as_destroy() and task_kill().
This is the first version of HelenOS that would perform complete cleanup leading from thread to destruction of address space.
 
/kernel/trunk/arch/amd64/src/proc/task.c
/kernel/trunk/arch/ia32/src/proc/task.c
/kernel/trunk/arch/ia64/include/proc/task.h
/kernel/trunk/arch/mips32/include/proc/task.h
/kernel/trunk/arch/ppc32/include/proc/task.h
/kernel/trunk/arch/ppc64/include/proc/task.h
/kernel/trunk/arch/sparc64/include/proc/task.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/task.c
1586 6651 d 19 h jermar /kernel/trunk/generic/src/synch/ futex_cleanup() implementation.  
/kernel/trunk/generic/src/synch/futex.c
1585 6651 d 20 h jermar /kernel/trunk/generic/ Kill task when its main thread exits.  
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
1583 6651 d 23 h jermar /kernel/trunk/generic/ Make ktaskclnp call ipc_cleanup and futex_cleanup.  
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/synch/futex.h
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/synch/futex.c
1582 6651 d 23 h palkovsky /kernel/trunk/generic/ Modified ipc_cleanup.  
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/ipc/ipc.c
1581 6652 d 2 h jermar /kernel/trunk/generic/src/ Detach kmp thread after joining it.
Extend assertion in thread_destroy() to not panic when threads are destroyed in their Unded state.
 
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/proc/thread.c
1580 6652 d 2 h jermar /kernel/trunk/generic/src/ Update for task_kill().  
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/synch/waitq.c
1579 6652 d 12 h jermar /kernel/trunk/generic/ Framework for task_kill().
Some pieces (e.g. implementation of ktask_cleanup() kernel thread and
task_destroy() function) are missing.
Changed locking order for task lock, threads_lock and thread lock from
threads_lock, thread lock, task lock to task lock, threads_lock, thread lock.
 
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/waitq.c
/kernel/trunk/generic/src/syscall/syscall.c
1576 6652 d 14 h jermar /kernel/trunk/ Make use of thread_join_timeout() and thread_detach() in kernel.

Improved comments in slab.h.
 
/kernel/trunk/arch/ia32/include/smp/mps.h
/kernel/trunk/arch/ia32/src/smp/mps.c
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/proc/scheduler.c
1573 6652 d 17 h palkovsky /kernel/trunk/generic/ Renamed some things in IPC to be consistent.
Added ipc reporting to kconsole.
 
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/generic/src/ipc/ipcrsc.c
/kernel/trunk/generic/src/ipc/irq.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/proc/task.c
1571 6652 d 17 h jermar /kernel/trunk/generic/ thread_join_timeout() and thread_detach() implementation.
Needs more thorough testing.
 
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
1568 6652 d 18 h palkovsky /kernel/trunk/generic/ Slightly remodelled ipc hangups to facilitate correct cleanup.
Doc updates for frame allocator.
 
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/generic/src/ipc/ipcrsc.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/frame.c
1554 6653 d 12 h jermar /kernel/trunk/generic/src/mm/ Improve comment in slab.c.  
/kernel/trunk/generic/src/mm/slab.c
1550 6653 d 18 h jermar /kernel/trunk/generic/src/mm/ Remove left over piece of code for increasing reference count in ELF backend.  
/kernel/trunk/generic/src/mm/backend_elf.c
1549 6653 d 19 h vana /kernel/trunk/generic/src/adt/ Bitmap functions patch  
/kernel/trunk/generic/src/adt/bitmap.c
1546 6653 d 19 h jermar /kernel/trunk/generic/src/mm/ Add reference to shared frames of ELF image backed address space area.  
/kernel/trunk/generic/src/mm/backend_elf.c
1545 6653 d 20 h jermar /kernel/trunk/generic/src/mm/ Add reference to shared frames of anonymous address space area.  
/kernel/trunk/generic/src/mm/backend_anon.c
1544 6653 d 20 h palkovsky /kernel/trunk/generic/ Slightly better behaviour with caching on memory sharing.  
/kernel/trunk/generic/include/errno.h
/kernel/trunk/generic/src/mm/as.c
1539 6654 d 2 h cejka /kernel/trunk/generic/src/mm/ Fixed warning about unused variable in non-debug mode.  
/kernel/trunk/generic/src/mm/backend_phys.c
1507 6654 d 20 h vana /kernel/trunk/ IA64 uspace keyboard kernel part  
/kernel/trunk/arch/ia64/include/arch.h
/kernel/trunk/arch/ia64/include/interrupt.h
/kernel/trunk/arch/ia64/include/ski/ski.h
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/arch/ia64/src/interrupt.c
/kernel/trunk/arch/ia64/src/ski/ski.c
/kernel/trunk/generic/include/ipc/irq.h
/kernel/trunk/generic/src/ipc/irq.c
1502 6654 d 21 h jermar /kernel/trunk/ Replace nonblocking argument of waitq_sleep_timeout with flags that specify mode of operation.
Now a flag can be used to specify interruptible sleep.
Modify waitq_interrupt_sleep() to only interrupt threads that used this flag.
O
 
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/synch/condvar.h
/kernel/trunk/generic/include/synch/futex.h
/kernel/trunk/generic/include/synch/mutex.h
/kernel/trunk/generic/include/synch/rwlock.h
/kernel/trunk/generic/include/synch/semaphore.h
/kernel/trunk/generic/include/synch/synch.h
/kernel/trunk/generic/include/synch/waitq.h
/kernel/trunk/generic/src/ipc/ipc.c
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/condvar.c
/kernel/trunk/generic/src/synch/futex.c
/kernel/trunk/generic/src/synch/mutex.c
/kernel/trunk/generic/src/synch/rwlock.c
/kernel/trunk/generic/src/synch/semaphore.c
/kernel/trunk/generic/src/synch/waitq.c
1495 6655 d 9 h jermar /kernel/trunk/ Remove three infinite loops introduced yesterday :-)

Make ia64 ready to load 5 ELF images.
 
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/generic/src/mm/as.c
1494 6655 d 9 h palkovsky /kernel/trunk/generic/ Removes unnecessary parameter for map_physmem syscall.  
/kernel/trunk/generic/include/ddi/ddi.h
/kernel/trunk/generic/src/ddi/ddi.c
1484 6655 d 19 h palkovsky /kernel/trunk/generic/include/ Added EINVAL error code.  
/kernel/trunk/generic/include/errno.h
1483 6655 d 20 h jermar /kernel/trunk/generic/src/ Implement recursive function for deallocating the whole B+tree.
Make use of this function in address space management.
 
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/mm/as.c
1474 6656 d 12 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
/kernel/trunk/arch/amd64/src/amd64.c
/kernel/trunk/arch/ia32/src/ia32.c
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/arch/mips32/include/drivers/msim.h
/kernel/trunk/arch/mips32/src/console.c
/kernel/trunk/arch/mips32/src/drivers/msim.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/arch/ppc32/src/ppc32.c
/kernel/trunk/arch/ppc64/src/ppc64.c
/kernel/trunk/arch/sparc64/src/sparc64.c
/kernel/trunk/genarch/include/i8042/i8042.h
/kernel/trunk/genarch/src/i8042/i8042.c
/kernel/trunk/generic/include/console/console.h
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/syscall/syscall.c
1468 6656 d 17 h jermar /kernel/trunk/ Function for destroying address space for which there is no other reference in the kernel.  
/kernel/trunk/arch/ia32/include/mm/asid.h
/kernel/trunk/genarch/src/mm/as_ht.c
/kernel/trunk/genarch/src/mm/as_pt.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/task.c
1467 6656 d 18 h jermar /kernel/trunk/generic/src/synch/ Allow usage of blocking synchronization primitives in functions that are also called during system initialization.  
/kernel/trunk/generic/src/synch/waitq.c
1461 6656 d 20 h palkovsky /kernel/trunk/generic/ Slightly changed semantics of AS_AREA_SEND/RECV.  
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
1460 6656 d 21 h jermar /kernel/trunk/generic/ Reference counting for futexes.  
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/synch/futex.h
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/synch/futex.c
1458 6657 d 11 h palkovsky /kernel/trunk/ Added console support to gxemul.
Wider information in thread list.
 
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/contrib/conf/gxemul.sh
/kernel/trunk/generic/src/proc/thread.c
1457 6657 d 12 h jermar /kernel/trunk/generic/src/time/ Project missed_clock_ticks also on thread timeslice and run queue relink counter.  
/kernel/trunk/generic/src/time/clock.c
1448 6658 d 17 h palkovsky /kernel/trunk/generic/src/syscall/ Better SYS_IO  
/kernel/trunk/generic/src/syscall/syscall.c