Граф коммитов

1081 Коммитов

Автор SHA1 Сообщение Дата
Honza Bambas 743553b81f Bug 1487778 - Protect QueryPerformanceCounter against going backward, r=froydnj 2018-11-26 03:08:00 +02:00
James Willcox 992335e0bf Bug 1486524 - Don't use XZ compression for libs on Android r=glandium,nalexander
This also uses idiomatic packaging of the native libraries, which
will allow easier downstream consumption of GeckoView.

Differential Revision: https://phabricator.services.mozilla.com/D10775

--HG--
extra : moz-landing-system : lando
2018-11-23 20:31:57 +00:00
Aaron Klotz 83877256da Bug 1495512: Part 2 - Add test for 10-byte DLL interception; r=handyman
Added a test to TestCrossProcessInterceptor that forcibly uses a 10-byte patch
on NtMapViewOfSection (which is a realistic case) and then ensures that
disabling the hook also works.

Differential Revision: https://phabricator.services.mozilla.com/D10286

--HG--
extra : moz-landing-system : lando
2018-11-23 05:57:01 +00:00
Aaron Klotz b1df9cbd91 Bug 1495512: Part 1 - DLL Interceptor - Add capability to do 10-byte detour patches against ntdll; r=handyman
This patch adds support on x64 for 10-byte detour patches in certain cases.
In particular, the reserved region of trampoline memory must be allocated
within the bottommost 2GB of the address space.

This feature is currently only activated when detouring functions exported by
ntdll.dll.

Differential Revision: https://phabricator.services.mozilla.com/D10285

--HG--
extra : moz-landing-system : lando
2018-11-23 05:56:42 +00:00
Cosmin Sabou 49e2a3a0cf Backed out changeset 1e076b0054cc (bug 1486524) for toolchains gradle bustages. CLOSED TREE 2018-11-21 18:01:10 +02:00
James Willcox 976e18d241 Bug 1486524 - Don't use XZ compression for libs on Android r=glandium,nalexander
This also uses idiomatic packaging of the native libraries, which
will allow easier downstream consumption of GeckoView.

Differential Revision: https://phabricator.services.mozilla.com/D10775

--HG--
extra : moz-landing-system : lando
2018-11-21 15:21:59 +00:00
Andreea Pavel 9351d666e7 Backed out changeset 2bc6db0a2574 (bug 1486524) android raptor failures ona CLOSED TREE 2018-11-14 23:04:59 +02:00
James Willcox b97296cf79 Bug 1486524 - Don't use XZ compression for libs on Android r=glandium,nalexander
This also uses idiomatic packaging of the native libraries, which
will allow easier downstream consumption of GeckoView.

Differential Revision: https://phabricator.services.mozilla.com/D10775

--HG--
extra : moz-landing-system : lando
2018-11-14 17:48:58 +00:00
Bogdan Tara 0f6f614304 Backed out 2 changesets (bug 1495512) for Windows build bustages CLOSED TREE
Backed out changeset 0cd30c3d9b30 (bug 1495512)
Backed out changeset 7ae82cae37d9 (bug 1495512)
2018-11-14 05:09:12 +02:00
Aaron Klotz d318ffbb7a Bug 1495512: Part 2 - Add test for 10-byte DLL interception; r=handyman
Added a test to TestCrossProcessInterceptor that forcibly uses a 10-byte patch
on NtMapViewOfSection (which is a realistic case) and then ensures that
disabling the hook also works.

Differential Revision: https://phabricator.services.mozilla.com/D10286

--HG--
extra : moz-landing-system : lando
2018-11-13 19:51:21 +00:00
Aaron Klotz c29e536879 Bug 1495512: Part 1 - DLL Interceptor - Add capability to do 10-byte detour patches against ntdll; r=handyman
This patch adds support on x64 for 10-byte detour patches in certain cases.
In particular, the reserved region of trampoline memory must be allocated
within the bottommost 2GB of the address space.

This feature is currently only activated when detouring functions exported by
ntdll.dll.

Differential Revision: https://phabricator.services.mozilla.com/D10285

