chiark / gitweb /
elogind.git
10 years agojournalctl,systemctl: fix tiny memleak
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 18:45:28 +0000 (14:45 -0400)]
journalctl,systemctl: fix tiny memleak

10 years agojournalctl: augment short mode with a cursor at the end
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.

10 years agoutil: make gcc shut up by passing a 0 mode param to open()
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.

10 years agoutil: make some gcc versions shut up regarding unintialized variable access
Lennart Poettering [Wed, 17 Jul 2013 00:48:53 +0000 (02:48 +0200)]
util: make some gcc versions shut up regarding unintialized variable access

10 years agoupdate TODO
Lennart Poettering [Wed, 17 Jul 2013 00:29:19 +0000 (02:29 +0200)]
update TODO

10 years agologind: remove "if (0)" left-over
Kay Sievers [Tue, 16 Jul 2013 23:49:26 +0000 (01:49 +0200)]
logind: remove "if (0)" left-over

10 years agologind-acl: use macros
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.

10 years agologind: apply ACL's to "dead" device nodes
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.

10 years agoudev: export tags of "dead" device nodes to /run/udev/static_node-tags/
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.

10 years agoutil.c:is_locale_utf8(): check, if "C" was set on purpose
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.

10 years agoupdate
Lennart Poettering [Tue, 16 Jul 2013 16:25:52 +0000 (18:25 +0200)]
update

10 years agorpm: add RPM macro for creating tmpfiles entries after package installation
Lennart Poettering [Tue, 16 Jul 2013 16:15:48 +0000 (18:15 +0200)]
rpm: add RPM macro for creating tmpfiles entries after package installation

10 years ago60-keyboard.hwdb: Fix syntax error
Martin Pitt [Tue, 16 Jul 2013 16:44:30 +0000 (18:44 +0200)]
60-keyboard.hwdb: Fix syntax error

Add missing '='.

10 years agojournal: return -ECHILD after a fork
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.

10 years agotest-tables: allow sparse tables and check mapping for -1
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.

10 years agoDo not set LANG=C in every child environment.
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.

10 years agoman: improve readability of --output options in journalctl(1)
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.

10 years agoman: use HTTPS links for links that support it
Jason St. John [Tue, 16 Jul 2013 08:19:00 +0000 (10:19 +0200)]
man: use HTTPS links for links that support it

10 years agojournalctl: Add support for showing messages from a previous boot
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

10 years agoupdate TODO
Lennart Poettering [Tue, 16 Jul 2013 15:34:33 +0000 (17:34 +0200)]
update TODO

10 years agokeymap: re-add Logitech USB corded/cordless models
Martin Pitt [Tue, 16 Jul 2013 14:53:35 +0000 (16:53 +0200)]
keymap: re-add Logitech USB corded/cordless models

These add back are the remaining 3 udev keymap rules which used name based
instead of ID based matching.

10 years agoalso remove keymaps-force-release directory
Kay Sievers [Tue, 16 Jul 2013 14:26:49 +0000 (16:26 +0200)]
also remove keymaps-force-release directory

10 years agoswitch from udev keymaps to hwdb
Kay Sievers [Tue, 16 Jul 2013 14:13:32 +0000 (16:13 +0200)]
switch from udev keymaps to hwdb

10 years agodetect-virt: detect User-Mode Linux
Ramkumar Ramachandra [Tue, 16 Jul 2013 11:14:40 +0000 (16:44 +0530)]
detect-virt: detect User-Mode Linux

In a User-Mode Linux session:

  $ systemd-detect-virt
  none

Although it is possible to reliably detect virtualization:

  $ cat /proc/cpuinfo
  processor       : 0
  vendor_id       : User Mode Linux
  model name      : UML
  mode            : skas
  host            : Linux kytes 3.11.0-rc1-00009-ge5fd680 (...)
  bogomips        : 7007.43

So, grep for the string "\nvendor_id\t: User Mode Linux\n" in
/proc/cpuinfo, and say "uml" when asked.

