From d30e1d6b477650366c25822f956202fec041e1d5 Mon Sep 17 00:00:00 2001 From: Mathieu Chartier Date: Mon, 9 Jun 2014 13:25:22 -0700 Subject: Fix GetFreeMemory to use fooprint limit instead of max memory. Based on definitions in: http://developer.android.com/reference/java/lang/Runtime.html Bug: 15507122 Change-Id: I02f34682d7ac2d379a07631b5207b6cfb224da6b --- runtime/gc/heap.cc | 2 +- runtime/gc/heap.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime/gc/heap.cc b/runtime/gc/heap.cc index d7b673e..f5f7a86 100644 --- a/runtime/gc/heap.cc +++ b/runtime/gc/heap.cc @@ -2464,7 +2464,7 @@ void Heap::DumpForSigQuit(std::ostream& os) { } size_t Heap::GetPercentFree() { - return static_cast(100.0f * static_cast(GetFreeMemory()) / GetMaxMemory()); + return static_cast(100.0f * static_cast(GetFreeMemory()) / max_allowed_footprint_); } void Heap::SetIdealFootprint(size_t max_allowed_footprint) { diff --git a/runtime/gc/heap.h b/runtime/gc/heap.h index e568b36..9b49373 100644 --- a/runtime/gc/heap.h +++ b/runtime/gc/heap.h @@ -408,7 +408,7 @@ class Heap { // Implements java.lang.Runtime.freeMemory. size_t GetFreeMemory() const { - return GetMaxMemory() - num_bytes_allocated_.LoadSequentiallyConsistent(); + return max_allowed_footprint_ - num_bytes_allocated_.LoadSequentiallyConsistent(); } // get the space that corresponds to an object's address. Current implementation searches all -- cgit v1.1