]> andersk Git - moira.git/commitdiff
Initial revision
authorwesommer <wesommer>
Sun, 21 Jun 1987 16:42:40 +0000 (16:42 +0000)
committerwesommer <wesommer>
Sun, 21 Jun 1987 16:42:40 +0000 (16:42 +0000)
server/mr_sbrk.c [new file with mode: 0644]

diff --git a/server/mr_sbrk.c b/server/mr_sbrk.c
new file mode 100644 (file)
index 0000000..2232089
--- /dev/null
@@ -0,0 +1,60 @@
+/*
+ *     $Source$
+ *     $Author$
+ *     $Header$
+ *
+ *     Copyright (C) 1987 by the Massachusetts Institute of Technology
+ *
+ *     $Log$
+ *     Revision 1.1  1987-06-21 16:42:40  wesommer
+ *     Initial revision
+ *
+ */
+
+#ifndef lint
+static char *rcsid_sms_sbrk_c = "$Header$";
+#endif lint
+
+/*
+ * The following routine is a kludge around a deficiency in the Ingres
+ * memory allocator; it likes to call sbrk(0) a lot to check on the
+ * amount of memory allocated.
+ */
+#include <sys/types.h>
+
+#ifdef vax
+extern char end;
+asm("  .data");
+asm("          .globl  curbrk");
+asm("  .globl  minbrk");
+asm("_curbrk:");
+asm("curbrk:   .long   _end");
+asm("_minbrk:");
+asm("minbrk:   .long   _end");
+    
+extern caddr_t curbrk;
+extern caddr_t minbrk;
+
+caddr_t sbrk(incr)
+       register int incr;
+{
+       register caddr_t oldbrk = curbrk;
+       if (incr) {
+               if (brk(oldbrk + incr) < 0)
+                       return (caddr_t)-1;
+               curbrk += incr;
+       }       
+       return oldbrk;
+}
+#endif vax
+
+/*
+ * Local Variables:
+ * mode: c
+ * c-indent-level: 4
+ * c-continued-statement-offset: 4
+ * c-brace-offset: -4
+ * c-argdecl-indent: 4
+ * c-label-offset: -4
+ * End:
+ */
This page took 0.04525 seconds and 5 git commands to generate.