Commit graph

16898 commits

Author SHA1 Message Date
Josh Gao
99a84c8316 Remove __cachectl.
bionic doesn't have an implementation for this function, but neither
does the kernel. cachectl has existed in the kernel as a stub that
returns ENOSYS for over a decade.

Bug: http://b/28178111
Change-Id: Id35f85fd143c5ea0d45d04b1021893cf5c0c749d
2016-06-03 15:01:18 -07:00
Treehugger Robot
f21ca653b7 Merge "Fix __errordecl on clang." 2016-06-03 19:29:12 +00:00
Chih-hung Hsieh
e7d75a5d43 Merge "Fix misc-macro-parentheses warnings in bionic/tests." 2016-06-03 18:46:42 +00:00
Treehugger Robot
c42811e5bc Merge "Remove __brk" 2016-06-03 18:27:45 +00:00
Josh Gao
8ba4424a41 Fix __errordecl on clang.
__attribute__((__error__)) doesn't exist on clang.

Bug: http://b/28381737
Change-Id: I75f39308ecfd60164811958fa40c9b96c92fd329
2016-06-03 10:36:37 -07:00
Chih-Hung Hsieh
d61ca37d35 Fix misc-macro-parentheses warnings in bionic/tests.
Bug: 28705665
Change-Id: I532205b94e30acbdc97f3f4db0660c9a16a7de89
2016-06-03 10:18:07 -07:00
Dimitry Ivanov
71e783d8a4 Remove __brk
The symbol is unused and deprecated

Bug: http://b/29005114
Change-Id: I5e99c8b029514e8b2405a1eec23ac8941374a8a4
2016-06-03 08:33:51 -07:00
Treehugger Robot
a24cc2639f Merge "Do not return with stack address in global variable." 2016-06-02 22:57:51 +00:00
Chih-Hung Hsieh
9af13d24b1 Do not return with stack address in global variable.
Clang static analyzer gives warning when address of
local variable 'attr' is saved in a global variable.
This change passes required values down to signal handler
instead of saving local variable address in a signal handler.

Change-Id: I7955939487a5afdf7b1f47eb74a92eb5aa76cfc9
2016-06-02 15:02:25 -07:00
Treehugger Robot
d23c37bc3f Merge changes I1bb1925a,Icd638673
* changes:
  versioner: introduce.
  Update header versions for NDK platform fixes.
2016-06-02 21:29:48 +00:00
Josh Gao
bf8a285e64 versioner: introduce.
Add a clang-based tool to inspect header availability attributes and
verify them against the NDK platform definitions.

Bug: http://b/28178111
Change-Id: I1bb1925a620e98cc9606cb5a3360b1224c700bd0
2016-06-02 13:40:36 -07:00
Josh Gao
46b44160e9 Update header versions for NDK platform fixes.
Bug: http://b/28178111
Change-Id: Icd638673b409aa43a91490f77c6b4d79c9ea20d9
2016-06-02 13:40:35 -07:00
Colin Cross
8428fb03c8 Merge "Remove deprecated Android.mk files" 2016-06-02 16:31:40 +00:00
Treehugger Robot
e20730ca0b Merge "Remove declaration for __brk." 2016-06-02 02:25:59 +00:00
Josh Gao
8a48d9d63b Merge "Fix .clang-format ContinuationIndentWidth." 2016-06-02 01:21:42 +00:00
Josh Gao
6e9c1f61d8 Remove declaration for __brk.
Bug: http://b/28178111
Change-Id: I972789cd5da552000c32fd107b9df98330323d89
2016-06-01 18:21:06 -07:00
Josh Gao
5a9d5691a4 Fix .clang-format ContinuationIndentWidth.
Change-Id: If41900122accb2c1ebf012bfa07de9b0fa9690fc
2016-06-01 18:20:15 -07:00
Treehugger Robot
676f6e3c7f Merge "Remove libstdc++ include files." 2016-05-27 23:36:18 +00:00
Elliott Hughes
f44b232d85 Remove libstdc++ include files.
We still need <new> for bionic, and to build libstdc++.

