chiark / gitweb /
Lennart Poettering [Fri, 26 Jul 2013 15:05:43 +0000 (17:05 +0200)]
systemctl: remove "load" command
"systemctl load" has always been racy since the GC could hit any time,
before making use of the loaded unit. Very recent systemd will run GC
immeidately after all unit state changes which has the effect that the
the effect of "systemctl load" is completely gone now, so let's remove
the support for it in "systemctl" for good.
Lennart Poettering [Fri, 26 Jul 2013 14:59:55 +0000 (16:59 +0200)]
systemctl: move set-log-level to systemd-analyze
"systemctl set-log-level" is a command for analysis and tracing hence
"systemd-analyze" should be the better home for it, thus allowing us to
make the overly large "systemctl" a bit smaller.
Lennart Poettering [Fri, 26 Jul 2013 14:34:52 +0000 (16:34 +0200)]
systemctl: move "dump" command from systemctl to systemd-analyze
It's an analysis command and its format is explicitly not covered by any
stability guarantees, hence move away from systemctl and into
systemd-analyze, minimizing the already large interface of systemctl a
bit.
This patch also adds auto-paging to the various systemd-analyze commands
where that makes sense
Lennart Poettering [Fri, 26 Jul 2013 14:09:25 +0000 (16:09 +0200)]
core: allow setting RemainAfterExit= for transient services
Kay Sievers [Fri, 26 Jul 2013 01:34:18 +0000 (03:34 +0200)]
shared: split mkdir_*() and mkdir_*_label() from each other
Avoid pulling-in selinux for tools which just create directories
but not need to fix the selinux label.
Kay Sievers [Fri, 26 Jul 2013 00:33:51 +0000 (02:33 +0200)]
shell-completion: add kernel-install
Dave Reisner [Wed, 24 Jul 2013 15:58:35 +0000 (11:58 -0400)]
tmpfiles-setup: exclude /dev prefixes files
Fixes Arch Linux bug: https://bugs.archlinux.org/task/36259
Dave Reisner [Wed, 24 Jul 2013 15:19:24 +0000 (11:19 -0400)]
tmpfiles: introduce --exclude-prefix
The opposite of --prefix, allows specifying path prefixes which should
be skipped when processing rules.
Dave Reisner [Wed, 24 Jul 2013 15:10:05 +0000 (11:10 -0400)]
tmpfiles: support passing --prefix multiple times
Tom Gundersen [Wed, 24 Jul 2013 13:05:48 +0000 (15:05 +0200)]
udev: static_node - don't touch permissions uneccessarily
Don't set default permissions if only TAGS were specified in a rule.
Tom Gundersen [Wed, 24 Jul 2013 12:55:19 +0000 (14:55 +0200)]
udev: log error if chmod/chown of static dev nodes fails
William Giokas [Wed, 24 Jul 2013 02:55:22 +0000 (21:55 -0500)]
shell-completion: Add machinectl zsh completion
Zbigniew Jędrzejewski-Szmek [Wed, 24 Jul 2013 02:01:39 +0000 (22:01 -0400)]
initctl: use irreversible jobs when switching runlevels
Spotted by uau in #systemd.
Jesper Larsen [Tue, 23 Jul 2013 13:50:09 +0000 (15:50 +0200)]
README: Bump to Linux 3.0
Support for writing to cgroup.procs was introduced in 3.0
Lennart Poettering [Wed, 24 Jul 2013 06:08:57 +0000 (08:08 +0200)]
journal: immediately sync to disk as soon as we receieve an EMERG/ALERT/CRIT message
Lennart Poettering [Wed, 24 Jul 2013 05:24:05 +0000 (07:24 +0200)]
core: synchronously block when logging
Previously, the logging sockets were asynchronous and if clogged we'd
lose messages. We did this to be extra careful given that PID 1 might
need to spawn the logging daemon as response to PID 1's own log messages
and we really should avoid a deadlock in that case.
As it turns out this causes loss of too many messages, hence make the
socket blocking again, however put a time limit on it to avoid unbounded
deadlocks in the unlikely case they happen.
https://bugs.freedesktop.org/show_bug.cgi?id=66664
Dave Reisner [Tue, 23 Jul 2013 15:26:58 +0000 (11:26 -0400)]
remove systemd-timestamp from sources
No sense in keeping this around if support for reading RD_TIMESTAMP has
been removed.
Kay Sievers [Tue, 23 Jul 2013 10:25:32 +0000 (12:25 +0200)]
remove left-over initrd time stamp handling
Michael Biebl [Tue, 23 Jul 2013 03:03:17 +0000 (05:03 +0200)]
man: Fix copy&paste error
Michael Biebl [Tue, 23 Jul 2013 02:54:40 +0000 (04:54 +0200)]
README Bump minimum required version of kmod
See
edeb68c53f1cdc452016b4c8512586a70b1262e3.
Lennart Poettering [Mon, 22 Jul 2013 23:32:36 +0000 (01:32 +0200)]
build-sys: prepare 206
Maciej Wereski [Mon, 22 Jul 2013 09:02:50 +0000 (11:02 +0200)]
NEWS: fix mistake
Kay Sievers [Mon, 22 Jul 2013 21:00:31 +0000 (23:00 +0200)]
bus: update for kdbus changes
Kay Sievers [Mon, 22 Jul 2013 18:17:26 +0000 (20:17 +0200)]
TODO: update
Tom Gundersen [Mon, 22 Jul 2013 15:10:15 +0000 (17:10 +0200)]
kmod-static-nodes: remain after exit
Tom Gundersen [Mon, 22 Jul 2013 14:59:26 +0000 (16:59 +0200)]
systemd-tmpfiles-setup-dev: remain after exit
Without this, tmpfiles-setpu-dev would be re-run if any other service,
which pulls in basic.target, was started after setup-dev was finished
and before basic.target was active.
Lennart Poettering [Sun, 21 Jul 2013 22:16:17 +0000 (00:16 +0200)]
NEWS: prepare half a NEWS file for upcoming 206
Jan Engelhardt [Sun, 21 Jul 2013 04:53:14 +0000 (06:53 +0200)]
man: wording and grammar updates
This includes regularly-submitted corrections to comma setting and
orthographical mishaps that appeared in man/ in recent commits.
Kay Sievers [Sun, 21 Jul 2013 14:32:43 +0000 (16:32 +0200)]
rules: net, tty description - ask hwdb explicitly for pci data
Shawn Landden [Sat, 20 Jul 2013 17:15:13 +0000 (10:15 -0700)]
shared: fix build on !x86
Kay Sievers [Sat, 20 Jul 2013 23:32:27 +0000 (01:32 +0200)]
man: udev - add section about hwdb
Zbigniew Jędrzejewski-Szmek [Sat, 20 Jul 2013 20:12:10 +0000 (16:12 -0400)]
core: correct dbus parameter direction
Kay Sievers [Sat, 20 Jul 2013 12:29:12 +0000 (14:29 +0200)]
rules: drivers - always call kmod, even when a driver is bound to the device
On Sat, Jul 20, 2013 at 12:56 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote:
> After a recent change present in 3.11-rc1 there is a driver, called processor,
> that can be bound to the CPU devices whose sysfs directories are located under
> /sys/devices/system/cpu/. A side effect of this is that, after the driver has
> been bound to those devices, the kernel adds DRIVER=processor to ENV for CPU
> uevents and they don't match the default rule for autoloading modules matching
> MODALIAS:
>
> DRIVER!="?*", ENV{MODALIAS}=="?*", IMPORT{builtin}="kmod load $env{MODALIAS}"
>
> any more. However, there are some modules whose module aliases match specific
> CPU features through the modalias string and those modules should be loaded
> automatically if a compatible CPU is present. Yet, with the processor driver
> bound to the CPU devices the above rule is not sufficient for that, so we need
> a new default udev rule allowing those modules to be autoloaded even if the
> CPU devices have drivers.
Holger Hans Peter Freyther [Thu, 18 Jul 2013 07:18:55 +0000 (09:18 +0200)]
make: Automake is complaining about .PRECIOUS being redefined
Yesterday I added test-suite.log as dependency to the .PRECIOUS
target. Automake is warning about this target being redefined
and from what I see there is no way I can stop the warning but
I can add the %MAKEFILE% as dependency.
automake warning:
Makefile.am:35: warning: user target '.PRECIOUS' defined here ...
/usr/share/automake-1.13/am/configure.am: ... overrides Automake target '.PRECIOUS' defined here
[zj: s/%MAKEFILE%/Makefile/ because %MAKEFILE% wasn't actually substituted properly.]
Zbigniew Jędrzejewski-Szmek [Fri, 19 Jul 2013 23:04:08 +0000 (19:04 -0400)]
man: also mention /run/log/journal in systemd-jouranld.service(8)
Lennart Poettering [Fri, 19 Jul 2013 17:52:30 +0000 (19:52 +0200)]
journald: after the cgroup rework processes may be in both user and system units at the same time
Lennart Poettering [Fri, 19 Jul 2013 17:28:16 +0000 (19:28 +0200)]
man: update documentation of systemctl cgroup commands
Lennart Poettering [Fri, 19 Jul 2013 17:16:47 +0000 (19:16 +0200)]
man: update documentation of slice units a bit
Lennart Poettering [Fri, 19 Jul 2013 17:04:17 +0000 (19:04 +0200)]
man: update scope unit man page a bit
Lennart Poettering [Fri, 19 Jul 2013 16:52:09 +0000 (18:52 +0200)]
man: update pam_systemd documentation to current state of the code
Lennart Poettering [Fri, 19 Jul 2013 16:45:11 +0000 (18:45 +0200)]
core: update configuration directive list "systemd --dump-configuration-items" shows
Lennart Poettering [Fri, 19 Jul 2013 16:44:33 +0000 (18:44 +0200)]
man: list scope and slice units in systemd(1)
Lennart Poettering [Fri, 19 Jul 2013 16:10:12 +0000 (18:10 +0200)]
man: document sd_pid_get_slice() call of libsystemd-login
Lennart Poettering [Fri, 19 Jul 2013 16:00:21 +0000 (18:00 +0200)]
man: a few corrections to the machinectl man page
Lennart Poettering [Fri, 19 Jul 2013 15:55:52 +0000 (17:55 +0200)]
man: update systemd-nspawn regarding new --slice= logic
Lennart Poettering [Fri, 19 Jul 2013 15:51:26 +0000 (17:51 +0200)]
man: extend systemd-run man page a little
Lennart Poettering [Fri, 19 Jul 2013 15:23:10 +0000 (17:23 +0200)]
man: drop the old cgroup settings from the man pages
Maciej Wereski [Fri, 19 Jul 2013 13:43:12 +0000 (15:43 +0200)]
tmpfiles: Fix memory leak in parse_line()
Zbigniew Jędrzejewski-Szmek [Thu, 18 Jul 2013 23:36:55 +0000 (19:36 -0400)]
udev: fix two trivial memleaks in error path
Based-on-a-patch-by: Ian Stakenvicius <axs@gentoo.org>
Jan Janssen [Fri, 19 Jul 2013 11:54:51 +0000 (13:54 +0200)]
man: Fix example to use the new --boot syntax
Jesper Larsen [Fri, 19 Jul 2013 09:40:44 +0000 (11:40 +0200)]
nspawn: Reorder includes to fix compilation
Commit
2e996f4d4b642c5682c608c9692ad2ffae398ab2 added an include
of linux/netlink.h
This kernel header is not self contained in the linux 2.6 kernel
which breaks compilation with an unknown type sa_family_t
A workaround is to include linux/netlink.h after sys/socket.h
Zbigniew Jędrzejewski-Szmek [Fri, 19 Jul 2013 06:45:27 +0000 (02:45 -0400)]
core: add %v specifier
Lennart Poettering [Fri, 19 Jul 2013 02:10:06 +0000 (04:10 +0200)]
man: document Slice= setting (and other fixes)
Lennart Poettering [Fri, 19 Jul 2013 01:49:24 +0000 (03:49 +0200)]
machined: run machined at minimal capabilities
Lennart Poettering [Fri, 19 Jul 2013 01:49:07 +0000 (03:49 +0200)]
units: add references to bus API documentation to logind+machined
Lennart Poettering [Fri, 19 Jul 2013 01:48:23 +0000 (03:48 +0200)]
update TODO
Lennart Poettering [Fri, 19 Jul 2013 00:47:05 +0000 (02:47 +0200)]
machined: correct how some properties are exported on the bus
Lennart Poettering [Fri, 19 Jul 2013 00:46:27 +0000 (02:46 +0200)]
man: add reference to new machined bus API documentation in the wiki
Kay Sievers [Thu, 18 Jul 2013 21:07:37 +0000 (23:07 +0200)]
TODO: update
Kay Sievers [Thu, 18 Jul 2013 21:05:29 +0000 (23:05 +0200)]
tests: skip tests when executed without privileges but which require them
Lennart Poettering [Thu, 18 Jul 2013 18:22:29 +0000 (20:22 +0200)]
util: add split_pair() for splitting foo=bar strings
Holger Hans Peter Freyther [Thu, 18 Jul 2013 12:45:12 +0000 (14:45 +0200)]
journal: Leave server_dispatch_message early when Storage is none
When using Storage=none there is no point in collecting all the
information just to throw them away. After this change journald
consumes a lot less CPU time when only forwarding messages.
Maciej Wereski [Thu, 18 Jul 2013 11:24:12 +0000 (13:24 +0200)]
systemctl: option to list units by state
This allows to show only units with specified LOAD or SUB or ACTIVE state.
Tomasz Torcz [Thu, 18 Jul 2013 08:21:45 +0000 (10:21 +0200)]
journalctl: add ”short-iso” output format with verbose ISO8601 timestamps
Example:
2013-07-18T10:10:01+0200 sandworm CROND[20957]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Kay Sievers [Thu, 18 Jul 2013 12:40:42 +0000 (14:40 +0200)]
rules: keyboard - use builtin command
Zbigniew Jędrzejewski-Szmek [Thu, 18 Jul 2013 12:07:01 +0000 (08:07 -0400)]
journalctl: fix signedness warning and boot-id syntax check
Holger Hans Peter Freyther [Wed, 17 Jul 2013 14:29:55 +0000 (16:29 +0200)]
test: Keep the test-suite.log around in case of a test failure
The addition of .DELETE_ON_ERROR will lead to the removal of the
test-suite.log in case of a test failure. Mark the rule as PRECIOUS
to keep that file around.
Zbigniew Jędrzejewski-Szmek [Thu, 18 Jul 2013 04:03:09 +0000 (00:03 -0400)]
systemd-python: also update the documentation
sphinx, oh sphinx, why do you require manual ficksups all the time?
Zbigniew Jędrzejewski-Szmek [Tue, 25 Jun 2013 20:09:07 +0000 (16:09 -0400)]
systemd,systemctl: export condition status and show failing condition
$ systemctl --user status hoohoo
hoohoo.service
Loaded: loaded (/home/zbyszek/.config/systemd/user/hoohoo.service; static)
Active: inactive (dead)
start condition failed at Tue 2013-06-25 18:08:42 EDT; 1s ago
ConditionPathExists=/tmp/hoo was not met
Full information is exported over D-Bus:
[(condition, trigger, negate, param, state),...]
where state is one of "failed" (<0), "untested" (0), "OK" (>0).
I've decided to use 0 for "untested", because it might be useful to
differentiate different types of failure later on, without breaking
compatibility.
systemctl shows the failing condition, if there was a non-trigger
failing condition, or says "none of the trigger conditions were met",
because there're often many trigger conditions, and they must all
fail for the condition to fail, so printing them all would consume
a lot of space, and bring unnecessary attention to something that is
quite low-level.
Zbigniew Jędrzejewski-Szmek [Tue, 25 Jun 2013 16:15:07 +0000 (12:15 -0400)]
systemd: log failed conditions
ConditionPathExists=/tmp/nosuchpath failed for nosuchpath.service.
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 19:56:22 +0000 (15:56 -0400)]
journalctl: remove ":" from the --boot syntax
Instead of :-0, :1, :5, etc., use -0, 1 or +1, 5, etc. For BOOT_ID+OFFSET,
use BOOT_ID+offset or BOOT_ID-offset (either + or - is required).
Also make error handling a bit more robust and verbose.
Modify the man page to describe the most common case (-b) first,
and the second most common case (-b -1) second.
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2013 16:50:13 +0000 (12:50 -0400)]
systemd-python: add support for sd_j_open_files
Also export missing flags.
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2013 16:50:43 +0000 (12:50 -0400)]
systemd-python: fix iteration
Back in
6a58bf4135 raising stop iteration was removed from the C
code, but wasn't added in the Python counterpart.
Kay Sievers [Thu, 18 Jul 2013 01:05:51 +0000 (03:05 +0200)]
hwdb: data update
Lennart Poettering [Thu, 18 Jul 2013 00:31:06 +0000 (02:31 +0200)]
systemctl: also highlight a load state of "not-found" as red
"not-found" is a recently added load state and was previously just a
special case of "error". Since it also indicates a load error we should
also highlight it red, the same way as "error" was treated before.
Lennart Poettering [Thu, 18 Jul 2013 00:31:01 +0000 (02:31 +0200)]
mount: also exclude /usr from unmount at shutdown
Lennart Poettering [Thu, 18 Jul 2013 00:29:06 +0000 (02:29 +0200)]
update TODO
Michael Olbrich [Wed, 12 Jun 2013 06:41:16 +0000 (08:41 +0200)]
service: don't enter a second SIGTERM/SIGKILL cycle if no ExecStopPost= process is defined
It won't help if the main process is still there and there is no new
process to kill.
Harald Hoyer [Wed, 17 Jul 2013 09:27:32 +0000 (11:27 +0200)]
remove RD_TIMESTAMP import
If you want timing information from the initramfs, use systemd in the
initramfs.
Harald Hoyer [Wed, 17 Jul 2013 09:19:39 +0000 (11:19 +0200)]
remove /run/initramfs/root-fsck logic
dracut uses systemd in the initramfs and does not write these files
anymore.
The state of the root fsck is serialized.
Zbigniew Jędrzejewski-Szmek [Wed, 17 Jul 2013 02:44:38 +0000 (22:44 -0400)]
Update TODO
This point was done in
77a9e8de6.
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 18:45:28 +0000 (14:45 -0400)]
journalctl,systemctl: fix tiny memleak
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 14:21:18 +0000 (10:21 -0400)]
journalctl: augment short mode with a cursor at the end
Two options are added: --show-cursor to print the cursor at the end,
and --after-cursor to resume logs on the next line after the previous one.
Lennart Poettering [Wed, 17 Jul 2013 00:52:41 +0000 (02:52 +0200)]
util: make gcc shut up by passing a 0 mode param to open()
If we pass a variable to open()'s flags parameter it really wants a mode
parameter too, otherwise some gcc version whine. Hence, pass 0 in that
case.
Lennart Poettering [Wed, 17 Jul 2013 00:48:53 +0000 (02:48 +0200)]
util: make some gcc versions shut up regarding unintialized variable access
Lennart Poettering [Wed, 17 Jul 2013 00:29:19 +0000 (02:29 +0200)]
update TODO
Kay Sievers [Tue, 16 Jul 2013 23:49:26 +0000 (01:49 +0200)]
logind: remove "if (0)" left-over
Tom Gundersen [Tue, 16 Jul 2013 21:05:02 +0000 (23:05 +0200)]
logind-acl: use macros
Simplify by using FOREACH_DIRENT and _cleanup_closedir_ macros.
Tom Gundersen [Sun, 7 Jul 2013 19:29:12 +0000 (21:29 +0200)]
logind: apply ACL's to "dead" device nodes
Based on a patch by Kay Sievers.
When a dead device nodes is tagged with "uaccess" using the static_node mechanism,
it's ACL's are managed by logind in the same way as "live" device nodes.
This allows in particular /dev/snd/{seq,timer} to cause modules to be loaded
on-demand when accessed by a non-privileged user.
Tom Gundersen [Sun, 7 Jul 2013 16:32:34 +0000 (18:32 +0200)]
udev: export tags of "dead" device nodes to /run/udev/static_node-tags/
Based on a patch by Kay Sievers.
A tag is exported at boot as a symlinks to the device node in the folder
/run/udev/static_node-tags/<tagname>/, if the device node exists.
These tags are cleaned up by udevadm info --cleanup-db, but are otherwise
never removed.
Harald Hoyer [Thu, 27 Jun 2013 09:26:36 +0000 (11:26 +0200)]
util.c:is_locale_utf8(): check, if "C" was set on purpose
If you have a ASCII only terminal, there is no way to set the charmap to
ANSI_X3.4-1968, other than using LC_CTYPE=C.
We don't want to assume a UTF-8 capable terminal in this case and only
do so, if LANG, LC_ALL and LC_CTYPE are unset.
Lennart Poettering [Tue, 16 Jul 2013 16:25:52 +0000 (18:25 +0200)]
update
Lennart Poettering [Tue, 16 Jul 2013 16:15:48 +0000 (18:15 +0200)]
rpm: add RPM macro for creating tmpfiles entries after package installation
Martin Pitt [Tue, 16 Jul 2013 16:44:30 +0000 (18:44 +0200)]
60-keyboard.hwdb: Fix syntax error
Add missing '='.
Zbigniew Jędrzejewski-Szmek [Wed, 26 Jun 2013 23:55:48 +0000 (19:55 -0400)]
journal: return -ECHILD after a fork
A few asserts are replaced with 'return -EINVAL'. I think that
assert should not be used to check argument in public functions.
Fields in struct sd_journal are rearranged to make it less
swiss-cheesy.
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 16:01:01 +0000 (12:01 -0400)]
test-tables: allow sparse tables and check mapping for -1
Jan: test-tables fails on my system. The one it's failing on is:
syscall: 222 → (null) → -1
... and indeed, our own tables should not have holes, but syscall
tables certainly might.
Harald Hoyer [Thu, 27 Jun 2013 09:26:35 +0000 (11:26 +0200)]
Do not set LANG=C in every child environment.
LANG does not have to be set and setting it to default to the default
does not add any value.
Jason St. John [Tue, 16 Jul 2013 08:20:03 +0000 (10:20 +0200)]
man: improve readability of --output options in journalctl(1)
The list and descriptions of valid output options was difficult to read,
so break up the long block of text into discrete man page list items to
improve readability.
Jason St. John [Tue, 16 Jul 2013 08:19:00 +0000 (10:19 +0200)]
man: use HTTPS links for links that support it
Jan Janssen [Fri, 28 Jun 2013 15:26:30 +0000 (17:26 +0200)]
journalctl: Add support for showing messages from a previous boot
Hi,
I redid the boot ID look up to use enumerate_unique.
This is quite fast if the cache is warm but painfully slow if
it isn't. It has a slight chance of returning the wrong order if
realtime clock jumps around.
This one has to do n searches for every boot ID there is plus
a sort, so it depends heavily on cache hotness. This is in contrast
to the other way of look-up through filtering by a MESSAGE_ID,
which only needs about 1 seek + whatever amount of relative IDs
you want to walk.
I also have a linked-list + (in-place) mergesort version of this
patch, which has pretty much the same runtime. But since this one
is using libc sorting and armortized allocation, I prefer this
one.
To summarize: The MESSAGE_ID way is a *lot* faster but can be
incomplete due to rotation, while the enumerate+sort will find
every boot ID out there but will be painfully slow for large
journals and cold caches.
You choose :P
Jan