10 years agoUpdate TODO
Lennart Poettering [Tue, 16 Jul 2013 12:27:20 +0000 (14:27 +0200)]
Update TODO

10 years agohwdb: follow: "keymap: Drop non-existant Samsung 900XC3"
Kay Sievers [Tue, 16 Jul 2013 12:13:55 +0000 (14:13 +0200)]
hwdb: follow: "keymap: Drop non-existant Samsung 900XC3"

10 years agokeymap: Drop non-existant Samsung 900XC3
Martin Pitt [Tue, 16 Jul 2013 07:06:57 +0000 (09:06 +0200)]
keymap: Drop non-existant Samsung 900XC3

Revert commit 90fc91d0065 again. There is no 900XC3 model, that's 900X3C and
already covered by the 900X3* match.

See https://launchpad.net/bugs/1012365

10 years agobuild-sys: make generated man pages part of the distribution tarball
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 03:13:12 +0000 (23:13 -0400)]
build-sys: make generated man pages part of the distribution tarball

They were removed by mistake, and since we ship .html files,
we certainly should ship man pages.

https://bugs.freedesktop.org/show_bug.cgi?id=61753

10 years agobuild-sys: discover the path to kexec during build time
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 03:04:52 +0000 (23:04 -0400)]
build-sys: discover the path to kexec during build time

https://bugs.freedesktop.org/show_bug.cgi?id=55248

10 years agojournal: add logging of effective capabilities _CAP_EFFECTIVE
Shawn Landden [Tue, 16 Jul 2013 01:10:56 +0000 (18:10 -0700)]
journal: add logging of effective capabilities _CAP_EFFECTIVE

I think this is the most important of the capabilities bitmasks to log.

10 years agoupdate TODO
Lennart Poettering [Tue, 16 Jul 2013 01:30:45 +0000 (03:30 +0200)]
update TODO

10 years agoman: add FILES section to systemd-journald.service(8)
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 02:20:06 +0000 (22:20 -0400)]
man: add FILES section to systemd-journald.service(8)

10 years agosystemd: do not output status messages once gettys are running
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 01:34:57 +0000 (21:34 -0400)]
systemd: do not output status messages once gettys are running

Make Type=idle communication bidirectional: when bootup is finished,
the manager, as before, signals idling Type=idle jobs to continue.
However, if the boot takes too long, idling jobs signal the manager
that they have had enough, wait a tiny bit more, and continue, taking
ownership of the console. The manager, when signalled that Type=idle
jobs are done, makes a note and will not write to the console anymore.

This is a cosmetic issue, but quite noticable, so let's just fix it.

Based on Harald Hoyer's patch.

https://bugs.freedesktop.org/show_bug.cgi?id=54247
http://unix.stackexchange.com/questions/51805/systemd-messages-after-starting-login/

10 years agoman: add note about paging and colors to journalctl(1)
Zbigniew Jędrzejewski-Szmek [Tue, 16 Jul 2013 01:03:17 +0000 (21:03 -0400)]
man: add note about paging and colors to journalctl(1)

10 years agocryptsetup: Add tcrypt support
Jan Janssen [Sat, 13 Jul 2013 11:19:38 +0000 (13:19 +0200)]
cryptsetup: Add tcrypt support

Tcrypt uses a different approach to passphrases/key files. The
passphrase and all key files are incorporated into the "password"
to open the volume. So, the idea of slots that provide a way to
open the volume with different passphrases/key files that are
independent from each other like with LUKS does not apply.

Therefore, we use the key file from /etc/crypttab as the source
for the passphrase. The actual key files that are combined with
the passphrase into a password are provided as a new option in
/etc/crypttab and can be given multiple times if more than one
key file is used by a volume.

10 years agocryptsetup: Move attaching of the device out of main
Jan Janssen [Sat, 13 Jul 2013 11:19:37 +0000 (13:19 +0200)]
cryptsetup: Move attaching of the device out of main

