Commit graph

36359 commits

Author SHA1 Message Date
Zijun Zhao
63a79a3af5 Merge "Add copy_file_range(2) syscall stub to bionic." am: 3d425bb8fb
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2073827

Change-Id: I8961ea4996a93e7a0ae641ead2965da8f95dd67c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-12 17:56:14 +00:00
Zijun Zhao
3d425bb8fb Merge "Add copy_file_range(2) syscall stub to bionic." 2022-05-12 17:20:55 +00:00
zijunzhao
c2e412e086 Add copy_file_range(2) syscall stub to bionic.
Test: treehugger
Bug: https://buganizer.corp.google.com/issues/227784687
Change-Id: I543306cd2234189401bf7c9d80d405eeb6e4d41d
2022-05-12 16:53:41 +00:00
Christopher Ferris
1dcb2b1d6c Merge "Add option to force memunreachable check." am: bcd8f15e27
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2092709

Change-Id: I5145f6534f579a40aeee0bf5dbbccefac9332c35
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-12 00:54:32 +00:00
Christopher Ferris
bcd8f15e27 Merge "Add option to force memunreachable check." 2022-05-11 23:28:21 +00:00
Florian Mayer
122ac31625 Merge "Remove unnecessary static variable." am: 55d286e98a
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2094525

Change-Id: I397b1c89d7d0911c1836b65b5c7b832787669892
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-11 01:56:51 +00:00
Florian Mayer
55d286e98a Merge "Remove unnecessary static variable." 2022-05-11 01:22:19 +00:00
Treehugger Robot
86810ce097 Merge "Improve the "how to add a system call" doc" am: 08bbabcc45
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2095023

Change-Id: Iec123f5a053915b362cfbd096145c9180c040d33
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-11 00:42:22 +00:00
Christopher Ferris
b42e8b4dec Add option to force memunreachable check.
The new option is named check_unreachable_on_signal. It is meant
to duplicate dumpsys meminfo --unreachable <PID> for non-java
processes. When enabled, a user can send a signal to a process
which will trigger the unreachable check on the next allocation
call.

Added new unit tests.

Test: New unit tests pass.
Test: Enabled for the entire system, then dumped on the netd
Test: process and also system_server.
Change-Id: I73561b408a947a11ce21a211b065d59fcc39097b
2022-05-10 17:37:19 -07:00
Treehugger Robot
08bbabcc45 Merge "Improve the "how to add a system call" doc" 2022-05-11 00:20:54 +00:00
Alix Espino
815445c51b Merge changes I158862fd,Ieb9de996 am: 6087a278e0
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2075515

Change-Id: Ie689a684e7efa7d363657874cb6179c6ed4c0991
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-10 22:56:20 +00:00
Alix Espino
6087a278e0 Merge changes I158862fd,Ieb9de996
* changes:
  Removing clang_cflags to check if they're even necessary
  Moved contents of clang_cflags into cflags
2022-05-10 22:17:26 +00:00
zijunzhao
e5e1e4e55a Improve the "how to add a system call" doc
Test: None
Bug: None
Change-Id: Ie4212956836ae057009e6985812efcbbb7859dea
2022-05-10 22:07:31 +00:00
Florian Mayer
3c0f0969b9 Remove unnecessary static variable.
Change-Id: I1e0049895fc493f5e8b728707a076d5ad022f8c1
2022-05-10 20:57:13 +00:00
Treehugger Robot
9ffb887aa3 Merge "add new Linux close_range() system call to bionic" am: c66cb5ba6a
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1957446

Change-Id: I45251562b5b51e8b19ed778607aad790c057d478
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-06 22:43:30 +00:00
Treehugger Robot
c66cb5ba6a Merge "add new Linux close_range() system call to bionic" 2022-05-06 22:25:26 +00:00
Maciej Żenczykowski
b65e105047 add new Linux close_range() system call to bionic
See:
  https://man7.org/linux/man-pages/man2/close_range.2.html

Note: 'man close_range' documents 'flags' as unsigned int,
while glibc unistd.h as just 'int'.  Picking 'int' to match glibc,
though it probably doesn't matter.

BYPASS_INCLUSIVE_LANGUAGE_REASON=man is a cli command
Test: TreeHugger
Bug: 229913920
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I1e2d1c8edc2ea28922d60f3ce3e534a784622cd1
2022-05-06 10:33:04 +00:00
Christopher Ferris
61125825f1 Merge "Mangle the pointers stored in PointerData." am: de9fe1e2de
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2086791

Change-Id: I5ab322cba490aeb3238b711eefdeba1ac876ac24
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-05 19:35:04 +00:00
Christopher Ferris
de9fe1e2de Merge "Mangle the pointers stored in PointerData." 2022-05-05 19:12:29 +00:00
Christopher Ferris
f78486f40e Mangle the pointers stored in PointerData.
The libmemunreachable library looks through memory to determine
if pointers are leaked. Unfortunately, the malloc debug code
stores the original pointer in data structures, so it looks like
pointers are still in use. The fix is to mangle the pointers
stored in memory so that it doesn't trick the library into thinking
they are live.

