History log of /system/core/liblog/fake_log_device.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
facf94c74a2cc44f294c4789d36d5c7281c7bc3f 01-Mar-2016 Mark Salyzyn <salyzyn@google.com> liblog: split out transports into separate files

(cherry pick from commit 018a96d03f0d452bf078084eedcd5693da42308d)

Create config_logger, logger and logger_read to house the log
interfaces. Add fake_logger, logd_logger and pmsg_logger to
house the write and read transports. Allows for an easier and
direct path to add new transports to the library.

SideEffects: None, logger benchmark performance unaffected

Bug: 27176738
Bug: 27405083
Change-Id: I01b38637334a5242905c8c89f6ab0a92e2540008
/system/core/liblog/fake_log_device.c
6d753faaf8694792433eb78c5c3572efd74a3d54 10-Mar-2016 Mark Salyzyn <salyzyn@google.com> liblog: audit declare LIBLOG_ABI_PUBLIC

(cherry pick from commit be1d3c21b57d3e67c6a9682f3b2f0838486a3ee8)

- replace <sys/cdefs.h> with local "log_cdefs.h" which
fortifies and expands definitions, adding LIBLOG_ABI_PUBLIC,
LIBLOG_HIDDEN, LIBLOG_ABI_PRIVATE and LIBLOG_WEAK.
- clearly tag each interface as LIBLOG_ABI_PUBLIC, LIBLOG_HIDDEN,
LIBLOG_ABI_PRIVATE, LIBLOG_WEAK or static depending on scope
- Add -fvisibility=hidden to ensure nothing else leaks
- some code standard adjustments

Bug: 27566046
Change-Id: Ic14033c4e6d833d973beb035ddc1c6134fb35a3f
/system/core/liblog/fake_log_device.c
029c7373801b9e1791df334efa36588c216b4ab2 16-Feb-2016 Mark Salyzyn <salyzyn@google.com> liblog: document fakeLogClose never to be called

(cherry pick from commit bc81b17e06cb23501eeca03a530b3a90858ac7c3)

Bug: 27107691
Change-Id: Ia699646ec2e83ca46f8b62b5d4f144e533b36074
/system/core/liblog/fake_log_device.c
8edbbe1dc148006e4cd588f42f580bfdaa7ae585 17-Feb-2016 Mark Salyzyn <salyzyn@google.com> fake_log_device: long lived allocations

(cherry pick from commit 0085a135b9986c969067aa89c4c9985fe5233870)

Use static space for long lived allocations as they
will appear to act like a memory leak. Resort to a
larger on-stack iovec to reduce the chances of an
allocation. Fix bug in writer where not enough size
was available for "security" buffer name. Minor
transitions to more consistent coding style.

Bug: 27107691
Change-Id: I68c918e7b916b1ae3b04829d48b3eddaa0a7e739
/system/core/liblog/fake_log_device.c
9dddd137c72a989b414c1bc8e928fb67ee46fac3 04-Feb-2016 Dan Willemsen <dwillemsen@google.com> Fix windows 64-bit builds

pid_t is 64-bit in 64-bit mingw, but the windows process/thread
functions return a DWORD(uint32_t). Instead of promoting to a pid_t and
fixing the format strings, just use a uint32_t to store the values.

android_thread_id also cannot be a 64-bit pointer, so for windows just
force it to be a uint32_t.

libutils/ProcessCallStack only works under Linux, since it makes heavy
use of /proc. Don't compile it under Windows or Darwin.

Bug: 26957718

(cherry picked from commit 86cf941c480de8d5693a24d3feb45574f5c89a86)

Change-Id: I8d39d1951fea1b3011caf585c983e1da7959f7c0
/system/core/liblog/fake_log_device.c
b7a0166b0093cf35b8d808f7bfb79e94222805df 19-Feb-2016 Mark Salyzyn <salyzyn@google.com> liblog: deal with warning messages

(cherry pick from commit b525884edb1f8a80a8fc6cad58c69bdacc5bdb90)

- Fix bug in fake_log_devices when it can not allocate memory
failing to use the full on-stack buffer as backup.
- remove superfluous code.