10 years agocryptsetup: Move password query out of main
Jan Janssen [Sat, 13 Jul 2013 11:19:36 +0000 (13:19 +0200)]
cryptsetup: Move password query out of main

Also use _cleanup_free_ where possible.

10 years agoutil: recognize 'ncp' as an alias to 'ncpfs'
Frederic Crozat [Mon, 15 Jul 2013 16:33:57 +0000 (18:33 +0200)]
util: recognize 'ncp' as an alias to 'ncpfs'

ncp is also used for Netware mount point, recognize it as such. Fixes
https://bugzilla.novell.com/show_bug.cgi?id=828905.

10 years agoupdate TODO
Lennart Poettering [Mon, 15 Jul 2013 21:54:28 +0000 (23:54 +0200)]
update TODO

10 years agoupdate TODO
Lennart Poettering [Fri, 12 Jul 2013 17:47:08 +0000 (19:47 +0200)]
update TODO

10 years agotravis: Add a travis.yml for doing CI after commits
Holger Hans Peter Freyther [Tue, 9 Jul 2013 16:09:08 +0000 (18:09 +0200)]
travis: Add a travis.yml for doing CI after commits

Instruct travis-ci to build systemd and create a tarball. In case
of an error travis-ci will complain on IRC. The systemd testsuite
currently requires the host to have a recent version of systemd
installed and running. This is not the case for the Ubuntu VM of
travis-ci. This means make check and make distcheck will result in
a build failure and to avoid this these commands are not executed.

This requires a one time configuration on travis-ci for the repo
on github by the owner of the repo.

10 years agotests: add more tests for shared/util.c
Thomas Hindoe Paaboel Andersen [Mon, 15 Jul 2013 22:07:36 +0000 (00:07 +0200)]
tests: add more tests for shared/util.c

10 years agojournalctl: add --force option to recreate FSS
Shawn Landden [Mon, 15 Jul 2013 03:13:09 +0000 (20:13 -0700)]
journalctl: add --force option to recreate FSS

10 years agosystemd: fix NULL dereference when disabling a nonexistent instance
Zbigniew Jędrzejewski-Szmek [Mon, 15 Jul 2013 03:36:14 +0000 (23:36 -0400)]
systemd: fix NULL dereference when disabling a nonexistent instance

Assertion 'p' failed at src/shared/path-util.c:51, function path_get_file_name(). Aborting.

The unit file could not be found, and i->path would not be set.
In 02b9e969 a code path was added which attempts to remove symlinks
to a nonexistent (removed) unit file. This worked OK in case of
non-instance services, but broke in the case of instance services.

Behaviour wrt. to instance units is changed in the way that 02b9e969
changed it for non-instance units: it is now possible to remove
instance symlinks to a template unit that has been removed.

This patch isn't a full fix, because the behaviour wrt. to enabling
and disabling instance units is still broken: e.g it is possible to
start autovt@tty5.service, but it is not possible to enable it,
because autovt@.service is a symlink, and on the other hand, disabling
getty@tty5.service removes all symlinks to getty@.service, which is
wrong too. But segfaults make bad pr, so let's add at least this
partial fix for now.

10 years agohwdb: keyboard update
Kay Sievers [Sun, 14 Jul 2013 22:56:18 +0000 (00:56 +0200)]
hwdb: keyboard update

10 years agohwdb: import data
Kay Sievers [Sun, 14 Jul 2013 22:55:37 +0000 (00:55 +0200)]
hwdb: import data

10 years agoman: tweak WantedBy=/RequiredBy= description a bit
Zbigniew Jędrzejewski-Szmek [Sun, 14 Jul 2013 03:36:39 +0000 (23:36 -0400)]
man: tweak WantedBy=/RequiredBy= description a bit

https://bugs.freedesktop.org/show_bug.cgi?id=55663

10 years agotest: add trivial test for syscall table and extend table tests to error paths
Zbigniew Jędrzejewski-Szmek [Sat, 13 Jul 2013 21:36:03 +0000 (17:36 -0400)]
test: add trivial test for syscall table and extend table tests to error paths

