"ulimit -c xxx" command may run before bionic-unit-tests.
Make sure sys_resource test fails gently in that case.
Change-Id: Ic3b5ed8b20acba56df8c5ef082c88e5050e761aa
Also switch throughput to GiB/s. I did play with using the new code,
but having consistent units for all results seemed easier to use
anyway (and doesn't require extra code).
Change-Id: I466fd573373bd05619e6f6e6d3dedd7dae0d9362
The benchmark run loop tries to run until 1s of time has been
accumulated between StartBenchmarkTiming() and StopBenchmarkTiming().
If a majority of the time is spent stopped this can lead to
benchmarks running for very long periods of time. This can easily
happen when benchmarking something that requires initialization or
cleanup on each iteration.
Modify the loop to run for 1s of real time instead of 1s of
benchmark time. For existing benchmarks this shouldn't make much
of a difference.
Change-Id: Iaba8a13b4dfc4a5e2cd9992041c9173ea556f9cc
If pthread_detach() is called while the thread is in pthread_exit(),
it takes the risk that no one can free the pthread_internal_t.
So I add PTHREAD_ATTR_FLAG_ZOMBIE to detect this, maybe very rare, but
both glibc and netbsd libpthread have similar function.
Change-Id: Iaa15f651903b8ca07aaa7bd4de46ff14a2f93835
Guarding based on the Gerrit owner can be circumvented by an arbitrary
user uploading a different patch with a Change-Id that is non-unique,
with the other copy being owned by a Googler.
Change-Id: I5414b679e361d4c38d70bf9c4516c122f668fc49
Begin adding some unit tests. Testing the Jenkins interface will
probably be difficult, but testing that we can properly handle
messages from Gerrit is easy enough.
Change-Id: Id7e8e175e0f064fd10715febe40040a65564c701
Googlers should be able to tell the buildbot to launch builds for an
external contributor's change, but Gerrit is determined to make this
hard for us. The email sent by Gerrit for comments doesn't actually
contain the email address of the commenter in any clear way, only the
name. It does however contain a list of `Gerrit-Reviewer: Name
<email>` entries that could be used for this though.
Change-Id: Iee61f06dcd8f0024f16b535ea9a34765bf01b2e7
Since we often make changes that might break on other architectures,
let the buildbot deal with some of these for us. They can be invoked
by `bionicbb:ARCH`, where `ARCH` is one of:
* arm
* aarch64
* mips
* mips64
* x86
* x86_64
Specifying arm isn't particularly interesting (since the default
target for the buildbot is hammerhead), but there are some differences
in the math instructions available for the default ARM target, so it
could be helpful for testing changes to the compiler-rt builtins.
Change-Id: I94018fd3c30d26fcf405e747fc633cbdd08ff4e5
Apparently Google abandoned the 2 space indent for Python long ago.
Helps to actually read the style guide before trying to adhere to it.
Change-Id: I4feb019f0916f9d8e4f78c0dbeafbe45d8a46bfd
Making `bionicbb` its own package required `PYTHONPATH=..`, which we
don't want. Just use a relative import instead.
Change-Id: I59b9852522118ece89829288a4921902e756e4aa
The only JSON file is the client secret file, which we really don't
want leaking. Same goes for the oauth storage file.
Change-Id: Ie860704574ec37ccfc50ff7c9d59717a7b9b443b