PERFORCE change 165892 for review

Attilio Rao attilio at FreeBSD.org
Fri Jul 10 01:36:45 UTC 2009


http://perforce.freebsd.org/chv.cgi?CH=165892

Change 165892 by attilio at attilio_valgrind on 2009/07/10 01:35:51

	- Move the signal handling from the MD includes to the MI
	  part.
	- Move the ucontext handling from the MD includes to the MI part.
	
	Sponsored by:	Sandvine Incorporated

Affected files ...

.. //depot/projects/valgrind/include/vki/vki-amd64-freebsd.h#8 edit
.. //depot/projects/valgrind/include/vki/vki-freebsd.h#14 edit
.. //depot/projects/valgrind/include/vki/vki-x86-freebsd.h#6 edit

Differences ...

==== //depot/projects/valgrind/include/vki/vki-amd64-freebsd.h#8 (text+ko) ====

@@ -26,99 +26,22 @@
 #ifndef __VKI_AMD64_FREEBSD_H
 #define __VKI_AMD64_FREEBSD_H
 
-#define VKI_LITTLE_ENDIAN  1
-
 /* PAGE_SHIFT determines the page size. */
 #define VKI_PAGE_SHIFT	12
 #define VKI_PAGE_SIZE	(1UL << VKI_PAGE_SHIFT)
 #define VKI_MAX_PAGE_SHIFT      VKI_PAGE_SHIFT
 #define VKI_MAX_PAGE_SIZE       VKI_PAGE_SIZE
 
-#define VKI_MINSIGSTKSZ	2048
-
-#define VKI_SIG_BLOCK          1	/* for blocking signals */
-#define VKI_SIG_UNBLOCK        2	/* for unblocking signals */
-#define VKI_SIG_SETMASK        3	/* for setting the signal mask */
-
-/* Type of a signal handler.  */
-typedef void __vki_signalfn_t(int);
-typedef __vki_signalfn_t *__vki_sighandler_t;
+#define	VKI_MINSIGSTKSZ	2048
 
-#define VKI_SIG_DFL	((__vki_sighandler_t)0)	/* default signal handling */
-#define VKI_SIG_IGN	((__vki_sighandler_t)1)	/* ignore signal */
-
 #define _VKI_NSIG	128
 #define _VKI_NSIG_BPW	64
 #define _VKI_NSIG_WORDS	(_VKI_NSIG / _VKI_NSIG_BPW)
 
-/* Beware, not longword aligned in struct sigaction */
 typedef struct {
-	vki_uint64_t sig[_VKI_NSIG_WORDS];
+	vki_uint64_t	sig[_VKI_NSIG_WORDS];
 } vki_sigset_t;
 