--HG--
extra : moz-landing-system : lando
2018-11-13 19:48:58 +00:00
Andreea Pavel 7cb075753d Backed out 2 changesets (bug 1495512) for failing Win MinGW builds
Backed out changeset 78154ca1e2ac (bug 1495512)
Backed out changeset 17212e7dfe29 (bug 1495512)
2018-11-10 04:06:10 +02:00
Aaron Klotz 6e620ffbcc Bug 1495512: Part 2 - Add test for 10-byte DLL interception; r=handyman
Added a test to TestCrossProcessInterceptor that forcibly uses a 10-byte patch
on NtMapViewOfSection (which is a realistic case) and then ensures that
disabling the hook also works.

Differential Revision: https://phabricator.services.mozilla.com/D10286

--HG--
extra : moz-landing-system : lando
2018-11-10 00:50:23 +00:00
Aaron Klotz 29006b00c1 Bug 1495512: Part 1 - DLL Interceptor - Add capability to do 10-byte detour patches against ntdll; r=handyman
This patch adds support on x64 for 10-byte detour patches in certain cases.
In particular, the reserved region of trampoline memory must be allocated
within the bottommost 2GB of the address space.

This feature is currently only activated when detouring functions exported by
ntdll.dll.

Differential Revision: https://phabricator.services.mozilla.com/D10285

--HG--
extra : moz-landing-system : lando
2018-11-10 00:49:57 +00:00
Markus Stange ab700f9fc0 Bug 1499507 - Don't collect line numbers for profiling stack frames. r=njn
They were not displayed in the UI, and the instructions to initialize the line
field of a stack frame increased code size unnecessarily.

This change reduces the binary size on Linux x64 by around 100KB.

Here's a diff of the impact on the code generated for Attr_Binding::get_specified
in the Mac build:

@@ -20,17 +20,16 @@
    movq       0x8(%rbx), %rax
    movq       %r12, %rcx
    shlq       $0x5, %rcx
    leaq       aGetAttrspecifi, %rdx                       ; "get Attr.specified"
    movq       %rdx, (%rax,%rcx)
    movq       $0x0, 0x8(%rax,%rcx)
    leaq       -40(%rbp), %rdx
    movq       %rdx, 0x10(%rax,%rcx)
-   movl       $0x106, 0x18(%rax,%rcx)
    movl       $0x1c, 0x1c(%rax,%rcx)
    leal       0x1(%r12), %eax
    movl       %eax, 0x10(%rbx)

    movq       %r15, %rdi
    call       __ZNK7mozilla3dom4Attr9SpecifiedEv          ; mozilla::dom::Attr::Specified() const
    movzxl     %al, %eax
    movabsq    $0xfff9000000000000, %rcx

Depends on D9193

Differential Revision: https://phabricator.services.mozilla.com/D9195

--HG--
extra : moz-landing-system : lando
2018-11-06 04:31:02 +00:00
Brindusan Cristian ab89743379 Backed out 9 changesets (bug 1499507) for build bustages on /profiler/core/platform.cpp. CLOSED TREE
Backed out changeset 4c79a5557d7b (bug 1499507)
Backed out changeset 35d05a53e0a9 (bug 1499507)
Backed out changeset 9254e6c721b3 (bug 1499507)
Backed out changeset cf40b044af3f (bug 1499507)
Backed out changeset 76dd85b9aaf7 (bug 1499507)
Backed out changeset 6256446f16c4 (bug 1499507)
Backed out changeset 41cede6bc7d2 (bug 1499507)
Backed out changeset 30476b824eb4 (bug 1499507)
Backed out changeset 24a9494155fe (bug 1499507)
2018-11-05 23:24:49 +02:00
Markus Stange 4c59aa793c Bug 1499507 - Don't collect line numbers for profiling stack frames. r=njn
They were not displayed in the UI, and the instructions to initialize the line
field of a stack frame increased code size unnecessarily.

This change reduces the binary size on Linux x64 by around 100KB.

Here's a diff of the impact on the code generated for Attr_Binding::get_specified
in the Mac build:

