Commit graph

2223 commits

Author SHA1 Message Date
Kay Sievers f1ff47be17 udev: keymap: remove rootprefix mangling from script 2012-04-08 17:10:03 +02:00
Kay Sievers 1c0f62e37b udev: fix test-udev binary 2012-04-08 17:03:17 +02:00
Kay Sievers 07cd4fc168 udev: remove support for /lib/udev/devices/; tmpfiles should be used 2012-04-08 16:50:16 +02:00
Tom Gundersen 58db57fedf udev: fix rules sort order
Commit 91418155ae moved around the code,
but did not chang ethe array index.
2012-04-08 16:09:42 +02:00
Kay Sievers baa30fbc2c udev: switch to systemd logging functions 2012-04-08 16:06:20 +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 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
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
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 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
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 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
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
Elan Ruusamäe 6ad548625e man: minor typo in reference to manual page 2012-03-26 18:20:55 +02:00
Kay Sievers 8482018afc libudev: monitor - do not memset() receive buffer 2012-03-22 03:46:16 +01:00
Lennart Poettering 75c8e3cffd logind: close FIFO before ending sessions cleanly
For clean session endings ask logind explicitly to get rid of the FIFO
before closing it so that the FIFO logic doesn't result in su/sudo to be
terminated immediately.
2012-03-22 02:06:40 +01:00
Lennart Poettering c9d8629baa logind: extend comment about X11 socket symlink 2012-03-22 01:43:36 +01:00
Frederic Crozat 4fd052aede add sparse support to detect endianness bug
le16/32/64_t type should be used when storing little-endian value

header to integrate with sparse from Josh Triplett <josh@joshtriplett.org>
2012-03-22 01:09:37 +01:00
Lennart Poettering 170dcb7bd5 binfmt: fix apply loop
Noticed by Sergey Ptashnick
2012-03-22 00:35:42 +01:00
Roberto Sassu 8161158639 main: added support for loading IMA custom policies
This is an S/MIME signed message

The new function ima_setup() loads an IMA custom policy from a file in the
default location '/etc/ima/ima-policy', if present, and writes it to the
path 'ima/policy' in the security filesystem. This function is executed
at early stage in order to avoid that some file operations are not measured
by IMA and it is placed after the initialization of SELinux because IMA
needs the latter (or other security modules) to understand LSM-specific
rules. This feature is enabled by default and can be disabled by providing
the option '--disable-ima' to the configure script.

Signed-off-by: Roberto Sassu <roberto.sassu@polito.it>
Acked-by: Gianluca Ramunno <ramunno@polito.it>
2012-03-22 00:20:58 +01:00
Roberto Sassu 160481f68d systemd: mount the securityfs filesystem at early stage
This is an S/MIME signed message

The mount of the securityfs filesystem is now performed in the main systemd
executable as it is used by IMA to provide the interface for loading custom
policies. The unit file 'units/sys-kernel-security.mount' has been removed
because it is not longer necessary.

Signed-off-by: Roberto Sassu <roberto.sassu@polito.it>
Acked-by: Gianluca Ramunno <ramunno@polito.it>
2012-03-22 00:20:48 +01:00
Lennart Poettering 7264278fbb journal: PAGE_SIZE is not known on ppc and other archs
Let's use NAME_MAX, as suggested by Dan Walsh
2012-03-21 23:47:44 +01:00
Lennart Poettering 0071d9f1db journal: react with immediate rotation to a couple of more errors 2012-03-21 23:40:51 +01:00
Vaidas Jablonskis abac5c7976 keymap: Add Samsung 90X3A
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2012-03-21 14:51:39 +01:00
Lennart Poettering de19ece738 sysctl: accept multiple passed configuration files 2012-03-20 15:31:09 +01:00
Lennart Poettering 4e2075ceea modules-load: drop /lib from search path if we don't have it split off 2012-03-20 15:30:42 +01:00
Lennart Poettering 133176702a bmfmt: allow passing more than one config file name 2012-03-20 15:29:49 +01:00