BSD 4_3_Net_2 release
[unix-history] / usr / src / sys / sys / malloc.h
index 9e21222..08e7be4 100644 (file)
@@ -2,11 +2,40 @@
  * Copyright (c) 1987 Regents of the University of California.
  * All rights reserved.
  *
  * Copyright (c) 1987 Regents of the University of California.
  * All rights reserved.
  *
- * %sccs.include.redist.c%
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *     This product includes software developed by the University of
+ *     California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
  *
  *
- *     @(#)malloc.h    7.21 (Berkeley) %G%
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *     @(#)malloc.h    7.25 (Berkeley) 5/15/91
  */
 
  */
 
+#ifndef _MALLOC_H_
+#define        _MALLOC_H_
+
 #define KMEMSTATS
 
 /*
 #define KMEMSTATS
 
 /*
 #define        M_VMPAGER       36      /* XXX: VM pager struct */
 #define        M_VMPGDATA      37      /* XXX: VM pager private data */
 #define        M_FILE          38      /* Open file structure */
 #define        M_VMPAGER       36      /* XXX: VM pager struct */
 #define        M_VMPGDATA      37      /* XXX: VM pager private data */
 #define        M_FILE          38      /* Open file structure */
-#define        M_LOCKF         39      /* Byte-range locking structures */
+#define        M_FILEDESC      39      /* Open file descriptor table */
+#define        M_LOCKF         40      /* Byte-range locking structures */
+#define        M_PROC          41      /* Proc structures */
+#define        M_SUBPROC       42      /* Proc sub-structures */
 #define        M_TEMP          49      /* misc temporary data buffers */
 #define        M_LAST          50
 
 #define        M_TEMP          49      /* misc temporary data buffers */
 #define        M_LAST          50
 
        "VM pvmap",     /* 35 M_VMPVENT */ \
        "VM pager",     /* 36 M_VMPAGER */ \
        "VM pgdata",    /* 37 M_VMPGDATA */ \
        "VM pvmap",     /* 35 M_VMPVENT */ \
        "VM pager",     /* 36 M_VMPAGER */ \
        "VM pgdata",    /* 37 M_VMPGDATA */ \
-       "open files",   /* 38 M_FILE */ \
-       "lockf",        /* 39 M_LOCKF */ \
-       0, 0, 0, 0, \
-       0, 0, 0, 0, 0, \
+       "file",         /* 38 M_FILE */ \
+       "file desc",    /* 39 M_FILEDESC */ \
+       "lockf",        /* 40 M_LOCKF */ \
+       "proc",         /* 41 M_PROC */ \
+       "subproc",      /* 42 M_PROC */ \
+       0, 0, 0, 0, 0, 0, \
        "temp",         /* 49 M_TEMP */ \
 }
 
        "temp",         /* 49 M_TEMP */ \
 }
 
@@ -225,6 +259,7 @@ extern struct kmemstats kmemstats[];
 extern struct kmemusage *kmemusage;
 extern char *kmembase;
 extern struct kmembuckets bucket[];
 extern struct kmemusage *kmemusage;
 extern char *kmembase;
 extern struct kmembuckets bucket[];
-extern qaddr_t malloc();
-extern void free();
+extern void *malloc __P((unsigned long size, int type, int flags));
+extern void free __P((void *addr, int type));
 #endif /* KERNEL */
 #endif /* KERNEL */
+#endif /* !_MALLOC_H_ */