Test: All unit/system tests pass.
Test: Ran libmemunreachable and verified leaks show up.
Change-Id: Ic40a0a5ae73857cde936fd76895d88829686a643
2022-05-04 17:07:40 -07:00
Ryan Prichard
d48b212eaf Merge "legacy strtof inline: don't set errno for "inf"" am: 0e91012d42
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2080270

Change-Id: I421e1dfaddc90b78053b4be0c9590dcd5671872e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-04 23:08:48 +00:00
Ryan Prichard
0e91012d42 Merge "legacy strtof inline: don't set errno for "inf"" 2022-05-04 22:47:08 +00:00
Elliott Hughes
f231c79c8f Merge "seccomp: allow stat() for ubsan." am: 082b9290d0
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2081859

Change-Id: I5d5e07f4607673ea565db1454c9c58ed3529b55f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-04 17:09:09 +00:00
Elliott Hughes
082b9290d0 Merge "seccomp: allow stat() for ubsan." 2022-05-04 16:35:26 +00:00
Alix
9dff7da04c Removing clang_cflags to check if they're even necessary
Test: Treehugger & ran mma
Bug: 226636335

Change-Id: I158862fd23ad7050bde0916f24e12934b95f7646
2022-05-03 22:52:50 +00:00
Alix
d256925af4 Moved contents of clang_cflags into cflags
Test: Treehugger
Bug: 226636335
Change-Id: Ieb9de996a61418c8343885ae339589f0f48342d5
2022-05-03 22:50:24 +00:00
Treehugger Robot
08b0b29b7e Merge "Properly fix heap_tagging_helper for HWASan." am: 0f6d493d28
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2083905

Change-Id: I851c7f6a7893b1906bb0791892c33d1a2a29d793
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-03 05:58:48 +00:00
Treehugger Robot
0f6d493d28 Merge "Properly fix heap_tagging_helper for HWASan." 2022-05-03 05:34:16 +00:00
Maciej Żenczykowski
e65715094f Merge "allowlist new Linux close_range() system call, use it in posix_spawn()" am: 668c061986
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2072627

Change-Id: Ib2eacfc5e3bd1a455a83777cebf99e1ecf3ed2fc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-02 21:31:06 +00:00
Florian Mayer
e2d50fe622 Properly fix heap_tagging_helper for HWASan.
Test: atest bionic-unit-tests
Change-Id: Ia9fbb436676257810d1c379d5d65dd7ccfcf90ac
2022-05-02 18:35:50 +00:00
Elliott Hughes
a0745cea5f seccomp: allow stat() for ubsan.
We've had complaints about ubsan issues for years, but never got to the
bottom of them, or saw them ourselves in testing. For some reason (still
not understood) we've started to see this ourselves in T and downstream
branches. So for now, let's just punch that extra hole.

Longer term, ubsan should stop needing any of this, so once
https://reviews.llvm.org/D124212 is in an LTS NDK, we should be able to
get rid of this _and_ the existing sanitizer-related holes.

Bug: https://github.com/android/ndk/issues/1298
Bug: http://b/229989971
Test: treehugger
Change-Id: Id42cb29c4e943c0080c0d34ce4e5d6d1b32da9e8
2022-04-29 15:48:08 -07:00
Maciej Żenczykowski
668c061986 Merge "allowlist new Linux close_range() system call, use it in posix_spawn()" 2022-04-29 07:07:16 +00:00
Ryan Prichard
88134649ee legacy strtof inline: don't set errno for "inf"
Bug: https://github.com/android/ndk/issues/415
Test: libc++'s std/strings/string.conversions/stof.pass.cpp
Change-Id: I2c6bab9e31fb1c916be991f72b04735b5df279c2
2022-04-28 23:17:33 -07:00
Maciej Żenczykowski
c9c0ebde3c allowlist new Linux close_range() system call, use it in posix_spawn()
Linux kernel's close_range() system call (currently) allows:
  close() unshare() fcntl(F_SETFD, FD_CLOEXEC)
to be performed on ranges of fds.

All 3 of these are already allowed by seccomp bpf:
as such this doesn't allow you to do anything you can't already do.

We can't add close_range() properly to bionic because we'd need to
fiddle about with ltp and it's too late to add new T API anyway,
so let's just make the direct syscall() call.

We'll add proper support in U.

See also:
  https://man7.org/linux/man-pages/man2/close_range.2.html

Test: TreeHugger
Bug: 229913920
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I85586d544fc23bed6aee59f00bdb79ee7a8150d1
2022-04-28 23:33:38 +00:00
Automerger Merge Worker
8534a71752 Merge "Merge "Merge "Fix unistd.exec_argv0_null for new kernels." into android12-tests-dev am: b4cee37d7d" into android12L-tests-dev am: eec0b88f15" am: 966a778a24
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2078360

Change-Id: I9573e57d69a456d1f0b1ffd3575c657bc6c42515
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 22:07:29 +00:00
Treehugger Robot
127dc13b42 Merge "Improve the "how to add a system call" documentation." am: 069a25fe57
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2072701