10 years agoAdd test coverage and generate report with lcov
Thomas H.P. Andersen [Thu, 28 Mar 2013 13:54:06 +0000 (14:54 +0100)]
Add test coverage and generate report with lcov

Enable coverage with --enable-coverage.
"make coverage" will create the report locally,
"make coverage-sync" will upload the report to
http://www.freedesktop.org/software/systemd/coverage/.

Requires lcov version 1.10 to handle naming in systemd and to
use the --no-external option.

[zj: make the coverage at least generate something with
     separate build dir, simplify rules a bit: all errors
     are mine. ]

10 years agounits: do not special-case getty@tty1.service installation
Zbigniew Jędrzejewski-Szmek [Sat, 13 Jul 2013 13:59:35 +0000 (09:59 -0400)]
units: do not special-case getty@tty1.service installation

Since a long while we can use "systemctl enable getty@tty1.service"
which does the right thing, so there's no need to abuse Alias=
for installation.

10 years agoinstall: make "reenable" work with templated units
Ross Lagerwall [Mon, 17 Jun 2013 18:11:50 +0000 (19:11 +0100)]
install: make "reenable" work with templated units

Before, "systemctl reenable getty@tty1.service" would fail with:
Failed to issue method call: File exists
To fix this, reimplement "reenable" explicitly as a disable followed by
an enable.
This is shorter and is how the man page documents its behavior.

10 years agoman: wording and grammar update
Jan Engelhardt [Sat, 13 Jul 2013 08:51:35 +0000 (10:51 +0200)]
man: wording and grammar update

10 years agojournalctl: have a useful --setup-keys error message when using non-persistant logging
Shawn Landden [Sat, 13 Jul 2013 03:57:15 +0000 (20:57 -0700)]
journalctl: have a useful --setup-keys error message when using non-persistant logging

Generating seed...

Generating key pair...
Generating sealing key...
Failed to open /var/log/journal/33f46101703a10c5fc6fa4f451840101/fss.tmp.k2wDDU: No such file or directory

10 years agostatic-nodes: don't hardcode path to mkdir
Tom Gundersen [Fri, 12 Jul 2013 09:14:54 +0000 (11:14 +0200)]
static-nodes: don't hardcode path to mkdir

10 years agoRevert "build-sys: don't enable color gcc on dumb terminals"
Zbigniew Jędrzejewski-Szmek [Fri, 12 Jul 2013 17:19:19 +0000 (13:19 -0400)]
Revert "build-sys: don't enable color gcc on dumb terminals"

This reverts commit cd3069559a09b4e4f85a6f02aa8f0521f48359ca.

