Commit Graph

7920 Commits

Author SHA1 Message Date
Kay Sievers baa30fbc2c udev: switch to systemd logging functions 2012-04-08 16:06:20 +02:00
Kay Sievers 64661ee70d build-sys: bump systemd version to 'udev version 182' 2012-04-06 19:52:49 +02:00
Lennart Poettering e96d6be763 systemd: add hardware watchdog support
This adds minimal hardware watchdog support to PID 1. The idea is that
PID 1 supervises and watchdogs system services, while the hardware
watchdog is used to supervise PID 1.

This adds two hardware watchdog configuration options, for the runtime
watchdog and for a shutdown watchdog. The former is active during normal
operation, the latter only at reboots to ensure that if a clean reboot
times out we reboot nonetheless.

If the runtime watchdog is enabled PID 1 will automatically wake up at
half the configured interval and write to the watchdog daemon.

By default we enable the shutdown watchdog, but leave the runtime
watchdog disabled in order not to break independent hardware watchdog
daemons people might be using.

This is only the most basic hookup. If necessary we can later on hook
up the watchdog ping more closely with services deemed crucial.
2012-04-05 22:15:29 +02:00
Michal Schmidt 348e27fedf job: use a lookup table for merging of job types
It is easier to see what job_type_merge() is doing when the merging
rules are written in the form of a table.

job_type_is_superset() contained redundant information. It can be
simplified to a simple rule: Type A is a superset of B iff merging A
with B gives A.

Two job types are conflicting iff they are not mergeable.

Make job_type_lookup_merge() the core function to decide the type
merging. All other job_type_*() are just short wrappers around it.
They can be inline.

test-job-type gives the same results as before.
btw, the systemd binary is smaller by almost 1 KB.
2012-04-05 11:54:13 +02:00
Kay Sievers b8217b7bd5 update TODO 2012-04-04 14:57:36 +02:00
Kay Sievers d3a2386d15 man: update udev man pages 2012-04-04 14:42:32 +02:00
Kay Sievers 8d62c69d9e build-sys: add a few missing headers 2012-04-04 14:15:36 +02:00
Lennart Poettering 704179d839 units: direct users to the journal for logs when entering rescue mode 2012-04-04 13:52:02 +02:00
Kay Sievers 54cf0b7fa6 udev: replace UDEV_EXPORT with _public_ 2012-04-04 13:30:09 +02:00
Kay Sievers 51fc11c10d udev: ata_id - remove assert() until we switch over to systemd logging 2012-04-04 13:29:37 +02:00
Kay Sievers 0c9507fe24 udev: enable logging 2012-04-04 13:14:29 +02:00
Kay Sievers 8ece4cab42 build-sys: remove vala hack, which did not allow to list headers in sources 2012-04-04 13:07:11 +02:00
Ayan George a985a8f547 keymap: Add support for Lenovo v480 touchpad toggle hotkey.
Signed-off-by: Martin Pitt <martinpitt@gnome.org>
2012-04-04 08:38:38 +02:00
Dave Reisner 9cf2578683 units/: use @SYSTEMCTL@ instead of hardcoded paths
Especially in the case of --enable-split-usr, several units will point
to the wrong location for systemctl. Use @SYSTEMCTL@ which will always
contain the proper path.
2012-04-04 06:46:35 +02:00
Dave Reisner 9b1a953e08 udev: avoid building selinux parts without have_selinux 2012-04-04 06:44:45 +02:00
Kay Sievers 3672af61aa udev: fix path in udev.service 2012-04-04 06:21:23 +02:00
Kay Sievers 4b0060e68b udev: fix gcc warnings 2012-04-04 05:31:21 +02:00
Kay Sievers 6df831f25e Merge branch 'master' of ssh://git.freedesktop.org/git/systemd/systemd 2012-04-04 05:23:51 +02:00
Kay Sievers fc863deada udev: fix gcc warnings 2012-04-04 05:21:35 +02:00
Kay Sievers 3e2147858f move imported udev into place 2012-04-04 05:05:07 +02:00
Lennart Poettering 112301ae44 journal: don't export the boot id twice per entry 2012-04-04 01:00:09 +02:00
Lennart Poettering 6bc3bf5b05 man: document the _TRANSPORT journal field 2012-04-04 00:43:40 +02:00
Lennart Poettering 41048afabb man: clarify the formatting of timestamps 2012-04-03 23:08:04 +02:00
Lennart Poettering feb88c9ff5 man: update documentation of special units 2012-04-03 22:32:05 +02:00
Lennart Poettering ffa16db026 man: document special journal fields 2012-04-03 22:31:48 +02:00
Kay Sievers 19c5f19d69 import udev repository 2012-04-03 21:08:04 +02:00
Lennart Poettering 3eff4208ff logind: log with AUTH facility 2012-04-03 19:26:02 +02:00
Lennart Poettering 3338b9595b fix a couple of AF_UNIX connect() calls 2012-04-03 19:24:12 +02:00
Lennart Poettering ba8d3790e8 journal: in json and export mode use double underscores to prefix location fields
Many programming languages don't allow variable names beginning in dots,
hence let's use double underscores for the location fields instead. This
gets us the simple rule:

__ is the prefix for location fields (i.e. fields that are used to
identify entries, rather than part of the entries)

_ is the prefix for trusted fields (i.e. those fields journald itself
adds to all entries)

