Commit graph

21553 commits

Author SHA1 Message Date
Treehugger Robot
67e7bf137e Merge "Enable FORTIFY in unoptimized builds" 2017-08-16 20:43:54 +00:00
Treehugger Robot
82f28565ce Merge "Add guards for things the versioner can't catch." 2017-08-16 20:42:07 +00:00
Treehugger Robot
f2c203f188 Merge "Make default namespace handle the 'visible' flag." 2017-08-16 17:07:25 +00:00
Dimitry Ivanov
b2688f4a2a Merge "Report correct errno on clone failure" 2017-08-16 11:22:26 +00:00
Justin Yun
90de9f081e Make default namespace handle the 'visible' flag.
'visible' flag was interpreted only the namespaces other than 'default'.
The flag has to be handled without exception once it is set.

Bug: 63411330
Test: Build and boot without errors.
Test: Add `namespace.default.visible = true` to [vendor] process in
      'ld.config.txt' and reboot the device.

Change-Id: Ia363dfadf0200317b875e26bb4b2fae849af1384
2017-08-16 14:38:07 +09:00
George Burgess IV
1de2e358ca Enable FORTIFY in unoptimized builds
GCC's FORTIFY required optimizations to be enabled in order to function
properly. Clang's FORTIFY doesn't have this limitation, so it seems
pointless to keep it disabled due to a GCC-specific limitation.

Bug: 12231437
Test: Checkbuild on bullhead internal master + CtsBionicTestCases. No
new failures.

Change-Id: I74aa35f9d3f3d2a6b11a7adfe72a787e3d7f7f36
2017-08-15 21:20:09 -07:00
Dan Albert
3f7e65e66e Add guards for things the versioner can't catch.
The versioner doesn't handle C++ blocks yet, so these guards won't be
added and it will appear as though the functions are always available
in C++, but based on API level in C.