Emacs compilation can be fixed by putting
(custom-set-variables
 '(compilation-environment (quote ("GCC_COLORS="))))
in ~/.emacs.

10 years agoshared/install: fix trivial memleak
Zbigniew Jędrzejewski-Szmek [Fri, 12 Jul 2013 12:15:21 +0000 (08:15 -0400)]
shared/install: fix trivial memleak

We lost the reference when setting path second time.

10 years agotest-path-util,test-sched-prio: uninitialize manager to appease valgrind
Zbigniew Jędrzejewski-Szmek [Fri, 12 Jul 2013 12:04:39 +0000 (08:04 -0400)]
test-path-util,test-sched-prio: uninitialize manager to appease valgrind

10 years agohwdb: keyboard -- update comments
Kay Sievers [Fri, 12 Jul 2013 11:44:08 +0000 (13:44 +0200)]
hwdb: keyboard -- update comments

10 years agohwdb: keyboard -- add file
Kay Sievers [Fri, 12 Jul 2013 10:20:18 +0000 (12:20 +0200)]
hwdb: keyboard -- add file

Do not enable/install it now, until we switch over from the current
keymap tool.

10 years agoman: document the slice and scope units, add systemd.cgroup(5)
Zbigniew Jędrzejewski-Szmek [Wed, 10 Jul 2013 05:25:02 +0000 (01:25 -0400)]
man: document the slice and scope units, add systemd.cgroup(5)

10 years agoman: use <literal> not <filename> for suffixes
Zbigniew Jędrzejewski-Szmek [Fri, 12 Jul 2013 03:39:27 +0000 (23:39 -0400)]
man: use <literal> not <filename> for suffixes

Especially sentences like "filename ends in .suffix" are easier to
parse if the suffix is surrounded by quotes. In sentences like
"requires a .service unit", where the suffix is used as a class
designation, there is no need to use quotes.

10 years agoman: remove note about shutdown being legacy
Zbigniew Jędrzejewski-Szmek [Thu, 11 Jul 2013 01:43:34 +0000 (21:43 -0400)]
man: remove note about shutdown being legacy

This can only confuse people, because there's no need to
discourage people from using shutdown. It is fully functional
and supported.

10 years agojournald-server: r should be checked after journal_file_open_reliably
Lukas Nykryn [Tue, 9 Jul 2013 13:45:37 +0000 (15:45 +0200)]
journald-server: r should be checked after journal_file_open_reliably

10 years agoupdate TODO
Lennart Poettering [Thu, 11 Jul 2013 23:18:09 +0000 (01:18 +0200)]
update TODO

10 years agobuild-sys: don't enable color gcc on dumb terminals
Lennart Poettering [Thu, 11 Jul 2013 23:15:52 +0000 (01:15 +0200)]
build-sys: don't enable color gcc on dumb terminals

Guys, we know that emacs is the best editor on earth, but unfortunately
its "M-x compile" terminal cannot do colors (well, it does its own
highlighting of the output anyway), and it will inform the programs it
calls about this with TERM=dumb, and gcc should check for that. But you
guys turned that off. Not cool. Let's turn it on again.

10 years agosystemctl: remove unused variable
Lukas Nykryn [Tue, 9 Jul 2013 13:45:38 +0000 (15:45 +0200)]
systemctl: remove unused variable

10 years agounit: check correct variable after strdup
Lukas Nykryn [Tue, 9 Jul 2013 13:45:36 +0000 (15:45 +0200)]
unit: check correct variable after strdup

10 years agoupdate TODO
Lennart Poettering [Thu, 11 Jul 2013 19:30:19 +0000 (21:30 +0200)]
update TODO

10 years agocore: simplify drop-in writing logic a bit
Lennart Poettering [Thu, 11 Jul 2013 19:29:33 +0000 (21:29 +0200)]
core: simplify drop-in writing logic a bit

let's make use of some format string magic!

10 years agocore: when writing drop-in files, name them directly after the property we set
Lennart Poettering [Thu, 11 Jul 2013 19:03:06 +0000 (21:03 +0200)]
core: when writing drop-in files, name them directly after the property we set

Mapping from "FooBar" to "foo-bar" is unnecessary and makes it hard to
handle many different properties with the same code, hence, let's just
not do it.

10 years agocgroup: split out per-device BlockIOWeight= setting into BlockIODeviceWeight=
Lennart Poettering [Thu, 11 Jul 2013 18:40:18 +0000 (20:40 +0200)]
cgroup: split out per-device BlockIOWeight= setting into BlockIODeviceWeight=

This way we can nicely map the configuration directive to properties and
back, without requiring two different signatures for the same property.

10 years agomachined: forward scope properties array from client to systemd
Lennart Poettering [Thu, 11 Jul 2013 17:53:46 +0000 (19:53 +0200)]
machined: forward scope properties array from client to systemd

This makes nspawn's --scope= switch work again.

10 years agoupdate TODO
Lennart Poettering [Thu, 11 Jul 2013 17:16:11 +0000 (19:16 +0200)]
update TODO

10 years agosystemctl: show cgroup tree if cgroup is empty but has non-empty children
Lennart Poettering [Thu, 11 Jul 2013 17:15:01 +0000 (19:15 +0200)]
systemctl: show cgroup tree if cgroup is empty but has non-empty children

This makes sure "systemctl status user.slice" shows a nice cgroup tree
of all logged in users.

10 years agologinctl: suppress cgroup tree output if cgroup is empty
Lennart Poettering [Thu, 11 Jul 2013 17:14:38 +0000 (19:14 +0200)]
loginctl: suppress cgroup tree output if cgroup is empty

same for machinectl

10 years agoupdate TODO
Lennart Poettering [Thu, 11 Jul 2013 16:49:44 +0000 (18:49 +0200)]
update TODO

10 years agocgroup: simplify how instantiated units are mapped to cgroups
Lennart Poettering [Thu, 11 Jul 2013 16:47:20 +0000 (18:47 +0200)]
cgroup: simplify how instantiated units are mapped to cgroups

Previously for an instantiated unit foo@bar.service we created a cgroup
foo@.service/foo@bar.service, in order to place all instances of the
same template inside the same subtree. As we now implicitly add all
instantiated units into one per-template slice we don't need this
complexity anymore, and instance units can map directly to the cgroups
of their full name.

10 years agocgroup: don't ever try to destroy the cgroup of the root slice
Lennart Poettering [Thu, 11 Jul 2013 16:42:12 +0000 (18:42 +0200)]
cgroup: don't ever try to destroy the cgroup of the root slice

The root slice is after all the root cgroup, so don't attempt to delete
it.

10 years agocgroup: don't move systemd into systems.slice when running as --user instance
Lennart Poettering [Thu, 11 Jul 2013 16:37:14 +0000 (18:37 +0200)]
cgroup: don't move systemd into systems.slice when running as --user instance

10 years agocore: implicitly create a per-template slice for all instantiated units by default
Lennart Poettering [Thu, 11 Jul 2013 01:52:43 +0000 (03:52 +0200)]
core: implicitly create a per-template slice for all instantiated units by default

If no explicit slice is configured for an instantiated unit, create an
implicit one for all instances of the same template.

10 years agoconfigure: split checks for libkmod >= 14
Dave Reisner [Thu, 11 Jul 2013 14:33:48 +0000 (10:33 -0400)]
configure: split checks for libkmod >= 14

PKG_CHECK_EXISTS won't created a cached variable that later messes with
our PKG_CHECK_MODULES check for an explicit version. Unfortunately,
nesting these checks as the code existed lead to an odd error. Rather,
split the checks apart.

This also improves to the error message when the requisite version
isn't found, and supplies the literal version systemd needs.

10 years agokernel-install/90-loaderentry.install: do not fail for missing initrd
Harald Hoyer [Thu, 11 Jul 2013 11:42:14 +0000 (13:42 +0200)]
kernel-install/90-loaderentry.install: do not fail for missing initrd

10 years agobasic SO_REUSEPORT support
Shawn Landden [Mon, 8 Jul 2013 18:28:14 +0000 (18:28 +0000)]
basic SO_REUSEPORT support

10 years agounits: since we auto-spawn user@.service instances now we don need an [Install] secti...
Lennart Poettering [Wed, 10 Jul 2013 23:57:09 +0000 (01:57 +0200)]
units: since we auto-spawn user@.service instances now we don need an [Install] section in it

10 years agoupdate TODO
Lennart Poettering [Wed, 10 Jul 2013 23:56:45 +0000 (01:56 +0200)]
update TODO

10 years agocore: grant user@.service instances write access to their own cgroup
Lennart Poettering [Wed, 10 Jul 2013 23:56:12 +0000 (01:56 +0200)]
core: grant user@.service instances write access to their own cgroup

10 years agocore: rearrange if blocks a bit
Lennart Poettering [Wed, 10 Jul 2013 22:48:52 +0000 (00:48 +0200)]
core: rearrange if blocks a bit

10 years agoshutdown: avoid malloc() if we can
Lennart Poettering [Wed, 10 Jul 2013 22:35:01 +0000 (00:35 +0200)]
shutdown: avoid malloc() if we can

10 years agoupdate TODO
Lennart Poettering [Wed, 10 Jul 2013 22:28:35 +0000 (00:28 +0200)]
update TODO

10 years agologinctl: restore cgroup display for status output
Lennart Poettering [Wed, 10 Jul 2013 22:27:54 +0000 (00:27 +0200)]
loginctl: restore cgroup display for status output

Same for machinectl.

10 years agoshutdown: fix /proc/cmdline reading of 'quiet'
Kay Sievers [Wed, 10 Jul 2013 22:13:46 +0000 (00:13 +0200)]
shutdown: fix /proc/cmdline reading of 'quiet'

10 years agocore: uninstall cgroup agent only if we are running outside of a container
Lennart Poettering [Wed, 10 Jul 2013 21:50:28 +0000 (23:50 +0200)]
core: uninstall cgroup agent only if we are running outside of a container

Since the cgroupfs is currently not virtualized for containers we
shouldn't reset the hosts agent from the container.

10 years agocgroup: when uninstalling agent, actually turn it off first
Lennart Poettering [Wed, 10 Jul 2013 21:47:15 +0000 (23:47 +0200)]
cgroup: when uninstalling agent, actually turn it off first

10 years agoupdate TODO
Lennart Poettering [Wed, 10 Jul 2013 21:46:30 +0000 (23:46 +0200)]
update TODO

10 years agouser-sessions: rely on PID 1 to kill sessions
Lennart Poettering [Wed, 10 Jul 2013 21:39:46 +0000 (23:39 +0200)]
user-sessions: rely on PID 1 to kill sessions

As we want to centralized cgroup access we should stop killing the user
sessions directly from the systemd-user-sessions service. Instead, rely
on PID 1 doing this by adding the right ordering dependencies to the
session scope units.

10 years agologind: when creating the scope job fails, return this immediately to the client...
Lennart Poettering [Wed, 10 Jul 2013 21:33:17 +0000 (23:33 +0200)]
logind: when creating the scope job fails, return this immediately to the client that wants to register the session

Otherwise we'll hanging for the job to finish without any job existing.

Similar, for machined.

10 years agologind: don't misunderstand UnitRemoved signals during reloading
Lennart Poettering [Wed, 10 Jul 2013 21:31:40 +0000 (23:31 +0200)]
logind: don't misunderstand UnitRemoved signals during reloading

When PID 1 reloads the units logind/machined will see UnitRemoved
signals for all units. Instead of trusting these immediately, let's
check the actual unit state before considering a unit gone, so that
reloading PID 1 is not mistaken as the end of all sessions.

10 years agounit: when deserializing cgroup path add it back into cgroup hashmap
Lennart Poettering [Wed, 10 Jul 2013 19:17:37 +0000 (21:17 +0200)]
unit: when deserializing cgroup path add it back into cgroup hashmap

Also, properly remove cgroup path from hashmap when freeing unit.

10 years agounit: save description/slice of transient units to /run
Lennart Poettering [Wed, 10 Jul 2013 19:13:56 +0000 (21:13 +0200)]
unit: save description/slice of transient units to /run

This is necessary so that these properties survive a daemon reload.

10 years agocore: send out "Reloading" signal before and after doing a full reload/reexec of...
Lennart Poettering [Wed, 10 Jul 2013 19:10:53 +0000 (21:10 +0200)]
core: send out "Reloading" signal before and after doing a full reload/reexec of PID 1

Since we'll unload all units/job during a reload, and then readd them it
is really useful for clients to be aware of this phase hence sent a
signal out before and after. This signal is called "Reloading" (despite
the fact that it is also sent out during reexecution, which we consider
a special case in this context) and has one boolean parameter which is
true for the signal sent before the reload, and false for the signal
after the reload. The UnitRemoved/JobRremoved and UnitNew/JobNew due to
the reloading are guranteed to be between the pair of Reloading
messages.