summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2013-09-13random-seed: we should return errno of failed loop_writeLukas Nykryn
2013-09-13cgroup: fix incorrectly setting memory cgroupGao feng
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-13cgroup: correct the log informationGao feng
it should be memory.soft_limit_in_bytes.
2013-09-13cgroup: add the missing setting of variable's valueGao feng
set the value of variable "r" to the return value of cg_set_attribute.
2013-09-13automount: rename repeat_unmont to repeat_unmountDavid Mackey
Trivial cleanup of repeat_unmount() spelling.
2013-09-13cryptsetup-generator: allow specifying options in /proc/cmdlineTom Gundersen
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-13cryptsetup-generator: don't create tmp+swap unitsTom Gundersen
2013-09-12shut up gcc complaining about freeing a const variableKay Sievers
2013-09-12core: notify triggered by socket of a serviceUmut Tezduyar
2013-09-12service: Implement 'on-watchdog' restart optionHannes Reinecke
Services using the watchdog option might want to be restarted only if the watchdog triggers.
2013-09-12journald: Log error when failed to get machine-id on startOlivier Brunel
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-12systemctl: process only signals for jobs we really wait forMichal Sekletar
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-12Actually allow tabs in environment filesZbigniew Jędrzejewski-Szmek
Fixup for ac4c8d6da8b5e.
2013-09-12getty-generator: Enable getty on all active serial consoles.Michael Marineau
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-11Allow tabs in environment filesZbigniew Jędrzejewski-Szmek
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-11Add pam configuration to allow user sessions to work out of the boxZbigniew Jędrzejewski-Szmek
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-11core: failed scope units may not be restartedLennart Poettering
We don't allow reusing of scopes.
2013-09-11sd-login: add a public accessor for the VT numberGiovanni Campagna
The VT number was already part of the DBus API, but was not exposed in the C API.
2013-09-11cryptsetup: Retry indefinitely if tries=0 option has been set.Thomas Bächler
When running from initrd, entering a wrong passphrase usually means that you cannot boot. Therefore, we allow trying indefinitely.
2013-09-11swap: handle nofail/noauto in coreTom Gundersen
2013-09-11mount: filesystems mounted in the initrd should not conflict with ↵Tom Gundersen
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-11mount: move device links handling from generatorTom Gundersen
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-11swap: backing device should unconditionally want swap unitTom Gundersen
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-11fstab-generator: use DefaultDependencies=yesTom Gundersen
This removes some redundancy between the generator and the core mount handling.
2013-09-10systemctl: show BlockIODeviceWeight for unitGao feng
We can use systemctl show unitname to show the BlockIODeviceWeight of unit.
2013-09-10systemcl: add support for setting BlockIODeviceWeight for unitGao feng
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-10cgroup: setup BlockIODeviceWeight in bus_cgroup_set_propertyGao feng
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-10cgroup: compare fs paths with path_equal() rather than streq()Lennart Poettering
2013-09-10systemcl: add support for setting BlockIORead/WriteBandwidth for unitGao feng
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-10cgroup: setup BlockIORead/WriteBandwidth in bus_cgroup_set_propertyGao feng
This patch adds the support for setting up BlockIORead/WriteBandwidth in bus_cgroup_set_property.
2013-09-10blkio bandwidth: don't clean up all of entries in blockio_device_bandwidths listGao feng
if we get BlockIOReadBandwidth="", we should only remove the read-bandwidth-entries in blockio_device_bandwidths list.
2013-09-10service: remove pidfile after exit of a serviceLukas Nykryn
2013-09-10journald: be a bit more verbose when vacuumingZbigniew Jędrzejewski-Szmek
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-09Fix two compiler warningsZbigniew Jędrzejewski-Szmek
2013-09-09run: allow non-absolute paths as commandZbigniew Jędrzejewski-Szmek
2013-09-09path-util.c: small modernizationZbigniew Jędrzejewski-Szmek
2013-09-09systemd-run: properly escape argumentsZbigniew Jędrzejewski-Szmek
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-06systemd-coredump: Log crashes without coredumps on failureAndrew Cook
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-06systemd-coredump: Ignore coredumps larger than COREDUMP_MAXAndrew Cook
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-06journald: fix fd leak in journal_file_emptyGeorge McCollister
Before my previous patch, journal_file_empty wasn't be called with the correct filename. Now that it's being called with the correct filename it leaks file descriptors. This patch closes the file descriptors before returning. Signed-off-by: George McCollister <george.mccollister@gmail.com> [Edit harald@redhat.com: make use of _cleanup_close_ instead]
2013-09-06journald: fix vacuuming of archived journalsGeorge McCollister
d_name is modified on line 227 so if the entire journal name is needed again p must be used. Before this change when journal_file_empty was called on archived journals it would always return with -2. Signed-off-by: George McCollister <george.mccollister@gmail.com>
2013-09-04libudev: enumerate - do not try to match against an empty subsystemKay Sievers
2013-09-04libudev: enumerate: fix NULL-deref for subsystem-matchesDavid Herrmann
udev_device_get_subsystem() may return NULL if no subsystem could be figured out by libudev. This might be due to OOM or if the device disconnected between the udev_device_new() call and udev_device_get_subsystem(). Therefore, we need to handle subsystem==NULL safely. Instead of testing for it in each helper, we treat subsystem==NULL as empty subsystem in match_subsystem(). Backtrace of udev_enumerate with an input-device disconnecting in exactly this time-frame: (gdb) bt #0 0x00007ffff569dc24 in strnlen () from /usr/lib/libc.so.6 #1 0x00007ffff56d9e04 in fnmatch@@GLIBC_2.2.5 () from /usr/lib/libc.so.6 #2 0x00007ffff5beb83d in match_subsystem (udev_enumerate=0x7a05f0, subsystem=0x0) at src/libudev/libudev-enumerate.c:727 #3 0x00007ffff5bebb30 in parent_add_child (enumerate=enumerate@entry=0x7a05f0, path=<optimized out>) at src/libudev/libudev-enumerate.c:834 #4 0x00007ffff5bebc3f in parent_crawl_children (enumerate=enumerate@entry=0x7a05f0, path=0x7a56b0 "/sys/devices/<shortened>/input/input97", maxdepth=maxdepth@entry=254) at src/libudev/libudev-enumerate.c:866 #5 0x00007ffff5bebc54 in parent_crawl_children (enumerate=enumerate@entry=0x7a05f0, path=0x79e8c0 "/sys/devices/<shortened>/input", maxdepth=maxdepth@entry=255) at src/libudev/libudev-enumerate.c:868 #6 0x00007ffff5bebc54 in parent_crawl_children (enumerate=enumerate@entry=0x7a05f0, path=path@entry=0x753190 "/sys/devices/<shortened>", maxdepth=maxdepth@entry=256) at src/libudev/libudev-enumerate.c:868 #7 0x00007ffff5bec7df in scan_devices_children (enumerate=0x7a05f0) at src/libudev/libudev-enumerate.c:882 #8 udev_enumerate_scan_devices (udev_enumerate=udev_enumerate@entry=0x7a05f0) at src/libudev/libudev-enumerate.c:919 #9 0x00007ffff5df8777 in <random_caller> () at some/file.c:181
2013-09-04cgtop: fixup the online helpBrandon Philips
The online help shows the keys as uppercase but the code and manpage say lower case. Make the online help follow reality.
2013-09-04libudev: fix memleak when enumerating childsDavid Herrmann
We need to free udev-devices again if they don't match. Funny that no-one noticed it yet since valgrind is quite verbose about it. Fix it and free non-matching devices.
2013-08-30main: drop capabilities of userhelpers before oursHarald Hoyer
First drop the capabilities of the userhelpers before dropping our own, otherwise we might not be allowed to drop the capabilities of the userhelpers. Especially, if we want to drop CAP_SYS_MODULE. Credits: Matteo Sasso
2013-08-28Do not realloc strings, which are already in the hashmap as keysHarald Hoyer
This prevents corruption of the hashmap, because we would free() the keys in the hashmap, if the unit is already in there, with the same cgroup path.
2013-08-28Revert "cgroup.c: check return value of unit_realize_cgroup_now()"Harald Hoyer
This reverts commit 1f11a0cdfe397cc404d61ee679fc12f58c0a885b.
2013-08-28cgroup: only check once when mode is UNIT_CHECKGao feng
If the mode is UNIT_CHECK,it means we only want to check if the paramaters are valid. the first round of cycle already did this check, no need to check again.
2013-08-28device cgroup: don't create a new CGroupDeviceAllow when it already in the listGao feng
If a device node is already in the device_allow list of CGroupContext, we should replace it instead of create a new one and append this new one to the end of device_allow list. change from v1: use streq to replace !strcmp