Commit Graph
5106 Commits
Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek 35375afec5 login: fix login_is_valid test 2013-09-16 11:10:55 -05:00
Dave Reisner 3cf0f8f7e0 udev-rules: avoid erroring on trailing whitespace
https://bugs.archlinux.org/task/36950
2013-09-16 11:46:05 -04:00
Zbigniew Jędrzejewski-Szmek 4b549144d8 Verify validity of session name when received from outside
Only ASCII letters and digits are allowed.
2013-09-16 09:58:37 -05:00
Zbigniew Jędrzejewski-Szmek 1244d8d640 transaction.c: do not point users to logs when unit not found
The logs are unlikely to contain any useful information in this case.

Also, change "walked on cycle path" to "found dependency on", which
is less technical and indicates the direction. With the old message,
I was never sure if prior units depended on later ones, or vice versa.

https://bugzilla.redhat.com/show_bug.cgi?id=996133
https://bugzilla.redhat.com/show_bug.cgi?id=997082
2013-09-16 09:47:28 -05:00
Zbigniew Jędrzejewski-Szmek 442e00839e Assume that /proc/meminfo can be missing
Travis tests are failing, probably because /proc/meminfo is not available
in the test environment. The same might be true in some virtualized systems,
so just treat missing /proc/meminfo as a sign that hibernation is not
possible.
2013-09-16 09:47:28 -05:00
Gao feng 112a7f4696 cgroup: add missing equals for BlockIOWeight 2013-09-16 09:19:00 -04:00
Tom Gundersen 4e82fe5213 swap: create .wants symlink to 'auto' swap devices
As we load unit files lazily, we need to make sure something pulls in swap
units that should be started automatically, otherwise the default dependencies
will never be applied.

This partially reinstates code removed in
commit 64347fc2b9.

Also don't order swap devices after swap.target when they are 'nofail'.
2013-09-16 01:11:52 +02:00
Zbigniew Jędrzejewski-Szmek 69ab808815 Advertise hibernation only if there's enough free swap
Condition that is checked is taken from upower:
  active(anon) < free swap * 0.98

This is really stupid, because the kernel knows the situation better,
e.g. there could be two swap files, and then hibernation would be
impossible despite passing this check, or the kernel could start
supporting compressed swap and/or compressed hibernation images, and
then this this check would be too stringent. Nevertheless, until
we have something better, this should at least return a true negative
if there's no swap.

Logging of capabilities in the journal is changed to not strip leading
zeros. I consider this more readable anyway.

http://cgit.freedesktop.org/upower/tree/src/up-daemon.c#n613
https://bugzilla.redhat.com/show_bug.cgi?id=1007059
2013-09-13 19:41:52 -04:00
Lukas Nykryn 6faa3dcbb8 libudev: fix move_later comparison
At the beginning move_later is set to -1, but it is set to different
value only if expression !move_later is true.
2013-09-13 15:36:08 +02:00
Tom Gundersen 90060fa660 swap: fix reverse dependencies
Make sure swap.target correctly requires/wants the swap units.

This fixes https://bugs.freedesktop.org/show_bug.cgi?id=69291.

Reported-by: Hussam Al-Tayeb
2013-09-13 14:48:29 +02:00
Lukas Nykryn 81c68af03f core/cgroup: first print then free 2013-09-13 14:40:58 +02:00
Lukas Nykryn 2dba165c63 random-seed: we should return errno of failed loop_write 2013-09-13 14:32:14 +02:00
Gao feng 6a94f2e938 cgroup: fix incorrectly setting memory cgroup
If the memory_limit of unit is -1, we should write "-1"
to the file memory.limit_in_bytes. not the (unit64_t) -1.

otherwise the memory.limit_in_bytes will be set to zero.
2013-09-13 14:32:14 +02:00
Gao feng 84121bc2ee cgroup: correct the log information
it should be memory.soft_limit_in_bytes.
2013-09-13 14:32:14 +02:00
Gao feng 15b4a7548f cgroup: add the missing setting of variable's value
set the value of variable "r" to the return value
of cg_set_attribute.
2013-09-13 14:32:14 +02:00
David Mackey a5e41bdb72 automount: rename repeat_unmont to repeat_unmount
Trivial cleanup of repeat_unmount() spelling.
2013-09-13 14:32:08 +02:00
Tom Gundersen 7ab064a6d6 cryptsetup-generator: allow specifying options in /proc/cmdline
The main usecase for this is to make it possible to use cryptsetup in
the initrd without it having to include a host-specific /etc/crypttab.