@@ -20,17 +20,16 @@
    movq       0x8(%rbx), %rax
    movq       %r12, %rcx
    shlq       $0x5, %rcx
    leaq       aGetAttrspecifi, %rdx                       ; "get Attr.specified"
    movq       %rdx, (%rax,%rcx)
    movq       $0x0, 0x8(%rax,%rcx)
    leaq       -40(%rbp), %rdx
    movq       %rdx, 0x10(%rax,%rcx)
-   movl       $0x106, 0x18(%rax,%rcx)
    movl       $0x1c, 0x1c(%rax,%rcx)
    leal       0x1(%r12), %eax
    movl       %eax, 0x10(%rbx)

    movq       %r15, %rdi
    call       __ZNK7mozilla3dom4Attr9SpecifiedEv          ; mozilla::dom::Attr::Specified() const
    movzxl     %al, %eax
    movabsq    $0xfff9000000000000, %rcx

Depends on D9193

Differential Revision: https://phabricator.services.mozilla.com/D9195

--HG--
extra : moz-landing-system : lando
2018-11-05 20:55:10 +00:00
Narcis Beleuzu 2c6edfdde8 Backed out 9 changesets (bug 1499507) for bustages on ProfileBuffer.cpp . CLOSED TREE
Backed out changeset 541186291b88 (bug 1499507)
Backed out changeset 8a3f4acbad3b (bug 1499507)
Backed out changeset f427afc392b0 (bug 1499507)
Backed out changeset 58dc19fb2b76 (bug 1499507)
Backed out changeset 9225e9aea377 (bug 1499507)
Backed out changeset ca23a517da63 (bug 1499507)
Backed out changeset 16d6c90333de (bug 1499507)
Backed out changeset bc134fe1722a (bug 1499507)
Backed out changeset 4a9c9a91182c (bug 1499507)
2018-11-05 21:48:11 +02:00
Markus Stange 000dc83f31 Bug 1499507 - Don't collect line numbers for profiling stack frames. r=njn
They were not displayed in the UI, and the instructions to initialize the line
field of a stack frame increased code size unnecessarily.

This change reduces the binary size on Linux x64 by around 100KB.

Here's a diff of the impact on the code generated for Attr_Binding::get_specified
in the Mac build:

@@ -20,17 +20,16 @@
    movq       0x8(%rbx), %rax
    movq       %r12, %rcx
    shlq       $0x5, %rcx
    leaq       aGetAttrspecifi, %rdx                       ; "get Attr.specified"
    movq       %rdx, (%rax,%rcx)
    movq       $0x0, 0x8(%rax,%rcx)
    leaq       -40(%rbp), %rdx
    movq       %rdx, 0x10(%rax,%rcx)
-   movl       $0x106, 0x18(%rax,%rcx)
    movl       $0x1c, 0x1c(%rax,%rcx)
    leal       0x1(%r12), %eax
    movl       %eax, 0x10(%rbx)

    movq       %r15, %rdi
    call       __ZNK7mozilla3dom4Attr9SpecifiedEv          ; mozilla::dom::Attr::Specified() const
    movzxl     %al, %eax
    movabsq    $0xfff9000000000000, %rcx

Depends on D9193

Differential Revision: https://phabricator.services.mozilla.com/D9195

--HG--
extra : moz-landing-system : lando
2018-11-05 19:07:45 +00:00
Carl Corcoran 13f66b51b6 Bug 1435827 part 1/9: Send DLL load event info to xul;r=aklotz
We now record DLL load events along with stack trace and other data so we can
later determine trustworthiness and report the DLL via telemetry.

Differential Revision: https://phabricator.services.mozilla.com/D7175

--HG--
extra : moz-landing-system : lando
2018-11-02 08:01:52 +00:00
Tom Ritter 2e4e7ddd81 Bug 1432429 - Point the JS Runtimes at TimeStamp for the current time. r=jandem
This patch adds a new static member to the TimeStamp class to store the
current locked *time* (in ms since the epoch) in addition to the current locked
timestamp.