Bug: 27265662
Change-Id: I97b6cca5f4ce8ecad9beb3a08353de596d6a4ad1
/system/core/liblog/fake_log_device.c
2d2e0a5c5eb0b0ea2fe1349da50e22228965faf9 06-Nov-2015 Mark Salyzyn <salyzyn@google.com> liblog: resolve deadlocks

Although ever present, an increased regression introduced with
commit b6bee33182cedea49199eb2252b3f3b442899c6d (liblog: logd:
support logd.timestamp = monotonic).

A signal handler can interrupt in locked context, if log is written
in the signal handler, we are in deadlock. To reduce the contention
and chances for this problem separate out timestamp lock from is
loggable lock to reduce contention situations. Provide a best-guess
response if lock would fail in timestamp path.

Use a common lock() inline within each module, with a comment speaking
to the issues surrounding calling a function that has a mutex within
a signal handler.

ToDo: Hold off signals temporarily in mainline, restart when unblock.
Can not use pthread_sigmask(SIG_BLOCK,,) as it breaks AtCmd.

Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 25563384
Change-Id: I47e2c87c988c3e359eb9eef129c6a3a08e9eedef
/system/core/liblog/fake_log_device.c
c2e7d4965f86dbe90cece6d25e91d934a698d195 16-Nov-2015 Mark Salyzyn <salyzyn@google.com> Revert "liblog: resolve deadlocks"

This reverts commit 7a2a3071921b11d7e476862e7f9cbe72be43d0f7.

Bug: 25693940
Change-Id: I9a7c926289e972f80c03c92e33535e1dedaa7381
/system/core/liblog/fake_log_device.c
7a2a3071921b11d7e476862e7f9cbe72be43d0f7 06-Nov-2015 Mark Salyzyn <salyzyn@google.com> liblog: resolve deadlocks

Although ever present, an increased regression introduced with
commit b6bee33182cedea49199eb2252b3f3b442899c6d (liblog: logd:
support logd.timestamp = monotonic).

A signal handler can interrupt in locked context, if log is written
in the signal handler, we are in deadlock. Block signals while we
are locked. Separate out timestamp lock from is loggable lock to
reduce contention situations. Provide a best-guess response if
lock would fail in timestamp path.

Bug: 25563384
Change-Id: I6dccd6b99ebace1c473c03a785a35c63ed5c6a8a
/system/core/liblog/fake_log_device.c
956870518ee89b5302b8409ac78f287bf091d9ed 02-Oct-2014 Mark Salyzyn <salyzyn@google.com> liblog: add __android_log_is_loggable()

- Add new liblog API __android_log_is_loggable(prio, tag, def)
- future plan to integrate this into the runtime checks and into
the logd daemon for filtration. Inert for now.

Bug: 17760225
Change-Id: I16395b4d42acc08f0209f55a1cbf87b0b2112898
/system/core/liblog/fake_log_device.c
4a6e5a3b641dd99b658c4c336490371a3a5ae180 27-Jan-2015 Yabin Cui <yabinc@google.com> Kill HAVE_PTHREADS.

Bug: 19083585
Change-Id: Ic09eb3dd250bc5c5b63cac7998f99f5fa007f407
/system/core/liblog/fake_log_device.c
2a5fecb3cd0b44432836619d77837b1aca299e89 25-Nov-2014 Elliott Hughes <enh@google.com> Only Win32 doesn't have writev.

Change-Id: I9b5328cea3c88a75135dcb0711cbb5471e8fa388
/system/core/liblog/fake_log_device.c
8a98535bcb48dfd4bfe3dfddddc82925a2f1502b 13-Nov-2014 Yabin Cui <yabinc@google.com> kill HAVE_LOCALTIME_R

Bug: 18361583
Change-Id: Icdc745a5204bba26c6438d16ed38ec791e136163
/system/core/liblog/fake_log_device.c
a04464adaf5b95ae953f8577632d3cf8aa2c80a3 30-Apr-2014 Mark Salyzyn <salyzyn@google.com> liblog: set -Werror

- Deal with some -Wunused issues
- Cleanup UNUSED to __unused transition

Change-Id: Icd33808d4c974625f4fd0a126a90a2b4c90c8314
/system/core/liblog/fake_log_device.c
d2acdd82e613b3e1d79a00943ac3bf5fbc14a766 28-Jan-2014 Mark Salyzyn <salyzyn@google.com> Merge changes I70ab37d5,I716f89c0,I34c96adf,I77650923,I35b0d1ee, ...

