Commit graph

11710 commits

Author SHA1 Message Date
Lennart Poettering 8a84192905 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.
2013-07-11 18:49:52 +02:00
Lennart Poettering be2c1bd2a8 cgroup: don't move systemd into systems.slice when running as --user instance 2013-07-11 18:49:52 +02:00
Lennart Poettering a883394464 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.
2013-07-11 18:49:52 +02:00
Dave Reisner e2ca86cf78 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.
2013-07-11 10:33:48 -04:00
Harald Hoyer 852752fca2 kernel-install/90-loaderentry.install: do not fail for missing initrd 2013-07-11 13:43:35 +02:00
Shawn Landden f7db7a691c basic SO_REUSEPORT support 2013-07-11 03:09:18 +02:00
Lennart Poettering 4c5420a0c1 units: since we auto-spawn user@.service instances now we don need an [Install] section in it 2013-07-11 01:57:09 +02:00
Lennart Poettering 049b4474b3 update TODO 2013-07-11 01:56:45 +02:00
Lennart Poettering 8aa7519366 core: grant user@.service instances write access to their own cgroup 2013-07-11 01:56:12 +02:00
Lennart Poettering befb5b6a71 core: rearrange if blocks a bit 2013-07-11 00:48:52 +02:00
Lennart Poettering f6940be782 shutdown: avoid malloc() if we can 2013-07-11 00:35:01 +02:00
Lennart Poettering bafb15bab9 update TODO 2013-07-11 00:32:32 +02:00
Lennart Poettering aa1936ea1a loginctl: restore cgroup display for status output
Same for machinectl.
2013-07-11 00:32:32 +02:00
Kay Sievers 8577e67245 shutdown: fix /proc/cmdline reading of 'quiet' 2013-07-11 00:13:46 +02:00
Lennart Poettering 66713f77e8 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.
2013-07-10 23:50:28 +02:00
Lennart Poettering ac9ef33358 cgroup: when uninstalling agent, actually turn it off first 2013-07-10 23:47:15 +02:00
Lennart Poettering 49998ede04 update TODO 2013-07-10 23:46:30 +02:00
Lennart Poettering 7fb3ee51c1 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.
2013-07-10 23:41:04 +02:00
Lennart Poettering f2d4f98d58 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.
2013-07-10 23:41:03 +02:00
Lennart Poettering 6797c324a6 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.
2013-07-10 23:41:03 +02:00
Lennart Poettering 72673e866a unit: when deserializing cgroup path add it back into cgroup hashmap
Also, properly remove cgroup path from hashmap when freeing unit.
2013-07-10 23:41:03 +02:00
Lennart Poettering b9316fb0f3 unit: save description/slice of transient units to /run
This is necessary so that these properties survive a daemon reload.
2013-07-10 23:41:03 +02:00
Lennart Poettering 71445ae75b 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.
2013-07-10 23:41:03 +02:00
Lennart Poettering d0ede8f1c5 systemctl: suppress error message when doing "systemctl daemon-reexec"
When we issue a reexecution request via the private socket we need to
expect a "Disconnected" in addition to "NoReply" when the connection is
terminated.
2013-07-10 23:41:03 +02:00
Lennart Poettering 94c01aeb10 systemctl: suppress error messages when checking whether a unit needs to be reloaded 2013-07-10 23:41:03 +02:00
Lennart Poettering 0c5778a26b scope: don't require an initialized PIDs set when deserializing
When a scope unit is created due to deserialization rather than client
request don't enforce that the PIDs set must be non-empty, since the
cgroup is already populated.
2013-07-10 23:41:03 +02:00
Lennart Poettering b170dd803d core: while we are reloading don't suppress bus signals
While we are reloading we shouldn't suppress adding units to the bus
queue when there are no subscribers, simply because we might not have
deserialized the subscribers list yet. Hence, during reloading always
assume we have subscribers.
2013-07-10 23:41:03 +02:00
Lennart Poettering 6fa4853328 core: serialize/deserialize bus subscribers 2013-07-10 23:41:03 +02:00
Lennart Poettering 376dd21dc0 cgroup: downgrade error message when we cannot remove a cgroup to debug
Some units set KillMode=none to survive the initrd→rootfs transition. We
cannot remove their cgroups, but that shouldn't really be considered an
issue, so let's downgrade the error message.
2013-07-10 23:41:03 +02:00
Lennart Poettering bdeeb6b543 update TODO 2013-07-10 23:41:03 +02:00
Kay Sievers 9d7d42bc40 udev: add builtin 'keyboard' to manage key mappings 2013-07-10 22:52:55 +02:00
Kay Sievers 06639c0940 hwdb: allow list of lookup keys per given record
This allows to specify:
  dmi:bvn*:bvr*:bd*:svnVENDOR:pn:Model 231*:pvr*
  dmi:bvn*:bvr*:bd*:svnVENDOR:pn:Series 12*:pvr*
   KEY_A=value
   KEY_B=value