-#define VKI_SIGHUP		 1
-#define VKI_SIGINT		 2
-#define VKI_SIGQUIT		 3
-#define VKI_SIGILL		 4
-#define VKI_SIGTRAP		 5
-#define VKI_SIGABRT		 6
-#define VKI_SIGEMT		 7
-#define VKI_SIGFPE		 8
-#define VKI_SIGKILL		 9
-#define VKI_SIGBUS		10
-#define VKI_SIGSEGV		11
-#define VKI_SIGSYS		12
-#define VKI_SIGPIPE		13
-#define VKI_SIGALRM		14
-#define VKI_SIGTERM		15
-#define VKI_SIGURG		16
-#define VKI_SIGSTOP		17
-#define VKI_SIGTSTP		18
-#define VKI_SIGCONT		19
-#define VKI_SIGCHLD		20
-#define VKI_SIGTTIN		21
-#define VKI_SIGTTOU		22
-#define VKI_SIGIO		23
-#define VKI_SIGXCPU		24
-#define VKI_SIGXFSZ		25
-#define VKI_SIGVTALRM		26
-#define VKI_SIGPROF		27
-#define VKI_SIGWINCH		28
-#define VKI_SIGINFO		29
-#define VKI_SIGUSR1		30
-#define VKI_SIGUSR2		31
-#define	VKI_SIGTHR		32
-
-#define VKI_SIGRTMIN	65
-#define VKI_SIGRTMAX	126
-
-#define VKI_SA_ONSTACK		0x0001
-#define VKI_SA_RESTART		0x0002
-#define VKI_SA_RESETHAND	0x0004
-#define VKI_SA_NOCLDSTOP	0x0008
-#define VKI_SA_NODEFER		0x0010
-#define VKI_SA_NOCLDWAIT	0x0020
-#define VKI_SA_SIGINFO		0x0040
-
-#define VKI_SS_ONSTACK	0x0001
-#define VKI_SS_DISABLE	0x0004
-
-#define VKI_SA_ONESHOT          VKI_SA_RESETHAND
-#define VKI_SA_NOMASK		VKI_SA_NODEFER
-
-struct vki_sigaction {
-	__vki_sighandler_t ksa_handler;
-	unsigned int sa_flags;
-	vki_sigset_t sa_mask __attribute__((__packed__));
-	unsigned int __sa_pad;
-};
-
-typedef struct vki_sigaltstack {
-	void *ss_sp;
-	vki_size_t ss_size;
-	int ss_flags;
-} vki_stack_t;
-
 struct _vki_fpstate {
 	unsigned short 	cwd;
 	unsigned short	swd;
@@ -247,14 +170,4 @@
 #define VKI_FPOWNED_FPU		0x20001
 #define VKI_FPOWNED_PCB		0x20002
 
-struct vki_ucontext {
-	vki_sigset_t		uc_sigmask;
-	struct vki_mcontext	uc_mcontext;
-	struct vki_ucontext	*uc_link;
-	vki_stack_t		uc_stack;
-	int			uc_flags;
-#define	VKI_UCF_SWAPPED	1
-	unsigned int		__spare__[4];
-};
-
 #endif /* __VKI_AMD64_FREEBSD_H */

==== //depot/projects/valgrind/include/vki/vki-freebsd.h#14 (text+ko) ====

@@ -377,6 +377,79 @@
 // From sys/signal.h
 //----------------------------------------------------------------------
 
+#define	VKI_SIG_BLOCK	1	/*  block specified signal set */
+#define	VKI_SIG_UNBLOCK	2	/*  unblock specified signal set */
+#define	VKI_SIG_SETMASK	3	/*  set specified signal set */
+
+#define	VKI_SIG_DFL	((__vki_sighandler_t)0)
+#define	VKI_SIG_IGN	((__vki_sighandler_t)1)
+#define	VKI_SIG_ERR	((__vki_sighandler_t)-1)
+
+typedef void __vki_signalfn_t(int);
+typedef __vki_signalfn_t *__vki_sighandler_t;
+
+#define	VKI_SIGHUP		1
+#define	VKI_SIGINT		2
+#define	VKI_SIGQUIT		3
+#define	VKI_SIGILL		4
+#define	VKI_SIGTRAP		5
+#define	VKI_SIGABRT		6
+#define	VKI_SIGEMT		7
+#define	VKI_SIGFPE		8
+#define	VKI_SIGKILL		9
+#define	VKI_SIGBUS		10
+#define	VKI_SIGSEGV		11
+#define	VKI_SIGSYS		12
+#define	VKI_SIGPIPE		13
+#define	VKI_SIGALRM		14
+#define	VKI_SIGTERM		15
+#define	VKI_SIGURG		16
+#define	VKI_SIGSTOP		17
+#define	VKI_SIGTSTP		18
+#define	VKI_SIGCONT		19
+#define	VKI_SIGCHLD		20
+#define	VKI_SIGTTIN		21
+#define	VKI_SIGTTOU		22
+#define	VKI_SIGIO		23
+#define	VKI_SIGXCPU		24
+#define	VKI_SIGXFSZ		25
+#define	VKI_SIGVTALRM		26
+#define	VKI_SIGPROF		27
+#define	VKI_SIGWINCH		28
+#define	VKI_SIGINFO		29
+#define	VKI_SIGUSR1		30
+#define	VKI_SIGUSR2		31
+#define	VKI_SIGTHR		32
+
+#define	VKI_SIGRTMIN		65
+#define	VKI_SIGRTMAX		126
+
+#define	VKI_SA_ONSTACK		0x0001
+#define	VKI_SA_RESTART		0x0002
+#define	VKI_SA_RESETHAND	0x0004
+#define	VKI_SA_NOCLDSTOP	0x0008
+#define	VKI_SA_NODEFER		0x0010
+#define	VKI_SA_NOCLDWAIT	0x0020
+#define	VKI_SA_SIGINFO		0x0040
+
+#define	VKI_SS_ONSTACK		0x0001
+#define	VKI_SS_DISABLE		0x0004
+
+#define	VKI_SA_ONESHOT		VKI_SA_RESETHAND
+#define	VKI_SA_NOMASK		VKI_SA_NODEFER
+
+struct vki_sigaction {
+	__vki_sighandler_t ksa_handler;
+	int		sa_flags;
+	vki_sigset_t	sa_mask;
+};
+
+typedef struct vki_sigaltstack {
+	void		*ss_sp;
+	vki_size_t	ss_size;
+	int		ss_flags;
+} vki_stack_t;
+
 typedef union vki_sigval {
 	int sival_int;
 	void *sival_ptr;
@@ -1130,6 +1203,20 @@
 	long	mq_curmsgs;	/* number of messages currently queued	*/
 };
 
+//----------------------------------------------------------------------
+// From sys/ucontext.h
+//----------------------------------------------------------------------
+
+#define	VKI_UCF_SWAPPED	1
+
+struct vki_ucontext {
+	vki_sigset_t		uc_sigmask;
+	struct vki_mcontext	uc_mcontext;
+	struct vki_ucontext	*uc_link;
+	vki_stack_t		uc_stack;
+	int			uc_flags;
+	unsigned int		__spare__[4];
+};
 
 //----------------------------------------------------------------------
 // From sys/utsname.h

==== //depot/projects/valgrind/include/vki/vki-x86-freebsd.h#6 (text+ko) ====

@@ -31,10 +31,6 @@
 #ifndef __VKI_X86_LINUX_H
 #define __VKI_X86_LINUX_H
 
-// x86 is little-endian.
-#define VKI_LITTLE_ENDIAN  1
-
-
 //----------------------------------------------------------------------
 // From somewhere
 //----------------------------------------------------------------------
@@ -49,89 +45,16 @@
 // From sys/signal.h
 //----------------------------------------------------------------------
 
-#define VKI_MINSIGSTKSZ	2048
+#define	VKI_MINSIGSTKSZ	2048
 
-#define VKI_SIG_BLOCK          1	/* for blocking signals */
-#define VKI_SIG_UNBLOCK        2	/* for unblocking signals */
-#define VKI_SIG_SETMASK        3	/* for setting the signal mask */
-
-/* Type of a signal handler.  */
-typedef void __vki_signalfn_t(int);
-typedef __vki_signalfn_t *__vki_sighandler_t;
-
-#define VKI_SIG_DFL	((__vki_sighandler_t)0)	/* default signal handling */
-#define VKI_SIG_IGN	((__vki_sighandler_t)1)	/* ignore signal */
-
 #define _VKI_NSIG	128
 #define _VKI_NSIG_BPW	32
 #define _VKI_NSIG_WORDS	(_VKI_NSIG / _VKI_NSIG_BPW)
 
 typedef struct {
-	vki_uint32_t sig[_VKI_NSIG_WORDS];
+	vki_uint32_t	sig[_VKI_NSIG_WORDS];
 } vki_sigset_t;
 
-#define VKI_SIGHUP		 1
-#define VKI_SIGINT		 2
-#define VKI_SIGQUIT		 3
-#define VKI_SIGILL		 4
-#define VKI_SIGTRAP		 5
-#define VKI_SIGABRT		 6
-#define VKI_SIGEMT		 7
-#define VKI_SIGFPE		 8
-#define VKI_SIGKILL		 9
-#define VKI_SIGBUS		10
-#define VKI_SIGSEGV		11
-#define VKI_SIGSYS		12
-#define VKI_SIGPIPE		13
-#define VKI_SIGALRM		14
-#define VKI_SIGTERM		15
-#define VKI_SIGURG		16
-#define VKI_SIGSTOP		17
-#define VKI_SIGTSTP		18
-#define VKI_SIGCONT		19
-#define VKI_SIGCHLD		20
-#define VKI_SIGTTIN		21
-#define VKI_SIGTTOU		22
-#define VKI_SIGIO		23
-#define VKI_SIGXCPU		24
-#define VKI_SIGXFSZ		25
-#define VKI_SIGVTALRM		26
-#define VKI_SIGPROF		27
-#define VKI_SIGWINCH		28
-#define VKI_SIGINFO		29
-#define VKI_SIGUSR1		30
-#define VKI_SIGUSR2		31
-#define	VKI_SIGTHR		32
-
-#define VKI_SIGRTMIN	65
-#define VKI_SIGRTMAX	126
-
-#define VKI_SA_ONSTACK		0x0001
-#define VKI_SA_RESTART		0x0002
-#define VKI_SA_RESETHAND	0x0004
-#define VKI_SA_NOCLDSTOP	0x0008
-#define VKI_SA_NODEFER		0x0010
-#define VKI_SA_NOCLDWAIT	0x0020
-#define VKI_SA_SIGINFO		0x0040
-
-#define VKI_SS_ONSTACK	0x0001
-#define VKI_SS_DISABLE	0x0004
-
-#define VKI_SA_ONESHOT          VKI_SA_RESETHAND
-#define VKI_SA_NOMASK		VKI_SA_NODEFER
-
-struct vki_sigaction {
-	__vki_sighandler_t ksa_handler;
-	unsigned int sa_flags;
-	vki_sigset_t sa_mask;		/* mask last for extensibility */
-};
-
-typedef struct vki_sigaltstack {
-	void *ss_sp;
-	vki_size_t ss_size;
-	int ss_flags;
-} vki_stack_t;
-
 //----------------------------------------------------------------------
 // From linux-2.6.8.1/include/asm-i386/sigcontext.h
 //----------------------------------------------------------------------
@@ -354,24 +277,6 @@
 	int	spare[17];
 };
 
-struct vki_ucontext6 {
-	vki_sigset_t		uc_sigmask;
-	struct vki_mcontext6	uc_mcontext;
-	struct vki_ucontext6    *uc_link;
-	vki_stack_t		uc_stack;
-	int			uc_flags;
-#define	VKI_UCF_SWAPPED	1
-	unsigned int		__spare__[4];
-};
-
-struct vki_ucontext {
-	vki_sigset_t		uc_sigmask;
-	struct vki_mcontext	uc_mcontext;
-	struct vki_ucontext    *uc_link;
-	vki_stack_t		uc_stack;
-	unsigned int		__spare__[8];
-};
-
 #if 0
 
 //----------------------------------------------------------------------


More information about the p4-projects mailing list