Test: make checkbuild
Bug: https://github.com/android-ndk/ndk/issues/440
Change-Id: I31a20fa1596d836b280ffc6d7feb863afccca6c7
2017-08-15 14:42:31 -07:00
Elliott Hughes
3ce8834e53 Merge "Name function arguments in libc headers for Studio." 2017-08-15 20:30:28 +00:00
Treehugger Robot
6beab08440 Merge "libc fortify: error on realpath(NULL, foo)" 2017-08-15 17:35:44 +00:00
George Burgess IV
95bd4884b5 libc fortify: error on realpath(NULL, foo)
I've half a mind to make this a warning instead, since this sort of
call isn't UB. That said:
- if the user really wants this (I can't imagine why they would), they
  can just put NULL in a non-const variable,
- we're slowly moving to -Werror ~everywhere anyway, and
- it's presumably easier to change this from an error to a warning than
  the other way around

Bug: 12231437
Test: m checkbuild on bullhead internal master. No new
CtsBionicTestCases failures.

Change-Id: Ie8bf5a3455f663686fda4a7450fb35d147fa745e
2017-08-14 14:48:55 -07:00
dimitry
6de60874aa Report correct errno on clone failure
Test: make
Change-Id: Id0af3678627c06167a6d434d8616c4a304e1fbc0
2017-08-14 14:42:19 +02:00
Elliott Hughes
faa74342e3 Name function arguments in libc headers for Studio.
First batch of headers...

Bug: http://b/64613623
Test: builds
Change-Id: I6bc3ad79daa635456b61d03b1f43f06c433ec596
2017-08-11 17:45:59 -07:00
Christopher Ferris
30438e4cea Merge "Improve error handling and fix minor bugs in bionic benchmarks." 2017-08-11 02:04:47 +00:00
Christopher Ferris
73c3be2219 Merge "Add musl benchmarks." 2017-08-10 23:44:04 +00:00
Dimitry Ivanov
cf764c05e4 Merge "Fix pattern to account for '_' prefix in syscalls" 2017-08-10 15:04:58 +00:00
dimitry
daebd05739 Fix pattern to account for '_' prefix in syscalls
Bug: http://b/64549471
Test: make
Change-Id: I7ba856a2cad29adbb028f150aeaabb9894e84d6e
2017-08-10 11:11:00 +02:00
Treehugger Robot
32f719ad1a Merge changes I36924c4b,Ib6bdd09e
* changes:
  Expand swprintf tests.
  Expand wcsto* tests.
2017-08-10 02:07:34 +00:00
Anders Lewis
a98a5fb63e Improve error handling and fix minor bugs in bionic benchmarks.
Test: Unit tests.
Change-Id: I224ae4c7f195176eb8a87deddb2debcbf0f24ba3
2017-08-09 17:24:13 -07:00
Treehugger Robot
0cd32c1aba Merge "Put back the _Exit rename for pre-L." 2017-08-09 23:44:41 +00:00
Elliott Hughes
88879d19ea Merge "Track tinyxml2 API change." 2017-08-09 23:42:35 +00:00
Anders Lewis
ac4f4b43a3 Add musl benchmarks.
Test: Unit tests.
Change-Id: Ifb2911825f84b95fe64a803bfabd32fb81210eae
2017-08-09 15:26:37 -07:00
Treehugger Robot
e8658b3022 Merge "Fix include to be file-relative." 2017-08-09 22:15:42 +00:00
Dan Albert
9601f162f4 Expand swprintf tests.
Test: bionic unit tests
Bug: None
Change-Id: I36924c4bdd2fa2c25e50ef7fef5500a365721a05
2017-08-09 14:59:33 -07:00
Dan Albert
6805c2db39 Expand wcsto* tests.
Test: bionic unit tests
Bug: None
Change-Id: Ib6bdd09ea2b30274f5312d2edd63ba9e727e9b9c
2017-08-09 14:55:27 -07:00
Elliott Hughes
c2223f746c Track tinyxml2 API change.
Bug: http://b/64459264
Test: builds
Change-Id: I02206b9d40571f306ce712345a36c2754ac73a97
2017-08-08 11:23:27 -07:00
Christopher Ferris
ebbbe292bd Merge "Implement interface for bionic benchmarks." 2017-08-08 01:20:46 +00:00
Dan Albert
b2ca03140d Fix include to be file-relative.
Discovered while trying to build this with the NDK.

Test: make checkbuild
Bug: None
Change-Id: Id5289065d7a1b36f20b0963b38b6ef4dc1d461b9
2017-08-07 16:28:13 -07:00
Elliott Hughes
8aa387fbee Merge "Remove reference to non-existent __LP32__." 2017-08-07 23:09:42 +00:00
Dan Albert
cd8828c346 Put back the _Exit rename for pre-L.
Somehow I accidentally removed this in
https://android-review.googlesource.com/c/445150.

Test: make checkbuild
Bug: None
Change-Id: Ia6744af6c7b6dc2f149e9eab6e1f39863f96f6ca
2017-08-07 14:47:00 -07:00
Anders Lewis
a7b0f88997 Implement interface for bionic benchmarks.
Test: Unit tests.
Change-Id: Ic61932f61ddd572e2f045b601f9da6e090cdc45d
2017-08-07 13:16:09 -07:00
Christopher Ferris
906dc0dd48 Merge "Revert "Revert "Move back to the previous version of ion.h.""" 2017-08-07 17:57:52 +00:00
Elliott Hughes
0138c46794 Remove reference to non-existent __LP32__.
Since there is no 64-bit before 21, there's no need for us to talk about
bitness at all.

Bug: https://github.com/android-ndk/ndk/issues/481
Test: builds
Change-Id: I307466997df35d7f1d0eef7dc7cb35ac3033d25d
2017-08-07 09:04:08 -07:00
Christopher Ferris
f750ba024e Revert "Revert "Move back to the previous version of ion.h.""
This reverts commit 89d6c321f8.

Reason for revert: Really fix all of the problems this time.

Change-Id: I3e962494903660979e5803008102157cc356bc55
2017-08-06 23:39:20 +00:00
Tom Cherry
f631e5a001 Merge "Remove a check for AIDs in the OEM range." 2017-08-04 20:28:05 +00:00
Elliott Hughes
2fdefadcee Merge "With O_TMPFILE, open(2) takes a mode argument." 2017-08-04 20:12:18 +00:00
Elliott Hughes
a0ad52b953 Merge "Some <syslog.h> fixes." 2017-08-04 20:11:41 +00:00
Tom Cherry
a14485adde Remove a check for AIDs in the OEM range.
Remove the check that AIDs in the OEM range are not defind in
android_filesystem_config, as we do not yet have a good solution for
OEMs to define custom AIDs and what OEMs are currently doing isn't
hurting anything.

Bug: b/64137613
Test: pwd.getpwent_iterate / grp.getgrent_iterate
Change-Id: If98ad4443fe9e827e3f17b3df92eca82763e6290
2017-08-04 18:15:58 +00:00
Elliott Hughes
b115aefbb3 With O_TMPFILE, open(2) takes a mode argument.
Strictly, the mode isn't really meaningful unless you supply O_EXCL,
but the kernel will take it and fstat will return it even if you
never give the file a name.

Also warn for O_TMPFILE without a mode at compile time where possible.

Bug: N/A
Test: ran tests
Change-Id: I729b6d6e6190676fd017a1190b6200bf9abdbfd8
2017-08-04 10:20:18 -07:00
Treehugger Robot
cc3639b3ee Merge "libc fortify: warn on open() with useless mode bits" 2017-08-04 07:32:27 +00:00
George Burgess IV
4e37d53f29 libc fortify: warn on open() with useless mode bits
Bug: 64132680
Test: checkbuild on bullhead internal master; no new CtsBionicTestCases
fail.

Change-Id: I98762bbee0ecdd7b4ffc21135992f2eed320317f
2017-08-03 22:04:19 -07:00
Elliott Hughes
f517288924 Some <syslog.h> fixes.
This whole file is bogus, but if we're going to have it, we may as well
make an effort. Add LOG_NFACILITIES. Also stop using octal like it's 1970,
and so I can have some confidence that these constants are actually right.

Bug: N/A
Test: built inetutils with a modified standalone toolchain
Change-Id: Ifd6f661f87845bcc5843d68474cb836afb698058
2017-08-03 14:44:13 -07:00
Treehugger Robot
488c961ecc Merge "Fix dprintf/vdprintf fallbacks for GCC." 2017-08-03 21:02:57 +00:00
Christopher Ferris
5dde3e4d6b Merge "Revert "Revert "Move back to the previous version of ion.h.""" 2017-08-03 18:56:29 +00:00
Christopher Ferris
02ce96835b Revert "Revert "Move back to the previous version of ion.h.""
This reverts commit 89d6c321f8.

Reason for revert: Still a bunch of branches/builds depending on this incorrectly.

Change-Id: I8de678848b0e5445837c02c0942f7388d27dbfd7
2017-08-03 18:55:45 +00:00
Dan Albert
3aa9bf39cb Fix dprintf/vdprintf fallbacks for GCC.
The ordering of __attribute__ and __asm__ matters for GCC.

Test: `#include <stdio.h>` with gcc
Bug: https://github.com/android-ndk/ndk/issues/72
Change-Id: I20bcd7cac2f96d220746e389f0ca467dc95c37c2
2017-08-03 11:11:23 -07:00
Christopher Ferris
bb36e9fae1 Merge "Revert "Move back to the previous version of ion.h."" 2017-08-03 17:19:25 +00:00
Treehugger Robot
b1b125ead1 Merge "libc fortify: make string.h use diagnose_if" 2017-08-03 03:18:44 +00:00
Treehugger Robot
c9fb66209d Merge "linker: the global group is added to all built-in namespaces" 2017-08-03 02:23:53 +00:00
Elliott Hughes
26c59f7082 Merge "Add some <sched.h> tests." 2017-08-02 19:28:38 +00:00
Jiyong Park
02586a2a34 linker: the global group is added to all built-in namespaces
With ld.config.txt, we now have multiple built-in namespaces other than
the default namespace. Libs (and their dependents) listed in LD_PRELOAD
must be visible to those additional namespaces as well.

This also adds a debugging only feature: path to the linker config file
can be customized via LD_CONFIG_FILE environment variable. This works
only for debuggable builds.

Bug: 38114603
Bug: 62815515
Test: 1. ./external/compiler-rt/lib/asan/scripts/asan_device_setup --lib
prebuilts/clang/host/linux-x86/clang-stable/lib64/clang/5.0/lib/linux
2. enable talkback shortcut
3. in the home screen, hold vol-up/down together
4. device does not reboots and talkback shortcut is toggled
Test: bionic-unit-tests and linker-unit-tests successful

Change-Id: I9a03591053f4a9caea82f0dcb23e7a3d324bb9bd
2017-08-03 01:02:07 +09:00