Don't use the MADV_DONTNEED code path for now as it has no effect on Mac OS X and...
authormrowe@apple.com <mrowe@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 15 Dec 2007 04:31:39 +0000 (04:31 +0000)
committermrowe@apple.com <mrowe@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 15 Dec 2007 04:31:39 +0000 (04:31 +0000)
Reviewed by Maciej Stachowiak.

* wtf/TCSystemAlloc.cpp:
(TCMalloc_SystemRelease): Return after releasing memory rather than potentially falling
through into another mechanism if multiple are supported.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28742 268f45cc-cd09-0410-ab3c-d52691b4dbfc

JavaScriptCore/ChangeLog
JavaScriptCore/wtf/TCSystemAlloc.cpp

index d5106bd4208a91d873b79c087e724b4da0526c8d..2993a10ae70fc6581d4d5b8a2ee1192f28b5bf11 100644 (file)
@@ -1,3 +1,14 @@
+2007-12-14  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Don't use the MADV_DONTNEED code path for now as it has no effect on Mac OS X and is
+        currently untested on other platforms.
+
+        * wtf/TCSystemAlloc.cpp:
+        (TCMalloc_SystemRelease): Return after releasing memory rather than potentially falling
+        through into another mechanism if multiple are supported.
+
 2007-12-14  Alp Toker  <alp@atoker.com>
 
         Build fix for GTK+/Qt and ports that don't use AllInOneFile.cpp.
index a800acf141a2a18c07e511761d81227749026acf..e2ac6ec06fcdd723fa9e5d5f3eb204aa58dd0b04 100644 (file)
@@ -381,10 +381,11 @@ void* TCMalloc_SystemAlloc(size_t size, size_t *actual_size, size_t alignment) {
   return NULL;
 }
 
-#ifndef MADV_DONTNEED
-void TCMalloc_SystemRelease(void*, size_t) {
-#else
-void TCMalloc_SystemRelease(void* start, size_t length) {
+void TCMalloc_SystemRelease(void* start, size_t length)
+{
+  UNUSED_PARAM(start);
+  UNUSED_PARAM(length);
+#if HAVE(MADV_DONTNEED)
   if (FLAGS_malloc_devmem_start) {
     // It's not safe to use MADV_DONTNEED if we've been mapping
     // /dev/mem for heap memory
@@ -415,6 +416,7 @@ void TCMalloc_SystemRelease(void* start, size_t length) {
            errno == EAGAIN) {
       // NOP
     }
+    return;
   }
 #endif
 
@@ -423,5 +425,6 @@ void TCMalloc_SystemRelease(void* start, size_t length) {
   UNUSED_PARAM(newAddress);
   // If the mmap failed then that's ok, we just won't return the memory to the system.
   ASSERT(newAddress == start || newAddress == reinterpret_cast<void*>(MAP_FAILED));
+  return;
 #endif
 }