summaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qtwebengine/chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-qt/qt5/qtwebengine/chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch')
-rw-r--r--recipes-qt/qt5/qtwebengine/chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/recipes-qt/qt5/qtwebengine/chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch b/recipes-qt/qt5/qtwebengine/chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
new file mode 100644
index 00000000..9a0b3370
--- /dev/null
+++ b/recipes-qt/qt5/qtwebengine/chromium/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
@@ -0,0 +1,67 @@
1From 913e3c0834dd0371ee62ab91b71428fc2b77b3c4 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 7 Jul 2017 14:09:06 -0700
4Subject: [PATCH] chromium: musl: Avoid mallinfo() APIs on non-glibc/linux
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 chromium/base/process/process_metrics_posix.cc | 4 ++--
9 chromium/base/trace_event/malloc_dump_provider.cc | 3 ++-
10 chromium/content/child/content_child_helpers.cc | 2 +-
11 3 files changed, 5 insertions(+), 4 deletions(-)
12
13diff --git a/chromium/base/process/process_metrics_posix.cc b/chromium/base/process/process_metrics_posix.cc
14index 73a52d6210..4867198a50 100644
15--- a/chromium/base/process/process_metrics_posix.cc
16+++ b/chromium/base/process/process_metrics_posix.cc
17@@ -94,14 +94,14 @@ size_t ProcessMetrics::GetMallocUsage() {
18 malloc_statistics_t stats = {0};
19 malloc_zone_statistics(nullptr, &stats);
20 return stats.size_in_use;
21-#elif defined(OS_LINUX) || defined(OS_ANDROID)
22+#elif defined(__GLIBC__) || defined(OS_ANDROID)
23 struct mallinfo minfo = mallinfo();
24 #if defined(USE_TCMALLOC)
25 return minfo.uordblks;
26 #else
27 return minfo.hblkhd + minfo.arena;
28 #endif
29-#elif defined(OS_FUCHSIA)
30+#else
31 // TODO(fuchsia): Not currently exposed. https://crbug.com/735087.
32 return 0;
33 #endif
34diff --git a/chromium/base/trace_event/malloc_dump_provider.cc b/chromium/base/trace_event/malloc_dump_provider.cc
35index ffd519133c..0c9131e98e 100644
36--- a/chromium/base/trace_event/malloc_dump_provider.cc
37+++ b/chromium/base/trace_event/malloc_dump_provider.cc
38@@ -197,6 +197,7 @@ MallocDumpProvider::~MallocDumpProvider() = default;
39 // the current process.
40 bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
41 ProcessMemoryDump* pmd) {
42+#if defined(__GLIBC__)
43 {
44 base::AutoLock auto_lock(emit_metrics_on_memory_dump_lock_);
45 if (!emit_metrics_on_memory_dump_)
46@@ -322,7 +323,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
47 pmd->DumpHeapUsage(metrics_by_context, overhead, "malloc");
48 }
49 tid_dumping_heap_ = kInvalidThreadId;
50-
51+#endif // __GLIBC__
52 return true;
53 }
54
55diff --git a/chromium/content/child/content_child_helpers.cc b/chromium/content/child/content_child_helpers.cc
56index 7ddeb4d16a..b8c73b09c5 100644
57--- a/chromium/content/child/content_child_helpers.cc
58+++ b/chromium/content/child/content_child_helpers.cc
59@@ -25,7 +25,7 @@ namespace content {
60 // though, this provides only a partial and misleading value.
61 // Unfortunately some telemetry benchmark rely on it and these need to
62 // be refactored before getting rid of this. See crbug.com/581365 .
63-#if defined(OS_LINUX) || defined(OS_ANDROID)
64+#if defined(__GLIBC__) || defined(OS_ANDROID)
65 size_t GetMemoryUsageKB() {
66 struct mallinfo minfo = mallinfo();
67 uint64_t mem_usage =