We point the JS Engine at this value if Fuzzyfox is enabled.
2018-10-26 13:28:51 -05:00
Tom Ritter 61ca4f10d9 Bug 1432429 - Integrate FuzzyFox into the TimeStamp class. r=baku,froydnj
Creates GetFuzzyfoxEnabled() functions that check a static boolean.
Exposes SetFuzzyfoxEnabled() because we cannot depend on Pref
Observation code inside the TimeStamp class.

TimeStamp::Now will now return a Fuzzy value.

We add a NowReally function to support obtaining the real timestamp.

We also add a UsedCanonicalNow to expose whether the TimeStamp was real or fuzzy.
2018-10-09 12:05:25 -05:00
Tom Ritter b83b9c5b11 Bug 1432429 - Add FuzzyFox class and prefs. r=baku,froydnj
Creates a FuzzyFox class for implementating the core of the step/sleep
algorithm. Starts it in nsLayoutStatics::Initialize()

Adds the fuzzyfox prefs.

Moves the ms2mt macros from TimeStamp_windows.cpp to TimeStamp_windows.h
and creates a new public function GetQueryPerformanceFrequencyPerSec() to
expose a static variable in the .cpp file. This is necessary to support
the macros being usable anywhere.  (And we use the macros in FuzzyFox.)
2018-09-18 13:05:26 -05:00
Jeff Gilbert 02e6ff5ccb Bug 1499587 - Fix win64 clang-cl -Wwritable-strings. r=ted
Differential Revision: https://phabricator.services.mozilla.com/D9031

--HG--
extra : moz-landing-system : lando
2018-10-25 14:16:27 +00:00
Masatoshi Kimura f38cdcfbf1 Bug 1496179 - Make mozglue.dll a private SxS assembly. r=aklotz,froydnj
SxS assemblies do not obey the usual DLL search order. It will make it possible
to load mozglue.dll from appdir even if the PreferSystem32Images mitigation is
enabled and System32 has a random mozglue.dll.
2018-10-10 22:57:53 +09:00
David Major 46eec958f3 Bug 1496173 - More aarch64 interceptor fixups. r=mhowell 2018-10-03 17:01:05 -04:00
shindli 14c2437eec Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-09-27 00:57:23 +03:00
Gabriele Svelto 1f10595529 Bug 1490240 - Fix the remaining compiler warnings in the crash reporter r=ted,glandium
Differential Revision: https://phabricator.services.mozilla.com/D5741

--HG--
extra : moz-landing-system : lando
2018-09-26 11:54:34 +00:00
Brindusan Cristian f997140c00 Backed out changeset 628ebca30ce3 (bug 1490240) for bustages on [Unified_cpp_crashreporter0.obj]. CLOSED TREE 2018-09-24 17:10:58 +03:00
Gabriele Svelto a47a091a6d Bug 1490240 - Fix the remaining compiler warnings in the crash reporter r=ted,glandium
Differential Revision: https://phabricator.services.mozilla.com/D5741

--HG--
extra : moz-landing-system : lando
2018-09-24 13:21:38 +00:00
arthur.iakab 12be75264f Backed out changeset 5a566d2d6722 (bug 1490240)for build bustages on Unified_cpp_crashreporter0.obj CLOSED TREE 2018-09-21 15:25:15 +03:00
Gabriele Svelto 37759d8ccd Bug 1490240 - Fix the remaining compiler warnings in the crash reporter r=ted,glandium
Differential Revision: https://phabricator.services.mozilla.com/D5741

--HG--
extra : moz-landing-system : lando
2018-09-21 11:38:04 +00:00
Aaron Klotz 98d8754140 Bug 1492865: Test NTSTATUS code to determine whether DLL load actually succeeded; r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D6434

--HG--
extra : moz-landing-system : lando
2018-09-20 21:58:04 +00:00
Carl Corcoran 2ba0b97140 Bug 1489092: Handle return value of append() to suppress warnings;r=aklotz
Differential Revision: https://phabricator.services.mozilla.com/D5139

