Systemd/src/journal
Lennart Poettering e22aa3d328 journald: never block when sending messages on NOTIFY_SOCKET socket
Otherwise we might run into deadlocks, when journald blocks on the
notify socket on PID 1, and PID 1 blocks on IPC to dbus-daemon and
dbus-daemon blocks on logging to journald. Break this cycle by making
sure that journald never ever blocks on PID 1.

Note that this change disables support for event loop watchdog support,
as these messages are sent in blocking style by sd-event. That should
not be a big loss though, as people reported frequent problems with the
watchdog hitting journald on excessively slow IO.

Fixes: #1505.
2015-11-01 22:12:29 +01:00
..
.gitignore Add audit type generated files to gitignore 2015-05-05 22:41:42 -04:00
audit-type.c journal: use audit event names instead of numbers 2015-04-23 23:54:21 -04:00
audit-type.h journal: use audit event names instead of numbers 2015-04-23 23:54:21 -04:00
cat.c util-lib: split out syslog-related calls into syslog-util.[ch] 2015-10-27 13:25:57 +01:00
catalog.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
catalog.h hashmap: introduce hash_ops to make struct Hashmap smaller 2014-09-15 16:08:50 +02:00
compress.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
compress.h tree-wide: never use the off_t unless glibc makes us use it 2015-09-10 18:16:18 +02:00
coredump-vacuum.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
coredump-vacuum.h tree-wide: never use the off_t unless glibc makes us use it 2015-09-10 18:16:18 +02:00
coredump.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
coredump.conf Do not advertise .d snippets over main config file 2015-03-03 19:10:21 -05:00
coredumpctl.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
fsprg.c remove unused includes 2015-02-23 23:53:42 +01:00
fsprg.h util-lib: split out globbing related calls into glob-util.[ch] 2015-10-27 13:25:58 +01:00
journal-authenticate.c util-lib: split out hex/dec/oct encoding/decoding into its own file 2015-10-27 13:25:55 +01:00
journal-authenticate.h remove unused includes 2015-02-23 23:53:42 +01:00
journal-def.h util-lib: split out fd-related operations into fd-util.[ch] 2015-10-25 13:19:18 +01:00
journal-file.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journal-file.h journal: fix error handling when compressing journal objects 2015-10-24 13:19:42 +02:00
journal-internal.h util-lib: split our string related calls from util.[ch] into its own file string-util.[ch] 2015-10-24 23:05:02 +02:00
journal-qrcode.c Use stdint.h macros instead of casts to print uint64_t values 2013-06-10 10:10:07 -04:00
journal-qrcode.h util-lib: split out fd-related operations into fd-util.[ch] 2015-10-25 13:19:18 +01:00
journal-send.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journal-vacuum.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journal-vacuum.h journal: rework vacuuming logic 2015-10-02 23:21:59 +02:00
journal-verify.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journal-verify.h
journalctl.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-audit.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-audit.h journald: don't pass around SO_TIMESTAMP timestamp for audit, which we don't have anyway 2014-11-04 00:32:02 +01:00
journald-console.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-console.h journald: constify all things! 2014-11-03 21:51:28 +01:00
journald-gperf.gperf journal: rework vacuuming logic 2015-10-02 23:21:59 +02:00
journald-kmsg.c util-lib: split out printf() helpers to stdio-util.h 2015-10-27 13:25:57 +01:00
journald-kmsg.h journald: constify all things! 2014-11-03 21:51:28 +01:00
journald-native.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-native.h journald: constify all things! 2014-11-03 21:51:28 +01:00
journald-rate-limit.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-rate-limit.h remove unused includes 2015-02-23 23:53:42 +01:00
journald-server.c journald: never block when sending messages on NOTIFY_SOCKET socket 2015-11-01 22:12:29 +01:00
journald-server.h journald: never block when sending messages on NOTIFY_SOCKET socket 2015-11-01 22:12:29 +01:00
journald-stream.c journald: never block when sending messages on NOTIFY_SOCKET socket 2015-11-01 22:12:29 +01:00
journald-stream.h journald: never block when sending messages on NOTIFY_SOCKET socket 2015-11-01 22:12:29 +01:00
journald-syslog.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-syslog.h import: introduce new mini-daemon systemd-importd, and make machinectl a client to it 2015-01-22 04:02:07 +01:00
journald-wall.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
journald-wall.h journald: constify all things! 2014-11-03 21:51:28 +01:00
journald.c journald: never block when sending messages on NOTIFY_SOCKET socket 2015-11-01 22:12:29 +01:00
journald.conf journal: rework vacuuming logic 2015-10-02 23:21:59 +02:00
lookup3.c
lookup3.h Add __attribute__((const, pure, format)) in various places 2013-05-02 22:52:09 -04:00
Makefile
mmap-cache.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
mmap-cache.h remove unused includes 2015-02-23 23:53:42 +01:00
sd-journal.c util-lib: move inotify-related definitions to fs-util.[ch] 2015-10-27 14:58:05 +01:00
stacktrace.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
stacktrace.h coredump: include stacktrace of coredumps in the log message 2014-06-19 12:38:45 +02:00
test-audit-type.c journal: use audit event names instead of numbers 2015-04-23 23:54:21 -04:00
test-catalog.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-compress-benchmark.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-compress.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-coredump-vacuum.c tree-wide: never use the off_t unless glibc makes us use it 2015-09-10 18:16:18 +02:00
test-journal-enum.c util-lib: split our string related calls from util.[ch] into its own file string-util.[ch] 2015-10-24 23:05:02 +02:00
test-journal-flush.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-journal-init.c util-lib: split string parsing related calls from util.[ch] into parse-util.[ch] 2015-10-27 13:25:55 +01:00
test-journal-interleaving.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-journal-match.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-journal-send.c util-lib: split out fd-related operations into fd-util.[ch] 2015-10-25 13:19:18 +01:00
test-journal-stream.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-journal-syslog.c util-lib: split out allocation calls into alloc-util.[ch] 2015-10-27 13:45:53 +01:00
test-journal-verify.c util-lib: split out fd-related operations into fd-util.[ch] 2015-10-25 13:19:18 +01:00
test-journal.c journal: rework vacuuming logic 2015-10-02 23:21:59 +02:00
test-mmap-cache.c util-lib: move more file I/O related calls into fileio.[ch] 2015-10-27 13:25:55 +01:00