author | Mike Hommey <mh+mozilla@glandium.org> |
Wed, 19 Aug 2020 04:22:15 +0000 | |
changeset 545248 | c878b0fb16c7b10587a50d79ae5fd81d94b85e9a |
parent 545247 | 68017ced66c721dc480191de2ab4a7e0ccb0d4a1 |
child 545249 | 1ae21b324796c33236b5d1563739a8a31914ed62 |
push id | 37711 |
push user | nbeleuzu@mozilla.com |
push date | Wed, 19 Aug 2020 10:01:16 +0000 |
treeherder | mozilla-central@157db696462d [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | froydnj |
bugs | 1658385 |
milestone | 81.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
xpcom/build/PoisonIOInterposerMac.cpp | file | annotate | diff | comparison | revisions | |
xpcom/build/moz.build | file | annotate | diff | comparison | revisions |
--- a/xpcom/build/PoisonIOInterposerMac.cpp +++ b/xpcom/build/PoisonIOInterposerMac.cpp @@ -1,16 +1,19 @@ /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* vim: set ts=8 sts=2 et sw=2 tw=80: */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "PoisonIOInterposer.h" +// Disabled until bug 1658385 is fixed. +#ifndef __aarch64__ #include "mach_override.h" +#endif #include "mozilla/ArrayUtils.h" #include "mozilla/Assertions.h" #include "mozilla/DebugOnly.h" #include "mozilla/IOInterposer.h" #include "mozilla/Mutex.h" #include "mozilla/ProcessedStack.h" #include "mozilla/Telemetry.h" @@ -321,19 +324,21 @@ void InitPoisonIOInterposer() { for (int i = 0; i < NumFunctions; ++i) { FuncData* d = Functions[i]; if (!d->Function) { d->Function = dlsym(RTLD_DEFAULT, d->Name); } if (!d->Function) { continue; } +#ifndef __aarch64__ DebugOnly<mach_error_t> t = mach_override_ptr(d->Function, d->Wrapper, &d->Buffer); MOZ_ASSERT(t == err_none); +#endif } } void OnlyReportDirtyWrites() { sOnlyReportDirtyWrites = true; } // Never called! See bug 1647107. void ClearPoisonIOInterposer() { // Not sure how or if we can unpoison the functions. Would be nice, but no
--- a/xpcom/build/moz.build +++ b/xpcom/build/moz.build @@ -36,18 +36,19 @@ if CONFIG['OS_ARCH'] == 'WINNT': 'PoisonIOInterposerBase.cpp', 'PoisonIOInterposerWin.cpp', ] elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': UNIFIED_SOURCES += [ 'PoisonIOInterposerBase.cpp', 'PoisonIOInterposerMac.cpp', ] - SOURCES += ['mach_override.c'] - SOURCES['mach_override.c'].flags += ['-Wno-unused-function'] + if CONFIG['CPU_ARCH'] != 'aarch64': + SOURCES += ['mach_override.c'] + SOURCES['mach_override.c'].flags += ['-Wno-unused-function'] else: SOURCES += ['PoisonIOInterposerStub.cpp'] include('../glue/objs.mozbuild') XPCOM_MANIFESTS += [ 'components.conf', ]