Change-Id: Ic7b26340576a5355007a06db9c1bec395be49ae1
2016-05-27 15:49:31 -07:00
Elliott Hughes
2f82dc50ed Merge "Improve diagnostics from the assembler __strcpy_chk routines." 2016-05-27 15:19:09 +00:00
Colin Cross
7510c33b61 Remove deprecated Android.mk files
These directories all have Android.bp files that are always used now,
delete the Android.mk files.

Change-Id: Ib0ba2d28bff88483b505426ba61606da314e03ab
2016-05-26 16:41:57 -07:00
Elliott Hughes
bdd8f896dd Improve diagnostics from the assembler __strcpy_chk routines.
Change-Id: Ib95b598f7f8338cc1a618c00232a4259dc4a6319
2016-05-26 16:38:34 -07:00
Treehugger Robot
a3c2df9378 Merge "Improve diagnostics from the assembler __strcat_chk routines." 2016-05-26 23:01:25 +00:00
Elliott Hughes
c75da09f4f Improve diagnostics from the assembler __strcat_chk routines.
Change-Id: I44cbe5389c66de6618e581a6e302eea22c39d6fb
2016-05-26 14:55:00 -07:00
Treehugger Robot
fdedd86070 Merge "Update the "adding a syscall" docs." 2016-05-26 21:41:21 +00:00
Elliott Hughes
e2bfe2afaf Update the "adding a syscall" docs.
Change-Id: I78adafb1c1c491f641a82a02ad7f03cd3f8c7d1e
2016-05-26 13:55:37 -07:00
Treehugger Robot
8c2467ae07 Merge "Don't use __u64/__u32 in <sys/user.h>." 2016-05-26 00:19:14 +00:00
Josh Gao
bb129214ad Don't use __u64/__u32 in <sys/user.h>.
The typedefs for __u64 and __u32 aren't in scope in this file, so
switch fields declared with these to use the matching underlying type.

Bug: http://b/28178111
Change-Id: Id4eec1f7dc81d77e78043227c15e621debe3a48a
2016-05-25 15:25:13 -07:00
Christopher Ferris
e85de5b103 Merge "Update documentation for malloc debug." 2016-05-25 20:37:46 +00:00
Christopher Ferris
eab4803290 Update documentation for malloc debug.
Add a new document that describes the previous version of malloc debug.

Add a small update to the current documentation to indicate it only
applies to N and later.

Change-Id: Ief74c253ba79018777aa688bde7f5b35319fa4d4
2016-05-25 13:34:54 -07:00
Dimitry Ivanov
5fa5717674 Merge "Correctly handle the case of empty LD_PRELOAD entries" 2016-05-24 23:13:06 +00:00
Dimitry Ivanov
d799b2bb7e Correctly handle the case of empty LD_PRELOAD entries
Previous android versions ignored empty entries for LD_PRELOAD

Bug: http://b/28936779
Change-Id: I757478fe0c604ee378186511cb13b757fd9a9864
2016-05-24 14:45:46 -07:00
Treehugger Robot
d1c96e2159 Merge "Change use of /data to /data/local/tmp." 2016-05-23 21:39:22 +00:00
Treehugger Robot
878004f5b0 Merge "Run fsync tests on mutable filesystem." 2016-05-23 20:36:33 +00:00
Christopher Ferris
a948a4e050 Change use of /data to /data/local/tmp.
The unistd fsync/fdatasync were changed to use /data from /.
Unfortunately, this directory is unreadable unless you are root, so
change this path to /data/local/tmp.

Bug: 28885777
(cherry picked from commit 7e53843f7b)

Change-Id: I14514e985af8039ab63ac2bcf890f8d04dd82ccb
2016-05-23 12:53:42 -07:00
Shuhei Takahashi
2e6e99128a Run fsync tests on mutable filesystem.
The purpose of those tests is to ensure fsync succeeds for
directories. However, they try to call fsync for / (the root
filesystem) that is usually mounted read-only, which does not
make sense because the whole point of fsync is to flush
uncommitted changes to the filesystem.

In fact, some well-known read-only filesystems (e.g. squashfs)
does not support fsync, so these tests fail if we use such
filesystems as the root filesystem.

