Subject: CVS commit: src/sys/compat
To: None <source-changes@NetBSD.org>
From: Emmanuel Dreyfus <manu@netbsd.org>
List: source-changes
Date: 12/24/2003 23:22:22
Module Name:	src
Committed By:	manu
Date:		Wed Dec 24 23:22:22 UTC 2003

Modified Files:
	src/sys/compat/darwin: darwin_ptrace.c darwin_signal.c
	src/sys/compat/mach: mach_exception.c mach_exception.h mach_exec.c
	    mach_exec.h mach_message.c mach_port.h mach_services.c
	    mach_services.h mach_services.master mach_services_names.c
	    mach_task.c mach_thread.c mach_thread.h

Log Message:
Rework Mach exception and Darwin's ptrace. gdb is now able to attach a
remote process. This new implementation also passes all the test programs
I've written so far.

- When exceptions come from traps, no UNIX signal should evet be sent.
- Add a lock to ensure a debugger handles only one exception at a time
- Use a structure to hold flavor and behavior in exception ports, instead
  of stuffing the two argument into an int.
- Implement new Mach services: thread_suspend, thread_resume and thread_abort
- Implement Darwin's ptrace PT_ATTACHEXC and PT_THUPDATE commands
- Handle NULL second argument correctly in sigprocmask.
- One mistake in the last commit (darwin_tracesig prototype)


To generate a diff of this commit:
cvs rdiff -r1.2 -r1.3 src/sys/compat/darwin/darwin_ptrace.c
cvs rdiff -r1.16 -r1.17 src/sys/compat/darwin/darwin_signal.c
cvs rdiff -r1.1 -r1.2 src/sys/compat/mach/mach_exception.c
cvs rdiff -r1.2 -r1.3 src/sys/compat/mach/mach_exception.h
cvs rdiff -r1.48 -r1.49 src/sys/compat/mach/mach_exec.c
cvs rdiff -r1.25 -r1.26 src/sys/compat/mach/mach_exec.h
cvs rdiff -r1.40 -r1.41 src/sys/compat/mach/mach_message.c
cvs rdiff -r1.32 -r1.33 src/sys/compat/mach/mach_port.h
cvs rdiff -r1.11 -r1.12 src/sys/compat/mach/mach_services.c \
    src/sys/compat/mach/mach_services.h
cvs rdiff -r1.8 -r1.9 src/sys/compat/mach/mach_services.master \
    src/sys/compat/mach/mach_services_names.c
cvs rdiff -r1.51 -r1.52 src/sys/compat/mach/mach_task.c
cvs rdiff -r1.31 -r1.32 src/sys/compat/mach/mach_thread.c
cvs rdiff -r1.14 -r1.15 src/sys/compat/mach/mach_thread.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.