--HG--
extra : moz-landing-system : lando
2018-09-18 18:59:54 +00:00
arthur.iakab 1ee75a928a Merge inbound to mozilla-central a=merge 2018-09-19 05:18:50 +03:00
Ted Mielczarek de99592416 Bug 1399870 - make DEFFILE a Path instead of a string; r=gps
All but one of the current uses of DEFFILE use `SRCDIR + '/file.def'` to
get a srcdir-relative path anyway, and the other one wants an
objdir-relative path, so using Path makes everything clearer.

This makes it more straightforward to translate the paths for the WSL
build.
2018-09-18 15:50:19 -04:00
Carl Corcoran b29044d236 Bug 1491783: Allow file delete and write during VerifySignature;r=aklotz
Differential Revision: https://phabricator.services.mozilla.com/D6014

--HG--
extra : moz-landing-system : lando
2018-09-17 20:51:43 +00:00
philipp beae23b892 Bug 1465787 - Add old versions of nviewh64.dll to the dll blocklist. r=marco 2018-09-18 19:01:10 +03:00
Honza Bambas 9a6441ab15 Bug 1487778 - Sentinel QueryPerformanceCounter results for monotonicity even when TSC is reported stable via CPU features, r=froydnj 2018-09-18 03:49:00 +03:00
Thomas P. ac7fc2f5a6 Bug 1474488: add --enable-undefined-sanitizer with custom checks r=froydnj 2018-09-11 02:47:23 +00:00
Jim Chen d92debaff7 Bug 1480834 - 3. Fix linker compile errors under x86-64; r=glandium
The linker has x86-64 support but currently fails to compile. This patch
fixes these compile errors to make it build under x86-64.

Differential Revision: https://phabricator.services.mozilla.com/D4481
2018-09-13 12:09:25 -04:00
Tom Ritter 3fec4a70cd Bug 1490725 Add this-> to some interceptor code to fix the MinGW x86 build r=aklotz
Related to Bug 1480457

Differential Revision: https://phabricator.services.mozilla.com/D5677

--HG--
extra : moz-landing-system : lando
2018-09-12 18:24:20 +00:00
Carl Corcoran b174116dd2 Bug 1490624: Correcting incorrect captitalization of windows.h r=bustage-fix
--HG--
extra : rebase_source : 086899a6cb5817abeff2bef94de57f7a16981f1e
2018-09-12 12:14:10 +02:00
Carl Corcoran 7db61ed776 Bug 1473103: Add unit tests for DLL blocklist integrity; r=aklotz
Differential Revision: https://phabricator.services.mozilla.com/D2219

--HG--
extra : moz-landing-system : lando
2018-09-10 22:01:10 +00:00
Nathan Froyd 6d14711d3f Bug 1494392 - fix thinkos in the aarch64 windows interceptor code; r=aklotz 2018-09-26 15:36:51 -04:00
Tom Ritter 74b5d87cd9 Bug 1480457 - Address moz.build failures for mingw-clang r=aklotz
--HG--
extra : amend_source : 61f7bfdd7b827d6fd12c16c8ed7cd3c00f5bf09e
2018-08-30 23:17:15 +03:00
Tom Ritter 45e0e41278 Bug 1480457 Address template parameter shadowing r=aklotz
This code throws an error in clang on the inner MMPolicy:
error: declaration of 'MMPolicy' shadows template parameter

Notethat the template parameter is declared earlier at the
class definition of ReadOnlyTargetFunction

MozReview-Commit-ID: buLE9d22YS

Differential Revision: https://phabricator.services.mozilla.com/D4571

--HG--
extra : moz-landing-system : lando
2018-08-30 12:08:26 +00:00
Carl Corcoran 7da8e04c87 Bug 1467736: Add support for DllBlocklist_Shutdown;r=aklotz
Differential Revision: https://phabricator.services.mozilla.com/D4544

--HG--
extra : moz-landing-system : lando
2018-08-29 18:49:49 +00:00
Nathan Froyd 62ef49df4d Bug 1486898 - make WindowsCFGStatus test work with aarch64 windows; r=glandium 2018-08-28 20:40:36 -04:00
Nathan Froyd 0b8d2e01f3 Bug 1485701 - make the interceptor code compilable, if not functional, on aarch64 windows; r=aklotz 2018-08-28 09:27:57 -04:00