aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-09-27 12:50:01 -0400
committerRuss Cox <rsc@golang.org>2010-09-27 12:50:01 -0400
commit929fdd860bec522d6fbb7e23cc64b2bf6e65a74b (patch)
tree5a7cc1dee9384f4ade3e5a4617669d6cbde24343
parent9b62461a8f6b1df33c1d71211edd7c9652ebf16a (diff)
downloadgo-929fdd860bec522d6fbb7e23cc64b2bf6e65a74b.tar.gz
go-929fdd860bec522d6fbb7e23cc64b2bf6e65a74b.zip
runtime: correct stats in SysFree
R=r CC=golang-dev https://golang.org/cl/2254047
-rw-r--r--src/pkg/runtime/darwin/mem.c1
-rw-r--r--src/pkg/runtime/freebsd/mem.c1
-rw-r--r--src/pkg/runtime/linux/mem.c1
-rw-r--r--src/pkg/runtime/nacl/mem.c1
4 files changed, 4 insertions, 0 deletions
diff --git a/src/pkg/runtime/darwin/mem.c b/src/pkg/runtime/darwin/mem.c
index f6fbe5016d..32bedd0950 100644
--- a/src/pkg/runtime/darwin/mem.c
+++ b/src/pkg/runtime/darwin/mem.c
@@ -21,6 +21,7 @@ SysUnused(void *v, uintptr n)
void
SysFree(void *v, uintptr n)
{
+ mstats.sys -= n;
runtime_munmap(v, n);
}
diff --git a/src/pkg/runtime/freebsd/mem.c b/src/pkg/runtime/freebsd/mem.c
index f6fbe5016d..32bedd0950 100644
--- a/src/pkg/runtime/freebsd/mem.c
+++ b/src/pkg/runtime/freebsd/mem.c
@@ -21,6 +21,7 @@ SysUnused(void *v, uintptr n)
void
SysFree(void *v, uintptr n)
{
+ mstats.sys -= n;
runtime_munmap(v, n);
}
diff --git a/src/pkg/runtime/linux/mem.c b/src/pkg/runtime/linux/mem.c
index ab47787f6c..bad67001c4 100644
--- a/src/pkg/runtime/linux/mem.c
+++ b/src/pkg/runtime/linux/mem.c
@@ -33,6 +33,7 @@ SysUnused(void *v, uintptr n)
void
SysFree(void *v, uintptr n)
{
+ mstats.sys -= n;
runtime_munmap(v, n);
}
diff --git a/src/pkg/runtime/nacl/mem.c b/src/pkg/runtime/nacl/mem.c
index 0bdd38211e..057ae04e52 100644
--- a/src/pkg/runtime/nacl/mem.c
+++ b/src/pkg/runtime/nacl/mem.c
@@ -26,6 +26,7 @@ void
SysFree(void *v, uintptr n)
{
// round to page size or else nacl prints annoying log messages
+ mstats.sys -= n;
n = (n+NaclPage-1) & ~(NaclPage-1);
runtime_munmap(v, n);
}