Tested-by: Thomas Bächler <thomas@archlinux.org>
2013-09-13 11:52:14 +02:00
Tom Gundersen 8c11d3c1b5 cryptsetup-generator: don't create tmp+swap units 2013-09-13 11:52:14 +02:00
Kay Sievers 6e869e18c0 shut up gcc complaining about freeing a const variable 2013-09-12 23:37:23 +02:00
Umut Tezduyar d137a488af core: notify triggered by socket of a service 2013-09-12 18:47:20 +02:00
Hannes Reinecke dc99a97644 service: Implement 'on-watchdog' restart option
Services using the watchdog option might want to be restarted
only if the watchdog triggers.
2013-09-12 18:29:44 +02:00
Olivier Brunel 00a1686189 journald: Log error when failed to get machine-id on start
Can help since the journal requires /etc/machine-id to exists in order to start,
and will simply silently exit when it does not.
2013-09-12 18:19:16 +02:00
Michal Sekletar c1e784feb4 systemctl: process only signals for jobs we really wait for
wait_filter() callback shouldn't process JobRemove signals for arbitrary
jobs. It should only deal with signals for jobs which are included in
set of jobs we wait for.
2013-09-12 18:09:08 +02:00
Zbigniew Jędrzejewski-Szmek da2620a5f8 Actually allow tabs in environment files
Fixup for ac4c8d6da8.
2013-09-12 10:03:16 -04:00
Michael Marineau 39f0570d6e getty-generator: Enable getty on all active serial consoles.
This enables a getty on active kernel consoles even when they are not
the last one specified on the kernel command line and mapped to
/dev/console. Now the order "console=ttyS0 console=tty0" works in
addition to "console=tty0 console=ttyS0".
2013-09-12 08:34:30 -04:00
Zbigniew Jędrzejewski-Szmek ac4c8d6da8 Allow tabs in environment files
bash allows them, and so should we.

string_has_cc is changed to allow tabs, and if they are not wanted,
they must be now checked for explicitly. There are two other callers,
apart from the env file loaders, and one already checked anyway, and
the other is changed to check.

https://bugs.freedesktop.org/show_bug.cgi?id=68592
https://bugs.gentoo.org/show_bug.cgi?id=481554
2013-09-11 21:58:22 -04:00
Zbigniew Jędrzejewski-Szmek 5c390a4ae0 Add pam configuration to allow user sessions to work out of the box
systemd-logind will start user@.service. user@.service unit uses
PAM with service name 'systemd-user' to perform account and session
managment tasks. Previously, the name was 'systemd-shared', it is
now changed to 'systemd-user'.

Most PAM installations use one common setup for different callers.
Based on a quick poll, distributions fall into two camps: those that
have system-auth (Redhat, Fedora, CentOS, Arch, Gentoo, Mageia,
Mandriva), and those that have common-auth (Debian, Ubuntu, OpenSUSE).
Distributions that have system-auth have just one configuration file
that contains auth, password, account, and session blocks, and
distributions that have common-auth also have common-session,
common-password, and common-account. It is thus impossible to use one
configuration file which would work for everybody. systemd-user now
refers to system-auth, because it seems that the approach with one
file is more popular and also easier, so let's follow that.
2013-09-11 15:35:06 -04:00
Lennart Poettering 7b617155b5 core: failed scope units may not be restarted
We don't allow reusing of scopes.
2013-09-11 19:28:28 +02:00
Giovanni Campagna 44ded3abc2 sd-login: add a public accessor for the VT number
The VT number was already part of the DBus API, but was not
exposed in the C API.
2013-09-11 19:08:20 +02:00
Thomas Bächler 404dac4d96 cryptsetup: Retry indefinitely if tries=0 option has been set.
When running from initrd, entering a wrong passphrase usually means that
you cannot boot. Therefore, we allow trying indefinitely.
2013-09-11 17:44:33 +02:00
Tom Gundersen 64347fc2b9 swap: handle nofail/noauto in core 2013-09-11 14:43:24 +02:00
Tom Gundersen 88ac30a197 mount: filesystems mounted in the initrd should not conflict with umount.target in the real root
These mounts should be kept around and unmounted in the shutdown ramfs.

Currently, we will still attempt to umount these in the final kill spree, but
we should consider avoiding that too. Also, the should_umount function should
be generalised and put into util.c or something like that, but we are still
discussing precisely how.
2013-09-11 14:42:36 +02:00
Tom Gundersen 5073f89f10 mount: move device links handling from generator
This makes mount units work like swap units: when the backing device appears
the mount unit will be started.

