summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-05-26Do not unescape unit names in [Install] sectionMichal Sekletar
https://bugs.freedesktop.org/show_bug.cgi?id=49316
2014-05-26udev: keyboard - also hook into "change" eventsKay Sievers
Re-apply the keymaps when "udevadm trigger" is called. Hooking into "add" only would just remove all keymap content from the udev database instead of applying the new config.
2014-05-25keymap: Asus EeePC touchpad toggle keyMartin Pitt
Originally is KEY_TOUCHPAD_TOGGLE, but X.org can't handle the big key events, so use the F21 convention. https://bugs.freedesktop.org/show_bug.cgi?id=72807
2014-05-25keymap: Add Lenovo Enhanced USB KeyboardMartin Pitt
https://bugs.freedesktop.org/show_bug.cgi?id=77234
2014-05-25timesysnc: reword network watching messages, and move resolver errors to debugKay Sievers
2014-05-25nspawn: make nspawn robust to container failureDjalal Harouni
nspawn and the container child use eventfd to wait and notify each other that they are ready so the container setup can be completed. However in its current form the wait/notify event ignore errors that may especially affect the child (container). On errors the child will jump to the "child_fail" label and terminate with _exit(EXIT_FAILURE) without notifying the parent. Since the eventfd is created without the "EFD_NONBLOCK" flag, this leaves the parent blocking on the eventfd_read() call. The container can also be killed at any moment before execv() and the parent will not receive notifications. We can fix this by using cheap mechanisms, the new high level eventfd API and handle SIGCHLD signals: * Keep the cheap eventfd and EFD_NONBLOCK flag. * Introduce eventfd states for parent and child to sync. Child notifies parent with EVENTFD_CHILD_SUCCEEDED on success or EVENTFD_CHILD_FAILED on failure and before _exit(). This prevents the parent from waiting on an event that will never come. * If the child is killed before execv() or before notifying the parent, we install a NOP handler for SIGCHLD which will interrupt blocking calls with EINTR. This gives a chance to the parent to call wait() and terminate in main(). * If there are no errors, parent will block SIGCHLD, restore default handler and notify child which will do execv(), then parent will pass control to process_pty() to do its magic. This was exposed in part by: https://bugs.freedesktop.org/show_bug.cgi?id=76193 Reported-by: Tobias Hunger tobias.hunger@gmail.com
2014-05-25nspawn: move container wait logic into wait_for_container()Djalal Harouni
Move the container wait logic into its own wait_for_container() function and add two status codes: CONTAINER_TERMINATED or CONTAINER_REBOOTED. The status will be stored in its argument, this way we handle: a) Return negative on failures. b) Return zero on success and set the status to either CONTAINER_REBOOTED or CONTAINER_TERMINATED. These status codes are used to terminate nspawn or loop again in case of CONTAINER_REBOOTED.
2014-05-25test-path-util: add tests for path_make_relative()Tanu Kaskinen
2014-05-25path-util: fix missing terminating zeroTanu Kaskinen
There was this code: if (to_path_len > 0) memcpy(p, to_path, to_path_len); That didn't add the terminating zero, so the resulting string was corrupt if this code path was taken. Using strcpy() instead of memcpy() solves this issue, and also simplifies the code. Previously there was special handling for shortening "../../" to "../..", but that has now been replaced by a path_kill_slashes() call, which also makes the result prettier in case the input contains redundant slashes that would otherwise be copied to the result.
2014-05-25Use %m instead of strerror(errno) where appropiateCristian Rodríguez
2014-05-25test-unit-file: skip if unit_file_get_list returns permission deniedCristian Rodríguez
2014-05-24Fix several small typosJonathan Boulle
2014-05-24man: describe sd_uid_get_displayZbigniew Jędrzejewski-Szmek
2014-05-24NEWS: mention that systemd-analyze uses new kernel release infoZbigniew Jędrzejewski-Szmek
Also some small grammar updates.
2014-05-24build-sys: fix typo in variable nameZbigniew Jędrzejewski-Szmek
2014-05-24man: reword StartupCPUShares= descriptionZbigniew Jędrzejewski-Szmek
Now that we have two options described in the same paragraph, we cannot use singular anymore.
2014-05-24NEWSTom Gundersen
2014-05-24NEWS: updateKay Sievers
2014-05-24detect-virt: Remove string for Microsoft virtualization detection in DMI ↵Reyad Attiyat
vendor string array. The string "Microsoft Corporation" is used in the Surface Tablet's DMI vendor ID. https://bugs.freedesktop.org/show_bug.cgi?id=78312
2014-05-24NEWS: prepare NEWS update for 213Lennart Poettering
2014-05-24core: timer - switch to touch_file()Kay Sievers
2014-05-24timedated: refuse manual system time updates when automatic timesync is enabledKay Sievers
2014-05-24clock-util: clock_[sg]et_time() -> clock_[sg]et_hwclock()Kay Sievers
2014-05-24timesyncd: only update stamp file when we are synchronizedKay Sievers
Create initial stamp file with compiled-in time to prevent bootups with clocks in the future from storing invalid timestamps. At shutdown, only update the timestamp if we got an authoritative time to store.
2014-05-24shared: add touch_file() and let touch() always update timestampKay Sievers
2014-05-24shared: rename hwclock.[ch] to clock-util.[ch]Kay Sievers
2014-05-24sd-network: avoid false positive compiler warning caused by LTOTom Gundersen
Djalal Harouni <tixxdz@opendz.org>: There is also this one genrated by LTO, IMO it's a false positive since we do *check* for "lease" but the code is not consistent since in that code path, "lease" is initialized to NULL in other places, except for this one: src/resolve/resolved-manager.c: In function 'manager_update_resolv_conf': src/libsystemd-network/sd-dhcp-lease.c:67:18: warning: 'lease' may be used uninitialized in this function [-Wmaybe-uninitialized] if (lease->dns_size) { ^ src/network/sd-network.c:146:24: note: 'lease' was declared here sd_dhcp_lease *lease; ^
2014-05-22socket: properly handle if our service vanished during runtimeLennart Poettering
2014-05-22core: remove unused varsLennart Poettering
2014-05-22core: never consider failure when reading drop-ins fatalLennart Poettering
drop-ins don't carry the main configuration of a unit, hence read them if we can't, complain if we cannot, but don't fail.
2014-05-22conf-parser: never consider it an error if we cannot load a drop-in file ↵Lennart Poettering
because it is missing After all, we want to be able to boot with /etc empty one day...
2014-05-22man: update URL refernce in daemon(7)Lennart Poettering
http://lists.freedesktop.org/archives/systemd-devel/2014-May/019410.html
2014-05-22man: drop reference to file locking for PID file creation from daemon(7)Lennart Poettering
File locking is usually a bad idea, don't suggest using it.
2014-05-22update TODOLennart Poettering
2014-05-22nspawn: restore journal directory is empty checkLennart Poettering
This undoes part of commit e6a4a517befe559adf6d1dbbadf425c3538849c9. Instead of removing the error message about non-empty journal bind mount directories, simply downgrade the message to a warning and proceed.
2014-05-22update TODOLennart Poettering
2014-05-22cgroups: simplify CPUQuota= logicLennart Poettering
Only accept cpu quota values in percentages, get rid of period definition. It's not clear whether the CFS period controllable per-cgroup even has a future in the kernel, hence let's simplify all this, hardcode the period to 100ms and only accept percentage based quota values.
2014-05-22time-util: make sure USEC_PER_SEC and friends are actually of type usec_tLennart Poettering
2014-05-22logind: also escape external data when saving to /runLennart Poettering
Better be safe than sorry...
2014-05-22update TODOLennart Poettering
2014-05-22machine: escape fields we store in /run, so that they can be properly ↵Lennart Poettering
unescaped by parse_env_file()
2014-05-22build-sys: let libsystemd_network pull in libudev-internal.laKay Sievers
On Thu, May 22, 2014 at 9:53 AM, Jan Engelhardt <jengelh@inai.de> wrote: > > If libsystemd-network.la is relying on that udev function, it ought > to specify libudev(-internal).la in libsystemd_network_la_LIBADD.
2014-05-22nspawn: allow to bind mount journal on top of a non empty container journal ↵Djalal Harouni
dentry Currently if nspawn was called with --link-journal=host or --link-journal=auto and the right /var/log/journal/machine-id/ exists then the bind mount the subdirectory into the container might fail due to the ~/mycontainer/var/log/journal/machine-id/ of the container not being empty. There is no reason to check if the container journal subdir is empty since there will be a bind mount on top of it. The user asked for a bind mount so give it. Note: a next call with --link-journal=guest may fail due to the /var/log/journal/machine-id/ on the host not being empty. https://bugs.freedesktop.org/show_bug.cgi?id=76193 Reported-by: Tobias Hunger <tobias.hunger@gmail.com>
2014-05-22build-sys: do not run symbol list export test for compat-only libsKay Sievers
The verbose link-time deprecation warnings are annoying. These libs will never change or be extended; there is no need to test the list of exported symbols.
2014-05-22build-sys: fix linking orderKay Sievers
./.libs/libsystemd-network.a(libsystemd_network_la-network-internal.o): network-internal.c:function net_get_unique_predictable_data: error: undefined reference to 'udev_device_get_property_value' collect2: error: ld returned 1 exit status
2014-05-22Makefile.am: fix whitespaceKay Sievers
2014-05-22build: put missing KMOD_CFLAGS into MakefileJan Engelhardt
The build fails if kmod is not in a default location.
2014-05-22timesyncd: order after tmpfiles to get a working network monitorKay Sievers
2014-05-22cgroups: always propagate controller membership to siblings, for all controllersLennart Poettering
This is the behaviour the kernel cgroup rework exposes for all controllers, hence let's do this already now for all cases.
2014-05-22cgroup: rework startup logicLennart Poettering
Introduce a (unsigned long) -1 as "unset" state for cpu shares/block io weights, and keep the startup unit set around all the time.