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
1594 6613 d 17 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 6613 d 18 h jermar /kernel/trunk/generic/src/synch/ When interrupted from sleep, pending timeouts must be unregistered.  
/kernel/trunk/generic/src/synch/waitq.c
1591 6613 d 20 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 6613 d 23 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 6614 d 0 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 6614 d 1 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 6614 d 4 h jermar /kernel/trunk/generic/src/synch/ futex_cleanup() implementation.  
/kernel/trunk/generic/src/synch/futex.c
1585 6614 d 4 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 6614 d 7 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 6614 d 7 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 6614 d 10 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 6614 d 10 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 6614 d 20 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 6614 d 22 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 6615 d 1 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 6615 d 1 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 6615 d 2 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 6615 d 20 h jermar /kernel/trunk/generic/src/mm/ Improve comment in slab.c.  
/kernel/trunk/generic/src/mm/slab.c
1550 6616 d 2 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 6616 d 3 h vana /kernel/trunk/generic/src/adt/ Bitmap functions patch  
/kernel/trunk/generic/src/adt/bitmap.c
1546 6616 d 3 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 6616 d 4 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 6616 d 4 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 6616 d 10 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 6617 d 4 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 6617 d 6 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 6617 d 17 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 6617 d 18 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
1483 6618 d 4 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 6618 d 20 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 6619 d 2 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 6619 d 2 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 6619 d 4 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 6619 d 5 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 6619 d 20 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 6619 d 20 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 6621 d 1 h palkovsky /kernel/trunk/generic/src/syscall/ Better SYS_IO  
/kernel/trunk/generic/src/syscall/syscall.c
1438 6621 d 20 h palkovsky /kernel/trunk/generic/ Correct realtime clock communication.  
/kernel/trunk/generic/include/print.h
/kernel/trunk/generic/src/time/clock.c
1437 6621 d 21 h jermar /kernel/trunk/generic/src/mm/ Fix used_space_insert() to correctly service an empty used_space B+tree.  
/kernel/trunk/generic/src/mm/as.c
1436 6621 d 22 h jermar /kernel/trunk/generic/src/mm/ Fight TLB inconsistency by proper placing of tlb_shootdown_start() and tlb_shootdown_finalize() in as.c.  
/kernel/trunk/generic/src/mm/as.c