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
1595 6690 d 6 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 6690 d 13 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 6690 d 14 h jermar /kernel/trunk/generic/src/synch/ When interrupted from sleep, pending timeouts must be unregistered.  
/kernel/trunk/generic/src/synch/waitq.c
1591 6690 d 15 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 6690 d 19 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 6690 d 19 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 6690 d 20 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 6690 d 23 h jermar /kernel/trunk/generic/src/synch/ futex_cleanup() implementation.  
/kernel/trunk/generic/src/synch/futex.c
1585 6691 d 0 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 6691 d 3 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 6691 d 3 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 6691 d 5 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 6691 d 6 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 6691 d 16 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 6691 d 18 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 6691 d 20 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 6691 d 20 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
1570 6691 d 21 h vana /kernel/trunk/arch/ia64/src/ski/ Ia64 keyboard extension  
/kernel/trunk/arch/ia64/src/ski/ski.c
1568 6691 d 22 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 6692 d 16 h jermar /kernel/trunk/generic/src/mm/ Improve comment in slab.c.  
/kernel/trunk/generic/src/mm/slab.c
1550 6692 d 22 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 6692 d 23 h vana /kernel/trunk/generic/src/adt/ Bitmap functions patch  
/kernel/trunk/generic/src/adt/bitmap.c
1548 6692 d 23 h vana /kernel/trunk/arch/ia64/src/ From/to kernel console switching on ia64  
/kernel/trunk/arch/ia64/src/ia64.c
1546 6692 d 23 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 6692 d 23 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 6693 d 0 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
1543 6693 d 3 h palkovsky /kernel/trunk/doc/ Note about mips bug making tetris to fail.  
/kernel/trunk/doc/BUGS_FOUND
1541 6693 d 5 h jermar /kernel/trunk/ Modify ia64 to load 6 userspace tasks.
Tetris however makes the kernel fault on unaligned memory access in copy_from_uspace.
 
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/contrib/conf/ski.conf
1540 6693 d 5 h jermar /kernel/trunk/arch/ia32/src/smp/ Fix programming of local APIC timer to interrupt the processor
in the proper relation to HZ. (Was hardcoded to be each 1ms,
but should have been each 10ms).
 
/kernel/trunk/arch/ia32/src/smp/apic.c
1539 6693 d 6 h cejka /kernel/trunk/generic/src/mm/ Fixed warning about unused variable in non-debug mode.  
/kernel/trunk/generic/src/mm/backend_phys.c
1537 6693 d 13 h palkovsky /kernel/trunk/ Added tetris to  
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/contrib/conf/gxemul.sh
/kernel/trunk/contrib/conf/msim.conf
1527 6693 d 19 h jermar /kernel/trunk/contrib/conf/ Enable loading of kbd userspace driver in Ski sample configuration file.  
/kernel/trunk/contrib/conf/ski.conf
1511 6693 d 23 h palkovsky /kernel/trunk/arch/ Remove __address from include file included by uspace  
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/ppc64/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/as.h
1507 6694 d 0 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 6694 d 1 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
1496 6694 d 13 h jermar /kernel/trunk/contrib/conf/ ski.conf for 4 ELF images.
kbd is commented out.
 
/kernel/trunk/contrib/conf/ski.conf
1495 6694 d 13 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 6694 d 13 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
1491 6694 d 15 h palkovsky /kernel/trunk/contrib/conf/ Msim configuration to load necessary modules to make it 'work' again.  
/kernel/trunk/contrib/conf/msim.conf
1488 6694 d 20 h vana /kernel/trunk/arch/ia64/include/ Lost file  
/kernel/trunk/arch/ia64/include/asm.h