* changes:
libsysutils: SocketListener export release
libsysutils: Add iovec/runOnEachSocket
liblog: support struct logger_event_v2 format
liblog: update timestamp on NOTICE file
libcutils: resolve warning in iosched_policy.c
liblog: Add const pedantics
logcat: Add -T flag (-t w/o assumption of -d)
logcat: Add logcat test suite
liblog: Add cpu utilization test
liblog: Add liblog test suite
debuggerd: Support newline split in log messages
liblog: deprecate export LOGGER ioctl definitions
liblog: deprecate export of LOGGER_LOG_* defines
liblog: Add README
liblog: resolve build warning messages
liblog: high CPU usage from logcat
liblog: fix build again
liblog: drop use of sys/cdefs.h
liblog: git_master@964770 build problem
logcat: Incorporate liblog reading API
debuggerd: Incorporate liblog reading API
liblog: Interface to support abstracting log read
adb: deprecate legacy log service interface
adb: regression from Move list.c to inlines
liblog: whitespace cleanup
libcutils: bug str_parms.c:str_parms_get_float().
libcutils: UNUSED argument warnings
libsysutils: Get rid of warnings
libcutils: Move list.c to inlines on list.h
b5a9890f900a5e2b53e91e6d63f3ade23240f90d 28-Jan-2014 Kristian Monsen <kristianm@google.com> Fixes some warnings

- Implicit decleared function
- Unused variable

Change-Id: Ia701e66682cb6788f0716a2ef7556ed07227f78f
/system/core/liblog/fake_log_device.c
168021c2827312e17a13d77b54f7d030a08b257b 06-Jan-2014 Mark Salyzyn <salyzyn@google.com> liblog: resolve build warning messages

(cherry picked from commit 153b370624c3da0660281f692fbe3f2da96cfd70)

Change-Id: Icc6f1f2c926a008efc4df71022cfde8d0e285880
/system/core/liblog/fake_log_device.c
9227bd385504ace739d4451a6c5dc3d777b5bf21 24-Jul-2013 Colin Cross <ccross@android.com> Move liblog headers to system/core/include/log

Move the liblog headers to log/ instead of cutils/ to complete
the separation of libcutils and liblog. cutils/log.h still
exists and includes log/log.h in order to support the many existing
modules that use cutils/log.h.

Change-Id: I2758c9f4aedcb809ca7ba8383d0f55041dd44345
/system/core/liblog/fake_log_device.c
d2c8f52189f8c2a13b88a107c6495f9d83196d2d 28-Feb-2012 Andrew Hsieh <andrewhsieh@google.com> Fixed two 64-bit porting issues; Make pid/tid type consistent

1. In printf, use "%zu" for variable of type size_t
2. Print tid in %5d
3. Make type of pid/tid in AndroidLogEntry and logger_entry consistent

Change-Id: I3e3d9536ee58823f349a4734ae093d30eabe1bfe
/system/core/liblog/fake_log_device.c
7b023b293b3252feddab29b0672524a341494b9e 27-Jun-2011 Brett Chabot <brettchabot@android.com> Fix SDK build.

Revert "Fix build warnings"

This reverts commit 590e364868b6466e169f2647e95462ba2558dd00.
/system/core/liblog/fake_log_device.c
590e364868b6466e169f2647e95462ba2558dd00 24-Jun-2011 Glenn Kasten <gkasten@google.com> Fix build warnings

Change-Id: Ie24cf8e729813e4527c698fc7c1502a1efbc63e5
/system/core/liblog/fake_log_device.c
2a7f2ae7d4b25f89e36be04e47b9e7a3d76e0cfd 10-Apr-2010 Carl Shapiro <cshapiro@google.com> Fix a long standing bug in the output buffer size computation.

Change-Id: I55aca04fdd3822ac06db183bf2ff0cbd61f778e8
/system/core/liblog/fake_log_device.c
dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/system/core/liblog/fake_log_device.c
e54eebbf1a908d65ee8cf80bab62821c05666d70 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/system/core/liblog/fake_log_device.c
4f6e8d7a00cbeda1e70cc15be9c4af1018bdad53 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/system/core/liblog/fake_log_device.c