| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Bug: N/A
Test: builds
Change-Id: I89ad00e1c4c7e0767bc80a7ac7935a4d55e090ac
|
|
|
|
|
|
| |
Bug: N/A
Test: N/A
Change-Id: Ie785058c0f5eb9b4086c98ccba6e63e3ed411b65
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Current results on an aosp_angler (32 bit) :
Benchmark Time CPU Iterations
-----------------------------------------------------------------
BM_android_fork_execvp_ext 15019207 ns 1002131 ns 700
Test: android_fork_execvp_ext_benchmark
Change-Id: I3d4339ff5cbb9a641cbb14f0b55d2b5fc18cdfde
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Should make it easier to switch callers over to posix_spawn once
that's available.
NOTE: The (now) unused arguments will be removed in a followup (multi-project)c
hange once we empirically confirm that there aren't any prebuilt blobs
using this function. I did readelf all currently checked in prebuilts to look
for a reference to this method, but one can never be too paranoid.
Test: make checkbuild
Change-Id: I454d80c52f269c31846133cc54375decd702fe71
|
|
|
|
|
|
| |
Test: compile
Bug: 30465923
Change-Id: Id6d76510819ebd88c3f5003d00d73a0dbe85e943
|
|
|
|
|
|
| |
Bug: http://b/32019064
Test: builds
Change-Id: I18a1d816d63b64601485045070851f32d44e85eb
|
|
|
|
|
|
|
|
|
|
|
| |
Should use android/log.h instead of cutils/log.h as a good example
to all others. Adjust header order to comply with Android Coding
standards.
Test: Compile
Bug: 26552300
Bug: 31289077
Change-Id: I2c9cbbbd64d8dccf2d44356361d9742e4a9b9031
|
|
|
|
|
|
|
| |
These modules have their dependencies satisfied, and aren't doing
anything strange.
Change-Id: I72039a15256cbd5e5eee0d79a15d66d74a6c087d
|
|
|
|
|
|
|
|
|
| |
Before this change, code works like this: after gets POLLHUP from poll, it just
go a busy loop to do poll -> waitpid -> poll -> waitpid ... until child process
really exit. This doesn't make sense and is waste of CPU.
Change-Id: If6cd8b0245587d623e309c3ae27f162e1c7ef504
Signed-off-by: Tao Wu <lepton@google.com>
|
|\
| |
| |
| |
| |
| |
| | |
logwrap.h"
* commit 'eaf04aa0986e069a2ccffb69b94f1e4d6ad6726c':
Add FORK_EXECVP_OPTION_CAPTURE_OUTPUT to logwrap.h
|
| |
| |
| |
| |
| |
| |
| | |
This allows raw popen calls in e.g. system/netd/ to be replaced
with android_fork_execvp_ext().
Change-Id: I159ece7369fa38ff8782024bef0d7cfafe74ecee
|
|\|
| |
| |
| |
| | |
* commit 'd1b11a04903be74ba6a47307d8c3ef2731e3f4ab':
Add |opts| argument to android_fork_execvp_ext
|
| |
| |
| |
| |
| |
| |
| | |
to allow the caller to send data to the child's stdin.
Bug: 21725996
Change-Id: I818f5cf61045286c8d64a91b6d50f05740329be1
|
|\|
| |
| |
| |
| | |
* commit 'ab64465d1f16f414c0bde5e3c4707c32b8220bbc':
Use fsck.f2fs -a instead of -f for faster boot
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
and run fsck with -f on clean shutdown instead.
With -f, fsck.f2fs always performs a full scan of the /data
partition regardless of whether the partition is clean or not.
The full scan takes more than 2 seconds on volantis-userdebug
and delays the OS boot.
With -a, the command does almost nothing when the partition
is clean and finishes within 20-30ms on volantis-userdebug.
When the partition has an error or its check point has
CP_FSCK_FLAG (aka "need_fsck"), the command does exactly the
same full scan as -f to fix it.
Bug: 21853106
Change-Id: I126263caf34c0f5bb8f5e6794454d4e72526ce38
|
|/
|
|
| |
Change-Id: I0fd4d0a03d8c69e1ef2d8192f59893f4bda61691
|
|
|
|
| |
Change-Id: I8fdca8e85056e99e943bdcf93a48574d76addcdc
|
|
|
|
|
|
| |
- Deal with some -Wunused / -Wunused-variable issues
Change-Id: I27a99ffb962289ebbf04b40870b9404842030d2f
|
|
|
|
|
|
|
|
|
| |
This cleans up most of the size-related problems in system/core.
There are still a few changes needed for a clean 64-bit build,
but they look like they might require changes to things like the
fastboot protocol.
Change-Id: I1560425a289fa158e13e2e3173cc3e71976f92c0
|
|
|
|
|
|
|
|
|
| |
Use of ECHILD with no definitive errno.h inclusion.
Explicitly listing the errno.h header file rather
then relying on the inclusion chain to do so.
Change-Id: I5552acd928d17fc62192217a30ff2e4fab0b1936
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The log_target parameter of android_fork_execvp_ext() is now a
bit field, and multiple targets can be set to log to multiple
places at the same time.
The new target LOG_FILE will log to a file specified by the new
parameter file_path.
Set LOG_FILE and log to a file in /dev (the only writable filesystem
avilable when e2fsck runs) when invoking e2fsck in fs_mgr.
Bug: 10021342
Change-Id: I63baf644cc8c3afccc8345df27a74203b44d0400
|
|
|
|
|
|
|
|
|
| |
Also add ability to do abbreviated logging where only the first
4K bytes and last 4K bytes of output are added to the desginated log.
Also update standalog logwrapper command to support the new options.
Change-Id: Ia49cbe58479b9f9ed077498d6852e20b21287bad
|
|
|
|
|
|
|
|
|
| |
Replace the old signal handling mechanism with a check of POLLHUP
to check when the child has died.
See http://b/8333626
Change-Id: Ic9909b6660b1c3d1ed3015568b1a1ee1c25afe20
|
|
|
|
|
|
|
|
|
| |
Add a lock around android_fork_execvp to ensure no two threads can
execute it at the same time.
This is to help with http://b/8333626
Change-Id: I75d087a74b58f5b8e878675b301200f54d976fb2
|
|
|
|
|
|
| |
Makes the code slightly more readable and avoids boilerplate.
Change-Id: I023d9a1e1de729deaec97c62a5ca7983b6918f94
|
|
|
|
|
|
| |
We don't care about exit codes if logwrap output is not requested.
Change-Id: Ibae5fe53527554a1fe865c2058deb0a128a9dde2
|
|
|
|
|
|
|
|
| |
When passing a NULL status to android_fork_execvp the return
status will now be the return value of the child if it exited
properly, otherwise a non-0 value will be returned.
Change-Id: I13309c61b37b6b3f9d5507f7d6484e7b6baaf8d0
|
|
|
|
|
|
|
| |
Also change the quiet flag to a logwrap flag (inverses the meaning of
the boolean).
Change-Id: I76047a7b460f4c28d52f26bfe3f65889d96047f8
|
|
|
|
|
|
|
| |
Add a quiet flag to the logwrap function that prevents messages from
getting logged.
Change-Id: Ic56c011fb608babae32b03900b955833a6bdd070
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
sigprocmask has undefined behavior when called from a thread.
Replacing with pthread_sigmask to ensure correct behavior if
logwrap() gets called from a thread.
Change-Id: I77b6959d345eac8d7b90039ed8144ead8c19a00c
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Wait for the child to exit before propagating SIGINT and SIGQUIT
to the parent
- Add ignore_int_quit argument to logwrap() that gives the caller the
option to ignore SIGINT and SIGQUIT while logwrap is running
Change-Id: If5c96cf23094917211310f00aa6aed515f110f5b
|
|/
|
|
|
|
|
|
| |
Always exit the child process with _exit() rather than exit() to ensure none
of the parent's atexit functions get called if the child needs to exit before
calling exec.
Change-Id: I6a75111ef1bb3468c114c98743565471cf82c9dd
|
|
|
|
|
|
|
|
|
| |
Android allows all users to write to log.
The setuid/setgid call is unneeded and could cause unintended
side effects when called from daemons or programs that need
to run as root.
Change-Id: I3bdb26eaa4363ef037615e45a1a5cb1ceb4088f3
|
|
|
|
|
|
| |
Fix off by 1 argument parsing error in liblogwrap.
Change-Id: I79832ae338a71c445f9f616d780c577826874386
|
|
|
|
|
|
|
|
| |
Switch to a signal handler to monitor SIGCHLD.
Also, clean up the exit path and log a warning when the
previous SIGCHLD sigaction is not default or ignore.
Change-Id: I7ef7daabee18d80e9e82fba3943cf1d03b504ae3
|
|
|
|
|
|
|
|
| |
Sometimes the read on the PTY can wait indefinitely if the child
dies. By using a poll statement that monitors both the output
of the child and its state we prevent this from happening.
Change-Id: I51d5556c66f039bca673145ca72db262977e1689
|
|
|
|
|
|
|
| |
Abstracting the functionality of logwrapper into a library and making
use of it for the logwrapper executable.
Change-Id: I2bcf722413f3a8454c6f52137dec86c4477fb8b5
|
|
|
|
|
|
| |
This reverts commit 4d74bcf4458c4b2c902a3d4f45afbd51f5a3be1e
Change-Id: Ibcd19400cd2589b52df2b3acaba25f02676ba9e0
|
|
|
|
|
|
|
| |
Removing the ability of logwrapper to die with a SIGSEGV at address
"return code from wait".
Change-Id: I563715db2b1e5e789af84190fc2ff78664d63572
|
|
|
|
|
|
|
|
| |
- no info on normal process exit (0)
- basename as tag, not the full path
- fix usage, bad "-x" parameter vs "-d" in code
Change-Id: Ife72729eaee2a366bd4226f3fbe3ba074219c974
|
|
|
|
| |
Change-Id: Ifb82ae2c242becaffa3cf19e548b526e6616c2c7
|
|
|
|
| |
Change-Id: I2bfc6582a8198b22af08e4b8d58f532dc138cc02
|
|
|
|
|
|
|
| |
This makes sure that data sent through logwrapper
is interpreted as strings
Change-Id: Ifafa7c3a39433743250aeb76da3c4d9cce05a13f
|
| |
|
| |
|
| |
|
| |
|