no prefix for unrusted fields (i.e. all fields normal client code sends
us)
2012-04-03 18:15:28 +02:00
Lennart Poettering 568b679f2a systemctl: make -f short for both --follow and --force 2012-04-03 14:43:48 +02:00
Lennart Poettering 08f23fd29c update TODO 2012-04-03 14:27:13 +02:00
David Ward 48bb58769a service: schedule JOB_RESTART from SERVICE_AUTO_RESTART state
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=45511
2012-04-03 14:27:13 +02:00
Colin Guthrie 6070fe66ac analyze: Cosmetic exit when the bootup is not yet complete when plotting.
This is just a nicer message than a python traceback.
2012-04-02 22:12:35 +02:00
Michal Schmidt 6008900425 Revert "socket: if we fail to create an instantiated service for a socket, don't put the socket in failure mode"
This reverts commit 9586cdfab6.
(but not the TODO hunk).

The bug was already fixed by 1a710b43. And if other errors occur, we
don't want to leave the socket active in order to avoid having socket
tarpits.
2012-04-02 21:49:00 +02:00
Dave Reisner fb5ef067c4 install: check for proper return from dirent_ensure_type
Fixes 'systemctl list-unit-files', which previously returned only:

  Failed to issue method call: No such file or directory
2012-04-02 21:47:18 +02:00
Lennart Poettering 3cc588803d update TODO 2012-04-02 20:54:15 +02:00
Lennart Poettering b070e7f3c9 journal: implicitly add code location to all messages logged with the native interface
This logic can be turned off by defining SD_JOURNAL_SUPPRESS_LOCATION
before including sd-journal.h.

This also saves/restores errno in all logging functions, in order to be
useful as logging calls without side-effects.

This also adds a couple of __unlikely__ around the early checks in the
logging calls, in order to minimize the runtime impact.
2012-04-02 19:29:48 +02:00
Lennart Poettering 1fa80181ae journal: decrease default mmap window size to allow a bigger number of journals to be traversed in parallel 2012-04-02 19:29:47 +02:00
Dave Reisner dcc219a273 bash-completion: update naming of loginctl
18b754d3 changed the name of systemd-loginctl to loginctl, but didn't
update the bash-completion to match.
2012-04-02 01:25:14 +02:00
Kay Sievers 18b754d345 rename /etc/systemd/systemd-{login,journal}d.conf to {login,journal}d.conf 2012-03-30 23:36:44 +02:00
Michal Schmidt bbd1a8374f job: add debug prints where job type gets changed 2012-03-28 11:13:13 +02:00
Michal Schmidt dd17d38879 job: fix loss of ordering with restart jobs
Suppose that foo.service/start is a job waiting on other job bar.service/start
to finish. And then foo.service/restart is enqueued (not using
--ignore-dependencies).

Currently this makes foo.service start immediately, forgetting about the
ordering to bar.service.

The runnability check for JOB_RESTART jobs looks only at dependencies for
stopping. That's actually correct, because restart jobs should be treated the
same as stop jobs at first. The bug is that job_run_and_invalidate() does not
treat them exactly the same as stop jobs. unit_start() gets called without
checking for the runnability of the converted JOB_START job.

The fix is to simplify the switch in job_run_and_invalidate(). Handle
JOB_RESTART identically to JOB_STOP.
Also simplify the handling of JOB_TRY_RESTART - just convert it to JOB_RESTART
if the unit is active and let it fall through to the JOB_RESTART case.
Similarly for JOB_RELOAD_OR_START - have a fall through to JOB_START.

In job_finish_and_invalidate() it's not necessary to check for JOB_TRY_RESTART
with JOB_DONE, because JOB_TRY_RESTART jobs will have been converted to
JOB_RESTART already.

Speeding up the restart of services in "auto-restart" state still works as
before.

Improves: https://bugzilla.redhat.com/show_bug.cgi?id=753586
but it's still not perfect. With this fix the try-restart action will wait for
the restart to complete in the right order, but the optimal behaviour would be
to finish quickly (without disturbing the start job).
2012-03-28 11:13:13 +02:00
Lennart Poettering 6030831d5b journal: properly handle if we interleave files with different boot ids
If we try to locate a monotonic time in a file that doesn't have any
entries with the matching boot id, then don't fail on it, simply
fall back to calendar time.
2012-03-27 18:50:34 +02:00
Kay Sievers 623ac9d2fc units: mount /tmp as tmpfs
The default setups should be a stateless as possible. /tmp as tmpfs is
the intended default for general purpose systems.

Small temporary files should not be stored on disk; lager files, or
files which should potentially survive a reboot, belong into /var/tmp.

Also catch up with some good old UNIX history.

More details are here:
  https://fedoraproject.org/wiki/Features/tmp-on-tmpfs
2012-03-27 17:30:41 +02:00
Lennart Poettering 55d029addf units: get rid of var-run.mount and var-lock.mount
Since a number of distribitions don't need this compat glue anymore drop
it from systemd upstream. Distributions which still haven't converted
to /run can steal these unit files from the git history if they need to.
2012-03-27 17:11:00 +02:00
Lennart Poettering 231931ffba units: don't mount tmpfs on /media anymore
udisks2 doesn't use /media anymore, instead mounts removable media in a
user-private directory beneath /run. /media is hence mostly obsolete and
hence it makes little sense to continue to mount a tmpfs to it.

Distributions should consider dropping the mount point entirely since
nothing uses it anymore.
2012-03-27 17:04:22 +02:00
Lennart Poettering d508ac0ba0 cat: fix priority type
Needs to be "int", not "char". Spotted by Frederic Crozat.
2012-03-27 00:20:48 +02:00
Lennart Poettering 2bd3c38a44 journalctl: add --local switch 2012-03-27 00:14:29 +02:00
Lennart Poettering 0aed10889b man: don't claim -f was short for --follow 2012-03-26 23:51:56 +02:00
Lucas De Marchi 9e7adc3ae1 build-sys: separate ldflags from cflags 2012-03-26 21:02:29 +02:00