Commit 8901493d authored by Kuo-Hsin Yang's avatar Kuo-Hsin Yang Committed by Commit Bot

Fix Chrome OS tab discard regression

https://crrev.com/c/980742 replaces EstimatedMemoryFreedKB() with
GetEstimatedMemoryFreedOnDiscardKB() which always returns 0. It confuses
Chrome OS Tab Manager and all tabs except the front tab are discarded.
It's a quick fix to make tab discard work on Chrome OS.

Bug: 832517
Change-Id: Ic72be7a7535bf6e0a48a6f6efa9afc28635813c8
Reviewed-on: https://chromium-review.googlesource.com/1011885
Commit-Queue: François Doray <fdoray@chromium.org>
Reviewed-by: default avatarCheng-Yu Lee <cylee@google.com>
Reviewed-by: default avatarFrançois Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550602}
parent ce6139c5
......@@ -6,6 +6,7 @@
#include "base/logging.h"
#include "base/metrics/histogram_macros.h"
#include "base/process/process_metrics.h"
#include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h"
#include "chrome/browser/media/webrtc/media_stream_capture_indicator.h"
#include "chrome/browser/profiles/profile.h"
......@@ -127,8 +128,16 @@ bool TabLifecycleUnitSource::TabLifecycleUnit::Freeze() {
int TabLifecycleUnitSource::TabLifecycleUnit::
GetEstimatedMemoryFreedOnDiscardKB() const {
#if defined(OS_CHROMEOS)
std::unique_ptr<base::ProcessMetrics> process_metrics(
base::ProcessMetrics::CreateProcessMetrics(GetProcessHandle()));
base::ProcessMetrics::TotalsSummary summary =
process_metrics->GetTotalsSummary();
return summary.private_clean_kb + summary.private_dirty_kb + summary.swap_kb;
#else
// TODO(fdoray): Implement this. https://crbug.com/775644
return 0;
#endif
}
bool TabLifecycleUnitSource::TabLifecycleUnit::CanPurge() const {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment