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 */
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to