This patch changes the tests to call fsync against /data
instead. /data is a user data partition and should be always
mounted read-write.

Bug: 28681455

(cherry picked from commit cfa3262ce4)

Change-Id: I3e50f7b6ef07e96138711eef1f678f90cc9eb632
2016-05-23 12:53:16 -07:00
Dimitry Ivanov
ccfcc8ced7 Merge "Do not resolve caller_ns when it is not needed" 2016-05-23 19:35:45 +00:00
Treehugger Robot
c7e0ae064d Merge "Make all rt_sigtimedwait signatures match." 2016-05-23 19:16:26 +00:00
Elliott Hughes
8963dd337e Make all rt_sigtimedwait signatures match.
There's no change to the generated stubs, because the script only cares
that this is a pointer type, not what it's a pointer to.

Change-Id: I766720965f0f3d201fc90677a076b26870485377
2016-05-23 11:20:19 -07:00
Dimitry Ivanov
5240863ed5 Do not resolve caller_ns when it is not needed
create_namespace resolves caller namespace only
when caller did not explicitly specify parent namespace.

This saves about 25 microseconds for the case when
parent_namepsace is not null (for example when creating
second classloader for the app).

Bug: http://b/28801010
Change-Id: I50ded272c931db701e5a1d8c88ed5ffb13416539
2016-05-23 10:31:11 -07:00
Christopher Ferris
51ee871e19 Merge "Updated to v4.4.11 kernel headers." 2016-05-20 01:27:47 +00:00
Christopher Ferris
82ef6a19cb Updated to v4.4.11 kernel headers.
Change-Id: I6b55a921670d32d7bfff3c304d8001058409d3f7
2016-05-19 17:03:14 -07:00
Treehugger Robot
3c095578ee Merge "Do not check zip-entry validity on create_namespace" 2016-05-19 18:42:34 +00:00
Dimitry Ivanov
d2205a641c Do not check zip-entry validity on create_namespace
This operation is the most expensive one and since it is
unlikely that the zip-entry name is invalid (given that it
is constructed by the platform) - it can removed.

The worst case scenario is dlopen() of non-existing libraries
taking more time. And this use-case is not on the critical path.

Bug: http://b/28801010
Change-Id: I10a6b0bf342404ab72f0f5102ebf19f6c06ee6bf
(cherry picked from commit a5c1c8e820)
2016-05-19 10:47:23 -07:00
Treehugger Robot
7d99bd38e4 Merge "Force clang for bionic" 2016-05-18 21:58:59 +00:00
Colin Cross
5a22d3e13d Force clang for bionic
Bionic will only compile with clang, and Android.mk files force clang,
turn it on in Android.bp.

Change-Id: I9db06298adfeab4eeef031d88aa310776cad3af0
2016-05-18 14:06:22 -07:00
Treehugger Robot
42abf3d241 Merge "linker: Allow caller to specify parent namespace" 2016-05-17 22:43:01 +00:00
Dimitry Ivanov
49fbce11e6 Merge "Fix dlopen of main executable by absolute path" 2016-05-17 22:25:48 +00:00
Dimitry Ivanov
2ba1cf39ae Fix dlopen of main executable by absolute path
This CL adds initialization of inode for the main executable
which enables linker to resolve the correct soinfo when
application calls dlopen with absolute path to the
main executable.

Bug: http://b/28420266
Change-Id: I102e07bde454bd44c6e46075e3faeeb5092830d8
2016-05-17 13:55:46 -07:00
Dimitry Ivanov
fc2da53440 linker: Allow caller to specify parent namespace
This change enables apps to share libraries opened
with RTLD_GLOBAL between different classloader namespaces.

The new parameter to create_namespace allows native_loader
to instruct the linker to share libraries belonging to
global group from a specified namespace instead of
using the caller_ns.

Bug: http://b/28560538
Bug: https://code.google.com/p/android/issues/detail?id=208458
Change-Id: I5d0c62730bbed19cdeb16c7559c74aa262a2475f
2016-05-17 13:37:03 -07:00