Instead of:
  dmi:bvn*:bvr*:bd*:svnVENDOR:pn:Model 231*:pvr*
   KEY_A=value
   KEY_B=value

  dmi:bvn*:bvr*:bd*:svnVENDOR:pn:Series 12*:pvr*
   KEY_A=value
   KEY_B=value
2013-07-10 15:05:05 +02:00
Zbigniew Jędrzejewski-Szmek f09114bcc7 man: document systemd-run 2013-07-10 02:16:20 -04:00
Zbigniew Jędrzejewski-Szmek fade1ec6e0 man: document four basic slices 2013-07-10 02:16:20 -04:00
Kay Sievers beef8df837 hwdb: return false if no property is found 2013-07-09 15:48:36 +02:00
Jason St. John a3f6aa268c man: improve word usage and grammar in logind.conf(5) 2013-07-09 09:07:33 -04:00
Jan Engelhardt 7b870f607b man: wording and grammar updates 2013-07-09 09:07:33 -04:00
Tom Gundersen c495574096 configure: fail if out-of-date kmod found and kmod not disabled
Almost everyone wants kmod support, so don't fail silently if the libs are
out-of-date.

kmod can still be explicitly disabled and if it is not found at all, we still
default to disabling it.
2013-07-09 00:19:55 +02:00
Tom Gundersen edeb68c53f static-nodes: move creation of static nodes from udevd to tmpfiles
As of kmod v14, it is possible to export the static node information from
/lib/modules/`uname -r`/modules.devname in tmpfiles.d(5) format.

Use this functionality to let systemd-tmpfilesd create the static device nodes
at boot, and drop the functionality from systemd-udevd.

As an effect of this we can move from systemd-udevd to systemd-tmpfiles-setup-dev:

 * the conditional CAP_MKNOD (replaced by checking if /sys is mounted rw)
 * ordering before local-fs-pre.target (see 89d09e1b5c)
2013-07-08 21:26:24 +02:00
Kay Sievers fec79699da hwdb: import data 2013-07-08 11:46:44 +02:00
Kay Sievers a4bbef0992 hwdb: add --lookup-prefix= option 2013-07-08 11:44:17 +02:00
Kay Sievers bfdf1adc6e hwdb: remove too broad PNP* match from 20-acpi-vendor.hwdb 2013-07-08 01:10:48 +02:00
Zbigniew Jędrzejewski-Szmek 65b571fcfb man: tweak the description of System/RuntimeMaxUse
https://bugs.freedesktop.org/show_bug.cgi?id=66657
2013-07-06 23:35:09 -04:00
Zbigniew Jędrzejewski-Szmek 19887cd06a man: document machinectl and systemd-machined 2013-07-06 22:23:31 -04:00
Zbigniew Jędrzejewski-Szmek 925d98b344 systemd-python: wrap sd_notify
_listen_fds() is modified to accept unset_environment arg as keyword,
to match new notify().
2013-07-05 22:50:42 -04:00
Kay Sievers 26306aed13 update TODO 2013-07-05 14:59:52 +02:00
Zbigniew Jędrzejewski-Szmek a8b409dbc9 tests: add tests for string lookup tables
The tests check if the tables have entries for all values
in the enum, and that the entries are unique.
2013-07-05 01:36:16 -04:00
Kay Sievers ec26be514f suppress status message output at shutdown when 'quiet' is given 2013-07-05 00:32:05 +02:00
Kay Sievers c1eba3008c cgroups-agent: remove ancient fallback code; turn connection error into warning
During re-execution and shutdown cgroups agents might not be able
to connect to systemd's private D-Bus socket, the printed error to
the console is misleding in that case, so turn it into a warning.
2013-07-04 20:54:40 +02:00
Kay Sievers ad929bcc27 disable the cgroups release agent when shutting down
During shutdown, when we try to clean up all remaining processes, the
kernel will fork new agents every time a cgroup runs empty. These
new processes cause delays in the final SIGTERM, SIGKILL logic.

Apart from that, this should also avoid that the kernel-forked binaries
cause unpredictably timed access to the filesystem which we might need to
unmount.
2013-07-04 20:31:18 +02:00