v2: the device should want the mount unconditionally, not only for DefaultDependencies=yes
2013-09-11 14:40:59 +02:00
Tom Gundersen b56a422a91 swap: backing device should unconditionally want swap unit
There is no need to restrict this to only the 'nofail' case. In the '!nofail'
case the unit is already wanted by swap.target, so this is not a functional change.
2013-09-11 14:40:59 +02:00
Tom Gundersen 80c3b720bf fstab-generator: use DefaultDependencies=yes
This removes some redundancy between the generator and the core mount handling.
2013-09-11 14:40:59 +02:00
Gao feng b8ab2dc6c9 systemctl: show BlockIODeviceWeight for unit
We can use systemctl show unitname to show the BlockIODeviceWeight
of unit.
2013-09-10 18:32:32 +02:00
Gao feng 7239c1707a systemcl: add support for setting BlockIODeviceWeight for unit
This patch allows user to set up BlockIODeviceWeight for unit
through systemctl. Such as

systemctl set-property sshd.service BlockIODeviceWeight="/dev/sda 100"
2013-09-10 18:31:43 +02:00
Gao feng 6f68ecb450 cgroup: setup BlockIODeviceWeight in bus_cgroup_set_property
This patch adds the support for setting up BlockIODeviceWeight
in bus_cgroup_set_property. most of the codes are copied from
the case that sets up DeviceAllow.
2013-09-10 18:24:34 +02:00
Lennart Poettering 06eb4e3bf8 cgroup: compare fs paths with path_equal() rather than streq() 2013-09-10 18:21:10 +02:00
Gao feng 670612567b systemcl: add support for setting BlockIORead/WriteBandwidth for unit
This patch allows user to set up BlockIOReadBandwidth and BlockIOWriteBandwidth
for unit through systemctl. Such as

systemctl set-property sshd.service BlockIOReadBandwidth="/dev/sda 100000"
systemctl set-property sshd.service BlockIOWriteBandwidth="/dev/sda 200000"
2013-09-10 17:29:55 +02:00
Gao feng f004c2ca11 cgroup: setup BlockIORead/WriteBandwidth in bus_cgroup_set_property
This patch adds the support for setting up BlockIORead/WriteBandwidth
in bus_cgroup_set_property.
2013-09-10 17:23:07 +02:00
Gao feng 47c0980d37 blkio bandwidth: don't clean up all of entries in blockio_device_bandwidths list
if we get BlockIOReadBandwidth="", we should only remove the
read-bandwidth-entries in blockio_device_bandwidths list.
2013-09-10 17:12:13 +02:00
Lukas Nykryn 9285c9ff26 service: remove pidfile after exit of a service 2013-09-10 16:58:04 +02:00
Zbigniew Jędrzejewski-Szmek 289f910e16 journald: be a bit more verbose when vacuuming
Vacuuming behaviour is a bit confusing, and/or we have some bugs,
so those additional messages should help to find out what's going
on. Also, rotation of journal files shouldn't be happening too
often, so the level of the messages is bumped to info, so that
they'll be logged under normal operation.
2013-09-10 08:27:30 -04:00
Zbigniew Jędrzejewski-Szmek 4bcc8c3cb5 Fix two compiler warnings 2013-09-09 17:35:52 -04:00
Zbigniew Jędrzejewski-Szmek c9d954b27e run: allow non-absolute paths as command 2013-09-09 13:49:30 -04:00
Zbigniew Jędrzejewski-Szmek 116cc02874 path-util.c: small modernization 2013-09-09 13:49:30 -04:00
Zbigniew Jędrzejewski-Szmek a6fde35332 systemd-run: properly escape arguments
Spaces, quotes, and such, were not properly escaped. We should
write them like we read them.

https://bugs.freedesktop.org/show_bug.cgi?id=67971
2013-09-09 13:49:29 -04:00
Andrew Cook 92f2ff4415 systemd-coredump: Log crashes without coredumps on failure
Make a best-effort attempt to store information about crashes during
failure, currently if these are encountered the crash is completely
silenced.

ideally coredumpctl would show if a coredump is available.
2013-09-06 10:09:55 +02:00
Andrew Cook ca0ceb6f3e systemd-coredump: Ignore coredumps larger than COREDUMP_MAX
Currently this check happens when the coredump has been collected in
it's entirety and being received by journald. this is not ideal
behaviour when the crashing process is consuming significant percentage
of physical memory such as a large instance of firefox or a java
application.
2013-09-06 10:09:54 +02:00