summaryrefslogtreecommitdiff
path: root/code_coverage/seccomp_policy/code_coverage.arm.policy
diff options
context:
space:
mode:
authorTom Cherry <tomcherry@google.com>2020-05-04 11:13:55 -0700
committerTom Cherry <tomcherry@google.com>2020-05-04 11:19:44 -0700
commit2a7928b1d4cae0d097286c8179fac418b4d72beb (patch)
tree7d8a743e5fafd379c48e94c1a8c10452136d51f4 /code_coverage/seccomp_policy/code_coverage.arm.policy
parentbe4a5437ae11a73aad2d7aa564924efe5156b559 (diff)
logd: remove FlushCommand
This code has evolved to the point that it LogReader::notifyNewLog() executes FlushCommand on every socket. FlushCommand then iterates over all log reader threads in LogTimes and flushes triggers them to flush logs if they match the client. This can be simplified to simply looping over all of the reads in LogTimes. Code readability was the primary motivation here, but note that 64% of LogReader::notifyNewLog() was spent looping over the sockets, and an additional 78% of FlushCommand::runSocketCommand() was spent repeatedly locking and unlocking the LogTimes lock. Overall, this reduces the cost of LogReader::notifyNewLog() in LogListener::onDataAvailable() from 5.91% to 2.93%. This is the critical path for handling incoming log messages, so it's a non-trivial savings. Test: logging unit tests Test: unprivileged clients still cannot view privileged logs Change-Id: Ic7620978a6c23e5e2cb179ff0c42b7cea52fc011
Diffstat (limited to 'code_coverage/seccomp_policy/code_coverage.arm.policy')
0 files changed, 0 insertions, 0 deletions