Change-Id: I27381f3f30507e1d98f32eb92eae74acec959267
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 22:07:19 +00:00
Automerger Merge Worker
966a778a24 Merge "Merge "Merge "Fix unistd.exec_argv0_null for new kernels." into android12-tests-dev am: b4cee37d7d" into android12L-tests-dev am: eec0b88f15" 2022-04-27 21:44:05 +00:00
Automerger Merge Worker
994ccab13e Merge "Merge "Fix unistd.exec_argv0_null for new kernels." into android12-tests-dev am: b4cee37d7d" into android12L-tests-dev am: eec0b88f15
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2078360

Change-Id: I763aa2e4672e54a4fe3df9517b3935740653237e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 21:44:02 +00:00
Treehugger Robot
069a25fe57 Merge "Improve the "how to add a system call" documentation." 2022-04-27 21:40:34 +00:00
Automerger Merge Worker
eec0b88f15 Merge "Merge "Fix unistd.exec_argv0_null for new kernels." into android12-tests-dev am: b4cee37d7d" into android12L-tests-dev 2022-04-27 21:26:56 +00:00
Treehugger Robot
7f7994cd16 Merge "Fix unistd.exec_argv0_null for new kernels." into android12-tests-dev am: b4cee37d7d
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2078360

Change-Id: Ia864567dea05116f0b92edd31f5645edbc82e483
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 21:26:53 +00:00
Treehugger Robot
b4cee37d7d Merge "Fix unistd.exec_argv0_null for new kernels." into android12-tests-dev 2022-04-27 21:07:54 +00:00
Automerger Merge Worker
f75e0b52f9 Merge "Merge "Merge "Merge "Fix unistd.exec_argv0_null for new kernels." into android11-tests-dev am: 9d0912a7b2" into android12-tests-dev am: f14019cf61" into android12L-tests-dev am: dc8f5f7d3a" am: 83e70ab7f3
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2078359

Change-Id: I3a2609c33417459e66c1810a0279fe7efe377fa3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:03:01 +00:00
Automerger Merge Worker
d925a75276 Merge "Merge "Merge "Merge "Merge "Fix unistd.exec_argv0_null for new kernels." into android10-tests-dev am: 16457fd9d0" into android11-tests-dev am: ede618aef2" into android12-tests-dev am: ba0f5b9195" into android12L-tests-dev am: 19dce61545" am: 112a717077
Original change: https://android-review.googlesource.com/c/platform/bionic/+/2078358

Change-Id: Ic273d76bba7d5fe3f0a9714d848c94b589c783db
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:02:49 +00:00
Automerger Merge Worker
7d341ef7a0 Merge "Merge "Merge "Regression test for scudo crash in resizeTaggedChunk." into android12-tests-dev am: d8fa0f64af" into android12L-tests-dev am: 6c73a7ac6f" am: 3e8dfcebfb
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1901121

Change-Id: I42f3e65303c85a39ffc10109b84a346de8032491
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:02:30 +00:00
Automerger Merge Worker
2eaf109a4c Merge "Merge "Merge "Skip the malloc_slack test on native bridge." into android12-tests-dev am: 1623704319" into android12L-tests-dev am: 9ca3b55cc1" am: cf1733aceb
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1854022

Change-Id: I48df9e16ba1205ed10c92d3562a2ceb90955e466
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:02:11 +00:00
Automerger Merge Worker
5847b6fc70 Merge "Merge "Merge "Merge "Merge "Fix possible issue with cfi_basic test." into android10-tests-dev am: 3144bf7b69" into android11-tests-dev am: 9ef57feced" into android12-tests-dev am: 05f451ff40" into android12L-tests-dev am: 68fd586b3a" am: a7e8b92de6
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1450415

Change-Id: I8c4969b5149c7ac643a7c06c149c45eaf69a037d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:01:49 +00:00
Automerger Merge Worker
26d979258e Merge changes from topic "am-492299fff56f41ea80d26768bcc5c005" am: 99eb475597
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1371143

Change-Id: Id04669120b7df2852215c92313f3774ba18ff57a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:01:25 +00:00
Treehugger Robot
cb0cf70f0d [automerger skipped] Merge "Remove stack address check in cfi_basic test." into android10-tests-dev am: c9608ab2e2 -s ours am: 83dd5914ae -s ours am: f1f4c02d31 -s ours am: ef543c40bc -s ours am: 8560b4b39f -s ours
am skip reason: skipped by user eugenis

Original change: https://android-review.googlesource.com/c/platform/bionic/+/1371143

Change-Id: Ia2a94268e0992bc8c161764af4293250ac450e77
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:01:23 +00:00
Automerger Merge Worker
cc0f9f3638 Merge changes from topic "am-c6b8230339e24a95948ea129db34cb0d" am: 3286b39941
Original change: https://android-review.googlesource.com/c/platform/bionic/+/1183110

Change-Id: I83b3c3dfe800a3bab53e51359f2aafef92ab97a3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 20:00:54 +00:00