svn commit: r207152 - in head/sys: amd64/include arm/include i386/include ia64/include kern mips/include powerpc/include sparc64/include sun4v/include sys

Konstantin Belousov kib at FreeBSD.org
Sat Apr 24 12:49:53 UTC 2010


Author: kib
Date: Sat Apr 24 12:49:52 2010
New Revision: 207152
URL: http://svn.freebsd.org/changeset/base/207152

Log:
  Move the constants specifying the size of struct kinfo_proc into
  machine-specific header files. Add KINFO_PROC32_SIZE for struct
  kinfo_proc32 for architectures providing COMPAT_FREEBSD32. Add
  CTASSERT for the size of struct kinfo_proc32.
  
  Submitted by:	pluknet
  Reviewed by:	imp, jhb, nwhitehorn
  MFC after:	2 weeks

Modified:
  head/sys/amd64/include/proc.h
  head/sys/arm/include/proc.h
  head/sys/i386/include/proc.h
  head/sys/ia64/include/proc.h
  head/sys/kern/kern_proc.c
  head/sys/mips/include/proc.h
  head/sys/powerpc/include/proc.h
  head/sys/sparc64/include/proc.h
  head/sys/sun4v/include/proc.h
  head/sys/sys/user.h

Modified: head/sys/amd64/include/proc.h
==============================================================================
--- head/sys/amd64/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/amd64/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -53,6 +53,9 @@ struct mdproc {
 	struct system_segment_descriptor md_ldt_sd;
 };
 
+#define KINFO_PROC_SIZE 1088
+#define KINFO_PROC32_SIZE 768
+
 #ifdef	_KERNEL
 
 /* Get the current kernel thread stack usage. */

Modified: head/sys/arm/include/proc.h
==============================================================================
--- head/sys/arm/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/arm/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -60,4 +60,6 @@ struct mdproc {
 	void	*md_sigtramp;
 };
 
+#define KINFO_PROC_SIZE 792
+
 #endif /* !_MACHINE_PROC_H_ */

Modified: head/sys/i386/include/proc.h
==============================================================================
--- head/sys/i386/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/i386/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -57,6 +57,8 @@ struct mdproc {
 	struct proc_ldt *md_ldt;	/* (t) per-process ldt */
 };
 
+#define KINFO_PROC_SIZE 768
+
 #ifdef	_KERNEL
 
 /* Get the current kernel thread stack usage. */

Modified: head/sys/ia64/include/proc.h
==============================================================================
--- head/sys/ia64/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/ia64/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -38,4 +38,7 @@ struct mdproc {
 	int		__dummy;	/* Avoid having an empty struct. */
 };
 
+#define KINFO_PROC_SIZE 1088
+#define KINFO_PROC32_SIZE 768
+
 #endif /* !_MACHINE_PROC_H_ */

Modified: head/sys/kern/kern_proc.c
==============================================================================
--- head/sys/kern/kern_proc.c	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/kern/kern_proc.c	Sat Apr 24 12:49:52 2010	(r207152)
@@ -151,6 +151,9 @@ int kstack_pages = KSTACK_PAGES;
 SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RD, &kstack_pages, 0, "");
 
 CTASSERT(sizeof(struct kinfo_proc) == KINFO_PROC_SIZE);
+#ifdef COMPAT_FREEBSD32
+CTASSERT(sizeof(struct kinfo_proc32) == KINFO_PROC32_SIZE);
+#endif
 
 /*
  * Initialize global process hashing structures.

Modified: head/sys/mips/include/proc.h
==============================================================================
--- head/sys/mips/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/mips/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -68,4 +68,10 @@ struct thread;
 void	mips_cpu_switch(struct thread *, struct thread *, struct mtx *);
 void	mips_cpu_throw(struct thread *, struct thread *);
 
+#ifdef __mips_n64
+#define KINFO_PROC_SIZE 1088
+#else
+#define KINFO_PROC_SIZE 816
+#endif
+
 #endif	/* !_MACHINE_PROC_H_ */

Modified: head/sys/powerpc/include/proc.h
==============================================================================
--- head/sys/powerpc/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/powerpc/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -46,4 +46,6 @@ struct mdthread {
 struct mdproc {
 };
 
+#define KINFO_PROC_SIZE 768
+
 #endif /* !_MACHINE_PROC_H_ */

Modified: head/sys/sparc64/include/proc.h
==============================================================================
--- head/sys/sparc64/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/sparc64/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -51,4 +51,6 @@ struct mdproc {
 	void	*md_sigtramp;
 };
 
+#define KINFO_PROC_SIZE 1088
+
 #endif /* !_MACHINE_PROC_H_ */

Modified: head/sys/sun4v/include/proc.h
==============================================================================
--- head/sys/sun4v/include/proc.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/sun4v/include/proc.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -51,4 +51,6 @@ struct mdproc {
 	void	*md_sigtramp;
 };
 
+#define KINFO_PROC_SIZE 1088
+
 #endif /* !_MACHINE_PROC_H_ */

Modified: head/sys/sys/user.h
==============================================================================
--- head/sys/sys/user.h	Sat Apr 24 12:11:41 2010	(r207151)
+++ head/sys/sys/user.h	Sat Apr 24 12:49:52 2010	(r207152)
@@ -87,34 +87,11 @@
 #define	KI_NSPARE_LONG	12
 #define	KI_NSPARE_PTR	7
 
-#ifdef __amd64__
-#define	KINFO_PROC_SIZE	1088
-#endif
-#ifdef __arm__
-#define	KINFO_PROC_SIZE	792
-#endif
-#ifdef __ia64__
-#define	KINFO_PROC_SIZE 1088
-#endif
-#ifdef __i386__
-#define	KINFO_PROC_SIZE	768
-#endif
-#ifdef __mips__
-#ifdef __mips_n64
-#define	KINFO_PROC_SIZE	1088
-#else
-#define	KINFO_PROC_SIZE	816
-#endif
-#endif
-#ifdef __powerpc__
-#define	KINFO_PROC_SIZE	768
-#endif
-#ifdef __sparc64__
-#define	KINFO_PROC_SIZE 1088
-#endif
+#ifndef _KERNEL
 #ifndef KINFO_PROC_SIZE
 #error "Unknown architecture"
 #endif
+#endif /* !_KERNEL */
 
 #define	WMESGLEN	8		/* size of returned wchan message */
 #define	LOCKNAMELEN	8		/* size of returned lock name */


More information about the svn-src-all mailing list