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

3904 Коммитов

Автор SHA1 Сообщение Дата
L. David Baron 2579d85cb5 Bug 1274041 - Make child process write its memory map to a different file name. r=jesup
This makes the child process write its memory map to a different file
name, just like it does for the jprof log.  It tries to share the
variables between the two so that they're both connected in the code and
consistent with each other.

Note that I haven't yet written the patch to make jprof.cpp *read* the
map from that file, so this currently requires manually renaming the
generated map with the numeric suffix to jprof-map in order to run
jprof.  I should probably write that patch eventually, but I haven't
actually needed to.

This at least prevents the child process's map file from being
overwritten by the parent's a fraction of a second later.

MozReview-Commit-ID: 7L4wT9BdQYI
2016-05-20 19:57:31 -07:00
L. David Baron 2c8fb3d73a Bug 1274041 - Actually define JPROF_STATIC as it was meant to be defined. r=jesup
I've had this in my tree for a while; it just fixes what look like a
silly mistake.

MozReview-Commit-ID: I7mSKXTSWqo
2016-05-20 19:57:31 -07:00
Andrew Halberstadt 464b3a9f2e Bug 1273556 - [mozlint] Better SIGINT handling, return partial results on Ctrl-C, r=jgraham
Currently a bug in python (https://bugs.python.org/issue8296) is preventing a KeyboardInterrupt from
reaching the parent process, meaning we can't kill the process with SIGINT. There is a workaround to
this bug, but instead I decided to ignore SIGINT in the parent process completely. Now, each child
process is responsible for handling SIGINT on its own. Since child processes should all shutdown
relatively quickly anyway, this effectively also ends the parent process.

The benefit of doing it this way is that each child process can return the results they have collected
to date. So when a developer hits Ctrl-C, they'll still see some (but not all) formatted lint output.
The downside is that a poorly implemented external linter could block the parent process from exiting
quickly, but if this happens we should just fix the linter.

MozReview-Commit-ID: 2tRJgtmoPYP

--HG--
extra : rebase_source : e72282bcc29c9b22690168dc973a817236cdf8ca
2016-05-17 12:24:42 -04:00
Andrew Halberstadt b1445349ea Bug 1270506 - [mozlint] Add python flake8 linter, r=smacleod
For now, only the following two directories will be linted:
python/mozlint
tools/lint

New directories can be added by adding them to the 'include'
directive in tools/lint/flake8.lint. They all default to the
configuration specified in topsrcdir/.flake8. Subdirectories
can override this configuration by creating their own .flake8
file.

MozReview-Commit-ID: Eag48Lnkp3l

--HG--
extra : rebase_source : 6d98c9fef80055a48cc2622848aa04c3045b747e
2016-05-05 17:21:12 -04:00
Chris Peterson 353ee65255 Bug 1272513 - Part 1: Suppress -Wshadow warnings-as-errors in some directories. r=glandium 2016-05-11 00:00:01 -07:00
Mike Shal dbfbbfe42c Bug 1272483 - Remove MOZ_UPDATE_PACKAGING and --enable-update-packaging; r=chmanchester
MozReview-Commit-ID: A3SDJCc5eHH

--HG--
extra : rebase_source : af8d081c349b27ac0e2567b0f5863fbbeb7f98ce
2016-05-12 12:15:58 -04:00
Ralph Giles f123b681bb Bug 1270091 - Handle missing function names. r=dminor
If the symbols file doesn't give a function name, substitute
'unnamed_function'. A more complete fix would be to catch
all ValueError exceptions and continue sensibly, but this
addresses the immediate issue with the output from `rustc -g`.

MozReview-Commit-ID: 666ruvLlJ5t
2016-05-10 16:15:17 -07:00
Henry Chang 3ca7032d96 Bug 1270002 - Use sliced array to ignore trailing tokens. r=mccr8 2016-05-04 00:17:00 -04:00
Nathan Froyd 8db25584a9 Bug 1270928 - part 4 - return a UniquePtr from GetLoggedData; r=BenWa
This change makes ownership clearer and enables us to get rid of the
last use of nsAutoPtr in tools/profiler/.
2016-05-09 10:04:50 -04:00
Nathan Froyd 73cd95dafd Bug 1270928 - part 3 - don't include nsAutoPtr.h in ThreadResponsiveness.h; r=BenWa
Do #include RefPtr.h, though, since we need that for the definition of
ThreadResponsiveness.
2016-05-09 10:04:50 -04:00
Nathan Froyd 31c3d5d2af Bug 1270928 - part 2 - use UniquePtr in GeckoTaskTracer.cpp:sTraceInfos; r=BenWa
Less nsAutoPtr usage and header bootlegging is a good thing.
2016-05-09 10:04:50 -04:00
Nathan Froyd 6b5caaf0b7 Bug 1270928 - part 1 - use UniquePtr in PROFILER_MARKER_PAYLOAD; r=BenWa
We'd like to get rid of nsAutoPtr usage, and this header doesn't even
#include nsAutoPtr.h.
2016-05-09 10:04:50 -04:00
Gregory Szorc 511e246124 Bug 1270907 - Update bitbucket.org certificate fingerprint; r=sfink
DONTBUILD (NPOTB)

MozReview-Commit-ID: Jg8FiWoLxAu

--HG--
extra : rebase_source : b3227478f5765d1de18ad7f939ddb0bfdf453eaa
2016-05-06 11:05:54 -07:00
Andrew Halberstadt 0484cb2aa7 Bug 1230962 - Create mach/build system integration for mozlint, r=smacleod
MozReview-Commit-ID: 74ma5uMOphe

--HG--
extra : rebase_source : 3b0594650a364ad598fc12cc38f3e4fd916ca26b
2016-03-18 13:54:07 -04:00
Jim Chen 0574002b30 Bug 1260208 - part 0 - correctly compare EHTable when sorting; r=froydnj
operator< for EHTable compares the LHS start PC with the RHS *end* PC.
Because the ranges are non-overlapping, this works fine for two distinct
EHTables. However, the comparison doesn't work if LHS and RHS refer to
the same EHTable; in that case operator< returns true, even though it
should return false because the two operands are identical.

The operator is used to sort a std::vector using std::sort [1].  I think
the libc++ std::sort implementation has a quirk where, if the comparison
function has the above bug, sort will sometimes get confused, and start
sorting "values" outside of the memory range that it's given.  This
results in memory corruption and subsequent unpredictable behavior.

The fix is simply to compare only the start PCs in EHTable, so that
std::sort can work on it correctly.

[1] http://mxr.mozilla.org/mozilla-central/source/tools/profiler/core/EHABIStackWalk.cpp?rev=86730d0a8209#485
2016-05-03 09:13:49 -04:00
Gregory Szorc 6f80eee720 Bug 1268573 - Pin revision in hgwatchman repo; r=smacleod
Per
https://www.mercurial-scm.org/pipermail/mercurial-devel/2016-April/083649.html
the hgwatchman repo has been blanked. We should pin to the last
changeset before the blanking so people can still run hgwatchman.

We'll also need to teach `mach mercurial-setup` to install the
fsnotifier extension. That's for a different patch and bug.

DONTBUILD (NPOTB)

MozReview-Commit-ID: GyuDMTwARqo

--HG--
extra : rebase_source : be782f0262006a29f5b48add98fddda9dd2cdbd7
2016-04-28 10:20:25 -07:00
Kyle Huey c73656947b Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Charles Collicutt 60a5a1819e Bug 1261392 - Define gettid for all Linux builds. r=bgirard 2016-04-11 22:49:00 +02:00
Ryan VanderMeulen 139ecf837b Backed out changeset 14eb89c4134d (bug 1261392) for Android bustage.
--HG--
extra : rebase_source : 02b744b942c4d14b43435f8762a4f56a8d5b550f
2016-04-10 16:57:26 -04:00
Charles Collicutt 239fba2186 Bug 1261392 - Define gettid for all Linux builds. r=BenWa 2016-04-09 13:40:00 -04:00
George Wright e75c590407 Revert "Bug 1114647 - Rename "plugin-container" to "firefox-webcontent" and create a new executable target for Win32 called "firefox-plugin-container" r=ted,jhamer" because of widespread breakage due to whitelisted executable names in third parties
This reverts commit a94b5f861bd0d25043a3bb7a0c3128acf8c0b93a.


--HG--
rename : ipc/contentproc/firefox-webcontent.cpp => ipc/contentproc/plugin-container.cpp
2016-04-08 13:34:40 -04:00
Randell Jesup d21c70dd6c Bug 1261384: Clean up warnings-as-errors nits in jprof (NPOTB) rs=me
Not enabled by default.

MozReview-Commit-ID: IASV3aPem96
2016-04-01 11:08:04 -04:00
George Wright 5c454494ce Bug 1114647 - Rename "plugin-container" to "firefox-webcontent" and create a new executable target for Win32 called "firefox-plugin-container" r=ted,jhamer
--HG--
rename : ipc/app/module.ver => ipc/app/plugin-container/module.ver
rename : ipc/contentproc/plugin-container.cpp => ipc/contentproc/firefox-webcontent.cpp
2016-04-01 02:12:59 -04:00
Gregory Szorc b64e5f4498 Bug 1259514 - Add manifestparser and reftest to Python search path; r=chmanchester
mozbuild Python changes to test manifest processing introduced these
dependencies.

DONTBUILD (NPOTB)

MozReview-Commit-ID: 9nT3G7qt988

--HG--
extra : rebase_source : d7d560477249a8e20a162d49faea85d4a49fe113
2016-03-24 11:19:44 -07:00
Gregory Szorc d4f4c2f840 Bug 1252765 - Always update Mercurial host fingerprints if present; r=chmanchester
Before, we didn't update host fingerprints if old values were present
and we were running a modern Mercurial and Python.

Now, we unconditionally update existing fingerprints.

DONTBUILD (NPOTB)

MozReview-Commit-ID: 1yjNGkJ6FAk

--HG--
extra : rebase_source : 12a2c6a3615b3ad4449171bcfb6f3c41cda670ed
2016-03-11 13:18:08 -08:00
Andrew Halberstadt ca961954c9 Bug 1255567 - Sign quitter extension for valgrind-test and pgo/profileserver, r=jgriffin
MozReview-Commit-ID: HtH8z4rBSMY

--HG--
extra : rebase_source : 90a1269a6dd166cc77080d86f902c19d0a6e162c
2016-03-10 15:37:51 -05:00
Gregory Szorc 2906edb808 Bug 1252294 - Add python/futures to sys.path when building Sphinx docs; r=chmanchester
RTD is complaining that it can't find concurrent.futures. We solve this
problem on RTD by adjusting sys.path in the Sphinx config file to add
paths to the vendored packages.

Sadly, there isn't really an easy way to test this before landing. But
it should work.

MozReview-Commit-ID: FrsLrbbOQWt

--HG--
extra : rebase_source : 4debf9b1902e26babe7e9ddaee8142a14674d393
2016-02-29 16:08:34 -08:00
Eric Rahm 7a9e99d2c6 Bug 1251787 - Remove remaining references to MOZILLA_XPCOMRT_API from tools. r=mstange 2016-02-27 11:12:08 -08:00
bsilverberg 753cad635e Bug 1250965 - Enhance eslintvalidate.py to validate html files as well, r=mossop
MozReview-Commit-ID: 3rnyWYG84Uc

--HG--
extra : transplant_source : %CA%91o%D9e%B4%B2%EF%C0%24%A5O%AD%EDbq%D2G%CBX
2016-02-24 13:33:04 -05:00
Chris Manchester 7c92933074 Bug 1216681 - Add a windows version of fileid to extract a guid from windows binaries. r=jimm,ted
This patch introduces a small utility program to extract a guid from a shared library
or executable on windows to identify the correct symbol file to read in fix_stack_using_bpsyms.py.
In order for this to work correctly on windows, the library name provided by
MozDescribeCodeAddress needs to be a full path, so the LoadedImageName field
from the IMAGEHLP_MODULE64 structure is used here instead of the ModuleName
field.

MozReview-Commit-ID: 8zkfLWjKVs2
2015-10-29 13:25:03 -07:00
Phil Ringnalda d7b348b2df Back out ff446e81eaf5 (bug 1216681) for Linux PGO bustage
CLOSED TREE
2016-02-11 20:27:36 -08:00
Chris Manchester 89842ddcd7 Bug 1216681 - Add a windows version of fileid to extract a guid from windows binaries. r=jimm,ted
This patch introduces a small utility program to extract a guid from a shared library
or executable on windows to identify the correct symbol file to read in fix_stack_using_bpsyms.py.
In order for this to work correctly on windows, the library name provided by
MozDescribeCodeAddress needs to be a full path, so the LoadedImageName field
from the IMAGEHLP_MODULE64 structure is used here instead of the ModuleName
field.

--HG--
extra : commitid : GwkhBdm81g3
2015-10-29 13:25:03 -07:00
Carsten "Tomcat" Book 6244cfb10e Backed out changeset 200da85932e9 (bug 1230862) for valgrind perma failures 2016-02-10 11:04:50 +01:00
Julien Pagès cb348f4346 Bug 1230862 - Remove mozhttpd. r=wlach
--HG--
extra : commitid : HRDp24nhYo8
extra : rebase_source : 76443fa9938e488fcd06af7ba0676d491c9da36e
2016-02-09 03:26:43 +01:00
James Willcox faeba278d1 Fix Fennec build on Mac, no bug, NPTOB r=ted 2016-02-08 17:45:27 -06:00
Ted Mielczarek ea6f9a1958 bug 1069556 - sync to Breakpad c53ed143108948eb7e2d7ee77dc8c0d92050ce7c. r=glandium, benwa
This commit contains a few things:
* Update our copy of google-breakpad to upstream c53ed143108948eb7e2d7ee77dc8c0d92050ce7c
* Get rid of all but one local patch, fold a few related local patches into one
* Misc build fixup to sync with upstream--adding a few new moz.build files,
  source files
* The final bits of unhooking Breakpad from the profiler:
** Revert to only building toolkit/crashreporter if MOZ_CRASHREPORTER.
** Stop building bits of Breakpad that we only needed for the profiler.
** Remove a few bits of profiler code that were used to interface with Breakpad.
** Remove toolkit/crashreporter/breakpad-logging, which was only used to
   suppress Breakpad logging for the in-process stackwalker.
* Upstream removed their Android-compat sys/ucontext.h because the Android NDK
  added it, but the bionic we're using for Gonk builds is too old, so add a
  copy of the previous version of those files to
  toolkit/crashreporter/gonk-include to keep Gonk building.
* Consolidate moz.build files under toolkit/crashreporter/google-breakpad/client/linux

--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/pathname_stripper.h => toolkit/crashreporter/google-breakpad/src/processor/pathname_stripper.h
rename : toolkit/crashreporter/google-breakpad/src/common/pathname_stripper_unittest.cc => toolkit/crashreporter/google-breakpad/src/processor/pathname_stripper_unittest.cc
extra : histedit_source : 43e65f5432657f548cac5aa7936461e58454c3b6%2C7b56ccc79d9d58ebde0583d920f3593e25212621
extra : rebase_source : f6dbfb8fb2ba5b27e63b26d57c404962679c7a76
extra : commitid : DMQlXPms868
extra : source : 09fd4f3ab6e764016fe073efb226f03b5969af59
extra : intermediate-source : 16f9d3a6d2ef6a6efd088e3b8eff0a4723daef8f
2016-01-27 09:39:53 -05:00
Gregory Szorc 0b6ca59214 Bug 1244736 - Remove `mach update-uuids` and related code; r=froydnj
We no longer update UUIDs when changing XPIDL interfaces. `mach
update-uuids` was invented to make this process easier. Delete the
command and related code since it is no longer needed.

--HG--
extra : commitid : GLChZKelC0Q
extra : rebase_source : f4a8f9727f1213ae4fe5d17fa1a648ed8802095f
extra : amend_source : 2fdab014f16482ae82e0cc0f9b2c2f4620001657
2016-02-01 16:10:08 -08:00
Chris H-C 843e04bb32 Bug 1238121 - Properly guard Profiler's RAII classes r=BenWa f=mystor
We can't use GuardObjects easily on the printf variant as va_list args and
default args can't play together.
2016-01-28 09:19:00 +01:00
Wes Kocher 23122402f7 Backed out changeset 65624d4c4a65 (bug 1238121) to hopefully fix the intermittent hazard failures
--HG--
extra : commitid : 6SsEbxXjwKq
2016-01-29 10:14:34 -08:00
Nathan Froyd b1bbf96de9 Backout 24dbe7da7370:a319694b46d5 (bug 1069556) for build bustage on various platforms on a CLOSED TREE
--HG--
rename : toolkit/crashreporter/google-breakpad/src/client/linux/Makefile.in => toolkit/crashreporter/google-breakpad/src/client/linux/handler/Makefile.in
rename : toolkit/crashreporter/google-breakpad/src/processor/pathname_stripper.h => toolkit/crashreporter/google-breakpad/src/common/pathname_stripper.h
rename : toolkit/crashreporter/google-breakpad/src/processor/pathname_stripper_unittest.cc => toolkit/crashreporter/google-breakpad/src/common/pathname_stripper_unittest.cc
2016-01-29 11:55:43 -05:00
Ted Mielczarek 478ab040e0 bug 1069556 - local build changes to match up with upstream Breakpad. r=benwa,glandium
This commit contains a few things:
* Misc build fixup to sync with upstream--adding a few new moz.build files,
  source files
* The final bits of unhooking Breakpad from the profiler:
** Revert to only building toolkit/crashreporter if MOZ_CRASHREPORTER.
** Stop building bits of Breakpad that we only needed for the profiler.
** Remove a few bits of profiler code that were used to interface with Breakpad.
** Remove toolkit/crashreporter/breakpad-logging, which was only used to
   suppress Breakpad logging for the in-process stackwalker.
* Upstream removed their Android-compat sys/ucontext.h because the Android NDK
  added it, but the bionic we're using for Gonk builds is too old, so add a
  copy of the previous version of those files to
  toolkit/crashreporter/gonk-include to keep Gonk building.
* Consolidate moz.build files under toolkit/crashreporter/google-breakpad/client/linux

--HG--
rename : toolkit/crashreporter/google-breakpad/src/client/linux/handler/Makefile.in => toolkit/crashreporter/google-breakpad/src/client/linux/Makefile.in
extra : commitid : HeAH4kH17B1
extra : rebase_source : c9942aaca1d4e9555ecd44a23d7020a8a7ba1d77
extra : source : 31c98f5e107b9271be88e7c8543c4dbb4a2b6526
2016-01-27 09:39:53 -05:00
Chris H-C dfbec1cede Bug 1238121 - Properly guard Profiler's RAII classes. r=BenWa, f=mystor
We can't use GuardObjects easily on the printf variant as va_list args and default args can't play together.

--HG--
extra : rebase_source : 418252aa8d1dcae56decd5ff99246d34578b9003
2016-01-28 09:19:00 -05:00
Carsten "Tomcat" Book db55b0fa77 Backed out changeset 31c98f5e107b (bug 1069556)
--HG--
rename : toolkit/crashreporter/google-breakpad/src/client/linux/Makefile.in => toolkit/crashreporter/google-breakpad/src/client/linux/handler/Makefile.in
2016-01-26 14:53:02 +01:00
Ted Mielczarek bf718146b7 bug 1069556 - local build changes to match up with upstream Breakpad. r=benwa,glandium
This commit contains a few things:
* Misc build fixup to sync with upstream--adding a few new moz.build files,
  source files
* The final bits of unhooking Breakpad from the profiler:
** Revert to only building toolkit/crashreporter if MOZ_CRASHREPORTER.
** Stop building bits of Breakpad that we only needed for the profiler.
** Remove a few bits of profiler code that were used to interface with Breakpad.
** Remove toolkit/crashreporter/breakpad-logging, which was only used to
   suppress Breakpad logging for the in-process stackwalker.
* Upstream removed their Android-compat sys/ucontext.h because the Android NDK
  added it, but the bionic we're using for Gonk builds is too old, so add a
  copy of the previous version of those files to
  toolkit/crashreporter/gonk-include to keep Gonk building.
* Consolidate moz.build files under toolkit/crashreporter/google-breakpad/client/linux

--HG--
rename : toolkit/crashreporter/google-breakpad/src/client/linux/handler/Makefile.in => toolkit/crashreporter/google-breakpad/src/client/linux/Makefile.in
extra : commitid : GR2H5y5DM7E
extra : rebase_source : 212b8f04703555658e1df026de2211ea20ac390b
2015-11-09 08:14:52 -05:00
Gregory Szorc c550ec1795 Bug 1242678 - Disable mozext when running `hg` commands; r=dminor
We disable various extensions when running `hg` commands as part
of `mach mercurial-setup` because they can interfere with operations.
e.g. if the extension isn't compatible with your version of hg, you
will get an error.

For some reason "mozext" wasn't part of this list. Fix that.

DONTBUILD (NPOTB)

--HG--
extra : rebase_source : de041f677d32cc619cf38841ec76aa1adcd2b483
2016-01-25 12:15:46 -08:00
Phil Ringnalda 6aeccf0426 Merge f-t to m-c, a=merge 2016-01-23 18:11:37 -08:00
Sylvestre Ledru ab4e3a0d42 Bug 1218816 - Remove useless semicolons. Found by coccinelle. r=Ehsan
--HG--
extra : rebase_source : 7d2cc56b6553cd7a8d848d3c660f30735bd82eec
2016-01-22 16:58:49 +01:00
Tom Tromey 5412728905 Bug 757969 - use __thread in ThreadLocal; r=froydnj 2016-01-22 10:33:44 -07:00
Nick Fitzgerald 22136ee183 Bug 1241249 - Add an SPS pseudo entry for JS stack capturing; r=shu
This commit adds SPS pseudo frame entries for
`js::SavedStacks::saveCurrentStack` with the `AutoSPSEntry` RAII class.
2016-01-20 11:32:00 +01:00
Benoit Girard 34b754c945 Bug 1239498 - Use Stackwalk64 on win x64. r=jrmuizel
--HG--
extra : commitid : 7YO11uKXKTJ
2016-01-13 15:22:01 -08:00