Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
3026 |
5977 d 23 h |
svoboda |
/branches/tracing/kernel/generic/ |
Convert THREAD->udebug.lock to mutex. Protect against udebug_before_thread_runs() called from interrupt handler. Pending locking scheme change (multithreaded tasks may hang) |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
3018 |
5979 d 20 h |
svoboda |
/branches/tracing/ |
Isolate udebug-related thread_t fields into udebug_thread_t |
|
/branches/tracing/kernel/generic/include/proc/thread.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/interrupt/interrupt.c /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/syscall/syscall.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c /branches/tracing/uspace/app/debug/main.c /branches/tracing/uspace/app/tester/Makefile
|
3016 |
5980 d 1 h |
svoboda |
/branches/tracing/kernel/generic/ |
Synchronize debug ops on a task with a mutex instead of task->lock spinlock. |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
3015 |
5980 d 2 h |
svoboda |
/branches/tracing/kernel/generic/ |
Call udebug_stoppable_begin() after scheduling, rather than before - avoid restricted contex. |
|
/branches/tracing/kernel/generic/include/proc/thread.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/time/clock.c /branches/tracing/kernel/generic/src/udebug/udebug.c
|
3014 |
5980 d 4 h |
svoboda |
/branches/tracing/kernel/generic/ |
Isolate udebug-related task_t fields into udebug_task_t. |
|
/branches/tracing/kernel/generic/include/proc/task.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/ipc/ipc.c /branches/tracing/kernel/generic/src/proc/task.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
3013 |
5980 d 4 h |
svoboda |
/branches/tracing/kernel/generic/ |
Bypass area write-protection for udebug memory writes. |
|
/branches/tracing/kernel/generic/include/mm/as.h /branches/tracing/kernel/generic/src/mm/as.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
3011 |
5981 d 16 h |
svoboda |
/branches/tracing/ |
Merged latest trunk changes to tracing |
|
/branches/tracing/kernel/generic/src/ipc/sysipc.c /branches/tracing/kernel/generic/src/lib/elf.c /branches/tracing/kernel/generic/src/mm/backend_elf.c /branches/tracing/uspace/app/tester/vfs/vfs1.c /branches/tracing/uspace/lib/libc/arch/amd64/_link.ld.in /branches/tracing/uspace/lib/libc/arch/arm32/_link.ld.in /branches/tracing/uspace/lib/libc/arch/ia32/_link.ld.in /branches/tracing/uspace/lib/libc/arch/ia64/_link.ld.in /branches/tracing/uspace/lib/libc/arch/mips32/_link.ld.in /branches/tracing/uspace/lib/libc/arch/ppc32/_link.ld.in /branches/tracing/uspace/lib/libc/arch/ppc64/_link.ld.in /branches/tracing/uspace/lib/libc/arch/sparc64/_link.ld.in /branches/tracing/uspace/lib/libfs/libfs.c /branches/tracing/uspace/srv/fs/fat/fat.h /branches/tracing/uspace/srv/fs/fat/fat_idx.c /branches/tracing/uspace/srv/fs/fat/fat_ops.c /branches/tracing/uspace/srv/fs/tmpfs/tmpfs.c /branches/tracing/uspace/srv/fs/tmpfs/tmpfs.h /branches/tracing/uspace/srv/fs/tmpfs/tmpfs_ops.c /branches/tracing/uspace/srv/vfs/vfs_ops.c
|
2925 |
5993 d 4 h |
svoboda |
/branches/tracing/ |
Merged latest trunk changes to tracing branch |
|
/branches/tracing/uspace/lib/libc/arch/amd64/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/arm32/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/ia32/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/ia64/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/mips32/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/mips32eb/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/ppc32/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/ppc64/include/byteorder.h /branches/tracing/uspace/lib/libc/arch/sparc64/include/byteorder.h /branches/tracing/uspace/lib/libc/include/byteorder.h /branches/tracing/uspace/srv/fs/fat/fat_idx.c
/branches/tracing/tools/build /branches/tracing/uspace/lib/libc/arch/amd64/include/endian.h /branches/tracing/uspace/lib/libc/arch/arm32/include/endian.h /branches/tracing/uspace/lib/libc/arch/ia32/include/endian.h /branches/tracing/uspace/lib/libc/arch/ia64/include/endian.h /branches/tracing/uspace/lib/libc/arch/mips32/include/endian.h /branches/tracing/uspace/lib/libc/arch/mips32eb/include/endian.h /branches/tracing/uspace/lib/libc/arch/ppc32/include/endian.h /branches/tracing/uspace/lib/libc/arch/ppc64/include/context_offset.h /branches/tracing/uspace/lib/libc/arch/ppc64/include/endian.h /branches/tracing/uspace/lib/libc/arch/sparc64/include/context_offset.h /branches/tracing/uspace/lib/libc/arch/sparc64/include/endian.h /branches/tracing/uspace/lib/libc/include/endian.h
/branches/tracing/HelenOS.config /branches/tracing/boot/boot.config /branches/tracing/kernel/arch/amd64/include/byteorder.h /branches/tracing/kernel/arch/arm32/include/byteorder.h /branches/tracing/kernel/arch/ia32/include/byteorder.h /branches/tracing/kernel/arch/ia64/include/byteorder.h /branches/tracing/kernel/arch/mips32/include/byteorder.h /branches/tracing/kernel/arch/mips32/src/drivers/arc.c /branches/tracing/kernel/arch/ppc32/include/byteorder.h /branches/tracing/kernel/arch/ppc32/include/context_offset.h /branches/tracing/kernel/arch/ppc64/include/byteorder.h /branches/tracing/kernel/arch/ppc64/include/context_offset.h /branches/tracing/kernel/arch/ppc64/src/context.S /branches/tracing/kernel/arch/sparc64/include/byteorder.h /branches/tracing/kernel/arch/sparc64/include/context_offset.h /branches/tracing/kernel/arch/sparc64/src/context.S /branches/tracing/kernel/generic/include/byteorder.h /branches/tracing/kernel/generic/src/debug/symtab.c /branches/tracing/kernel/generic/src/lib/rd.c /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/synch/waitq.c /branches/tracing/kernel/generic/src/time/timeout.c /branches/tracing/kernel/kernel.config /branches/tracing/tools/config.py /branches/tracing/tools/cygwin_symlink_patch.sh /branches/tracing/uspace/app/tester/ipc/connect.c /branches/tracing/uspace/app/tester/ipc/send_async.c /branches/tracing/uspace/app/tester/ipc/send_sync.c /branches/tracing/uspace/app/tester/tester.c /branches/tracing/uspace/app/tester/vfs/vfs1.c /branches/tracing/uspace/lib/libc/arch/ppc64/src/fibril.S /branches/tracing/uspace/lib/libc/arch/sparc64/src/fibril.S /branches/tracing/uspace/lib/libc/generic/ipc.c /branches/tracing/uspace/lib/libc/include/libadt/list.h /branches/tracing/uspace/lib/libfs/libfs.c /branches/tracing/uspace/lib/libfs/libfs.h /branches/tracing/uspace/lib/softfloat/include/sftypes.h /branches/tracing/uspace/srv/fs/fat/Makefile /branches/tracing/uspace/srv/fs/fat/fat.h /branches/tracing/uspace/srv/fs/fat/fat_ops.c /branches/tracing/uspace/srv/fs/tmpfs/tmpfs_ops.c /branches/tracing/uspace/srv/vfs/vfs.h /branches/tracing/uspace/srv/vfs/vfs_ops.c /branches/tracing/uspace/uspace.config
|
2924 |
5993 d 18 h |
svoboda |
/branches/tracing/ |
Preliminary mips32 breakpoint support for udebug/debugger. (You must write-enable code segments for it to work, yet) |
|
/branches/tracing/uspace/app/debug/arch/mips32 /branches/tracing/uspace/app/debug/arch/mips32/Makefile.inc /branches/tracing/uspace/app/debug/arch/mips32/include /branches/tracing/uspace/app/debug/arch/mips32/include/types.h /branches/tracing/uspace/app/debug/arch/mips32/src /branches/tracing/uspace/app/debug/arch/mips32/src/mips32.c
/branches/tracing/uspace/app/debug/include/arch
/branches/tracing/kernel/arch/mips32/src/exception.c /branches/tracing/uspace/app/debug/Makefile /branches/tracing/uspace/app/debug/arch/ia32/src/ia32.c /branches/tracing/uspace/app/debug/main.c
|
2921 |
5995 d 4 h |
svoboda |
/branches/tracing/kernel/ |
Add TRAP debug event. Support on ia32/amd64. |
|
/branches/tracing/kernel/arch/amd64/src/debugger.c /branches/tracing/kernel/arch/ia32/include/cpu.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/udebug/udebug.c
|
2919 |
5995 d 5 h |
svoboda |
/branches/tracing/kernel/generic/ |
Simlify and fix REGS_READ and REGS_WRITE operations |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/include/udebug/udebug_ops.h /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
2918 |
5995 d 15 h |
svoboda |
/branches/tracing/ |
Add support for INT3 breakpoints on IA32 to kernel. UDEBUG_EVENT_BREAKPOINT |
|
/branches/tracing/kernel/arch/ia32/include/breakpoint.h /branches/tracing/kernel/arch/ia32/src/breakpoint.c
/branches/tracing/kernel/arch/ia32/Makefile.inc /branches/tracing/kernel/arch/ia32/include/interrupt.h /branches/tracing/kernel/arch/ia32/src/ia32.c /branches/tracing/kernel/arch/ia32/src/pm.c /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/uspace/app/debug/main.c
|
2917 |
5995 d 15 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Fix: Must drop missed wakeups when waiting for go |
|
/branches/tracing/kernel/generic/src/udebug/udebug.c
|
2913 |
5995 d 19 h |
svoboda |
/branches/tracing/kernel/generic/src/ |
Print less debugging messages to make things go faster |
|
/branches/tracing/kernel/generic/src/ipc/ipc.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
2908 |
5995 d 21 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Don't wait for another GO in THREAD_E event, terminate debugging of this thread instead |
|
/branches/tracing/kernel/generic/src/udebug/udebug.c
|
2903 |
5996 d 3 h |
svoboda |
/branches/tracing/ |
Rename event NEW_THREAD to THREAD_B. Add THREAD_E event - thread exit |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/uspace/app/sctrace/sctrace.c
|
2902 |
5996 d 4 h |
svoboda |
/branches/tracing/kernel/generic/ |
Implement proper kbox thread shutdown, with all bells and whistles. Use THREAD->debug_active in udebug_stoppable_xx() and friends |
|
/branches/tracing/kernel/generic/include/proc/task.h /branches/tracing/kernel/generic/include/proc/thread.h /branches/tracing/kernel/generic/src/ipc/ipc.c /branches/tracing/kernel/generic/src/proc/task.c /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c
|
2901 |
5996 d 16 h |
svoboda |
/branches/tracing/ |
Split SYSCALL event into SYSCALL_B and SYSCALL_E, the extra event allows seeing long-running syscalls immediately, as well as calls with invalid syscall id |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/syscall/syscall.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c /branches/tracing/uspace/app/sctrace/sctrace.c
|
2900 |
5996 d 16 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Remove superfluous malloc return value checks |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
2899 |
5996 d 16 h |
svoboda |
/branches/tracing/ |
Add support for SET_EVMASK debug operation |
|
/branches/tracing/kernel/generic/include/proc/task.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/include/udebug/udebug_ops.h /branches/tracing/kernel/generic/src/proc/task.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c /branches/tracing/uspace/app/sctrace/debug_api.c /branches/tracing/uspace/app/sctrace/debug_api.h /branches/tracing/uspace/app/sctrace/sctrace.c
|
2898 |
5996 d 18 h |
svoboda |
/branches/tracing/ |
Implement operation UDEBUG_M_STOP that stops a thread. Can be used for stopping program by hitting a key in debugger. Somewhat jittery demo in sctrace. Fix missing lock of THREAD->debug_lock in udebug_stoppable_end() |
|
/branches/tracing/kernel/generic/include/proc/thread.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/include/udebug/udebug_ops.h /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c /branches/tracing/uspace/app/sctrace/debug_api.c /branches/tracing/uspace/app/sctrace/debug_api.h /branches/tracing/uspace/app/sctrace/sctrace.c /branches/tracing/uspace/app/tester/debug/debug1.c
|
2897 |
5996 d 21 h |
svoboda |
/branches/tracing/kernel/generic/ |
Fix bad allocation with locks held in udebug_thread_read() |
|
/branches/tracing/kernel/generic/include/udebug/udebug_ops.h /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
2896 |
5996 d 21 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Handle malloc return values properly |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
|
2894 |
5996 d 22 h |
svoboda |
/branches/tracing/ |
Add missing copyright messages |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/include/udebug/udebug_ipc.h /branches/tracing/kernel/generic/include/udebug/udebug_ops.h /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ops.c /branches/tracing/uspace/app/sctrace/debug_api.c /branches/tracing/uspace/app/sctrace/debug_api.h /branches/tracing/uspace/app/sctrace/errors.c /branches/tracing/uspace/app/sctrace/errors.h /branches/tracing/uspace/app/sctrace/ipc_desc.c /branches/tracing/uspace/app/sctrace/ipc_desc.h /branches/tracing/uspace/app/sctrace/ipcp.c /branches/tracing/uspace/app/sctrace/ipcp.h /branches/tracing/uspace/app/sctrace/proto.c /branches/tracing/uspace/app/sctrace/proto.h /branches/tracing/uspace/app/sctrace/sctrace.c /branches/tracing/uspace/app/sctrace/syscalls.c /branches/tracing/uspace/app/sctrace/syscalls.h /branches/tracing/uspace/app/tester/debug/debug1.c /branches/tracing/uspace/lib/libc/include/udebug.h
|
2892 |
5998 d 4 h |
svoboda |
/branches/tracing/kernel/generic/src/ |
Fix retval for udebug_rp_mem_write() |
|
/branches/tracing/kernel/generic/src/ipc/sysipc.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2888 |
6003 d 1 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Verify that a task sending debug calls really is the callee's debugger |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2887 |
6003 d 1 h |
svoboda |
/branches/tracing/kernel/ |
Split executive parts of udebug_ipc.c to udebug_ops.c |
|
/branches/tracing/kernel/generic/include/udebug/udebug_ops.h /branches/tracing/kernel/generic/src/udebug/udebug_ops.c
/branches/tracing/kernel/Makefile /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2886 |
6003 d 3 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Move rest of debug method processing, that can be moved, to kbox thread |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2885 |
6003 d 4 h |
svoboda |
/branches/tracing/ |
Start moving debug method processing to kbox_thread. Start with BEGIN, END, THREAD_READ |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c /branches/tracing/uspace/app/sctrace/debug_api.c
|
2870 |
6005 d 15 h |
svoboda |
/branches/tracing/kernel/generic/ |
Terminate debugging session on debugger disconnect |
|
/branches/tracing/kernel/generic/include/proc/task.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/ipc/ipc.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2869 |
6005 d 16 h |
svoboda |
/branches/tracing/kernel/generic/src/time/ |
Make preempted threads stoppable, so CPU-bound threads can be stopped |
|
/branches/tracing/kernel/generic/src/time/clock.c
|
2867 |
6005 d 21 h |
svoboda |
/branches/tracing/ |
Signal hash of new thread with a UDEBUG_EVENT_NEW_THREAD message |
|
/branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/uspace/app/sctrace/sctrace.c /branches/tracing/uspace/app/tester/debug/debug1.c
|
2866 |
6006 d 2 h |
svoboda |
/branches/tracing/kernel/generic/ |
Verify that thread is waiting in syscall event when reading syscall args |
|
/branches/tracing/kernel/generic/include/proc/thread.h /branches/tracing/kernel/generic/include/udebug/udebug.h /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2865 |
6006 d 3 h |
svoboda |
/branches/tracing/kernel/generic/src/ |
Put proper udebug_stoppable_end() in uinit |
|
/branches/tracing/kernel/generic/src/main/uinit.c /branches/tracing/kernel/generic/src/proc/thread.c
|
2854 |
6024 d 4 h |
svoboda |
/branches/tracing/ |
Fix condition for generating debug events. Properly initialize threads created during debugging session |
|
/branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/uspace/app/sctrace/sctrace.c /branches/tracing/uspace/app/tester/debug/debug1.c
|
2851 |
6024 d 15 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Fix locking order in udebug_rp_end (to the somewhat unintuitive threads_lock => t->debug_lock => t->lock |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2849 |
6024 d 16 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Move code for verifying and locking down a thread for a debugging op to _thread_op_begin()/_thread_op_end(). Rewritten to prevent case of mistaken task identity |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2848 |
6025 d 1 h |
svoboda |
/branches/tracing/kernel/generic/ |
Use debug_lock in thread struct for finer locking, to avoid problems with waitq_wakeup |
|
/branches/tracing/kernel/generic/include/proc/thread.h /branches/tracing/kernel/generic/src/proc/thread.c /branches/tracing/kernel/generic/src/udebug/udebug.c /branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2842 |
6025 d 19 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Fix and document verify_thread() |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|
2841 |
6025 d 19 h |
svoboda |
/branches/tracing/kernel/generic/src/udebug/ |
Add verify_thread() to check that a thread is valid for debug ops |
|
/branches/tracing/kernel/generic/src/udebug/udebug_ipc.c
|