summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-09-26core: drop some out-of-date references to cgroup settingsLennart Poettering
2013-09-26logind: never consider a closing session relevant for PK checksLennart Poettering
https://bugzilla.redhat.com/show_bug.cgi?id=1010215
2013-09-26main: set umask before creating any filesMike Gilbert
This avoids a problem when we inherit a non-zero umask from the initramfs. This would cause /run/systemd to be created with the wrong mode.
2013-09-26logind: if a user is sitting in front of the computer and can shutdown the ↵Lennart Poettering
machine anyway he should also be able to reboot it
2013-09-26core: rework how we match mount units against each otherLennart Poettering
Previously to automatically create dependencies between mount units we matched every mount unit agains all others resulting in O(n^2) complexity. On setups with large amounts of mount units this might make things slow. This change replaces the matching code to use a hashtable that is keyed by a path prefix, and points to a set of units that require that path to be around. When a new mount unit is installed it is hence sufficient to simply look up this set of units via its own file system paths to know which units to order after itself. This patch also changes all unit types to only create automatic mount dependencies via the RequiresMountsFor= logic, and this is exposed to the outside to make things more transparent. With this change we still have some O(n) complexities in place when handling mounts, but that's currently unavoidable due to kernel APIs, and still substantially better than O(n^2) as before. https://bugs.freedesktop.org/show_bug.cgi?id=69740
2013-09-26unit-name: when escaping a path consider the empty path identical to the ↵Lennart Poettering
root dir
2013-09-26util: properly handle the root dir in PATH_FOREACH_PREFIXLennart Poettering
Also add PATH_FOREACH_PREFIX_MORE which includes the specified dir itself in the iteration
2013-09-26cgroup: when referencing cgroup controller trees allow omission of the pathLennart Poettering
2013-09-26Move part of logind.c into a separate fileZbigniew Jędrzejewski-Szmek
liblogind-core.la was underlinked, missing a few functions defined in logind.c. They are moved to a new file, logind-core.c, and this file is linked into liblogind-core.la. In addition, logind-acl.c is attached to the liblogind-core.la, instead of systemd-logind directly.
2013-09-26Move functions around to fix underlinking in test-machine-tablesZbigniew Jędrzejewski-Szmek
2013-09-26build-sys: add ./configure --enable-address-sanitizerZbigniew Jędrzejewski-Szmek
Enabling address sanitizer seems like a useful thing, but is quite tricky. Proper flags have to be passed to CPPFLAGS, CFLAGS and LDFLAGS, but passing them on the commandline doesn't work because we tests are done with ld directly, and not with libtool like in real linking. We might want to fix this, but let's add a handy way to enable address checking anyway.
2013-09-26journald: accept EPOLLERR from /dev/kmsgZbigniew Jędrzejewski-Szmek
Also print out unexpected epoll events explictly.
2013-09-26test-hashmap: fix access to uninitialized memoryZbigniew Jędrzejewski-Szmek
2013-09-26execute.c: little modernizationZbigniew Jędrzejewski-Szmek
2013-09-25util: add macro for iterating through all prefixes of a pathLennart Poettering
Syntactic sugar in a macro PATH_FOREACH_PREFIX.
2013-09-25keymap: Add Samsung Ativ 9 PlusJimmie Tauriainen
https://launchpad.net/bugs/1229936
2013-09-25cgroup: if we do a cgroup operation then do something on all supported ↵Lennart Poettering
controllers Previously we did operations like attach, trim or migrate only on the controllers that were enabled for a specific unit. With this changes we will now do them for all supproted controllers, and fall back to all possible prefix paths if the specified paths do not exist. This fixes issues if a controller is being disabled for a unit where it was previously enabled, and makes sure that all processes stay as "far down" the tree as groups exist.
2013-09-24journalctl(1): s/adm/systemd-journal/Dave Reisner
2013-09-24logind: return -EINVAL when PID is wrongLukas Nykryn
dbus-send --print-reply --system --dest=org.freedesktop.login1 /org/freedesktop/login1 org.freedesktop.login1.Manager.GetUserByPID uint32:0 causes systemd-logind[29843]: Assertion 'pid >= 1' failed at src/login/logind.c:938, function manager_get_user_by_pid(). Aborting.
2013-09-24TODO: add header backKay Sievers
2013-09-24hwdb: updateKay Sievers
2013-09-24support acpi firmware performance data (FPDT)Kay Sievers
Prefer firmware-provided performance data over loader-exported ones; if ACPI data is available, always use it, otherwise try to read the loader data. The firmware-provided variables start at the time the first EFI image is executed and end when the operating system exits the boot services; the (loader) time calculated in systemd-analyze increases.
2013-09-24shared: device-nodes - add include guardKay Sievers
2013-09-24TODO: updateKay Sievers
2013-09-23cgroup: always enable memory.use_hierarchy= for all cgroups in the memory ↵Lennart Poettering
hierarchy The non-hierarchial mode contradicts the whole idea of a cgroup tree so let's not support this. In the future the kernel will only support the hierarchial logic anyway.
2013-09-23Fix obsolete references to systemd-random-seed-load.serviceEelco Dolstra
This service was merged with systemd-random-seed-save.service in c35b956d34bbb8bb208e49e45de2c103ca11911c.
2013-09-20completion/systemctl: add missing list-sockets verbDave Reisner
2013-09-20logind: put correct user object paths in introspection dataMantas Mikulėnas
Sync with user_bus_path() in logind-user-dbus.c
2013-09-19man: mention --runtime where appropriateZbigniew Jędrzejewski-Szmek
https://bugzilla.redhat.com/show_bug.cgi?id=1009956
2013-09-19keymap: Fix wrong assignments to F23Martin Pitt
These days, F21/F22/F23 mean Touchpad toggle/on/off. Clean up other assignments to that from ancient times which belong to keys like "Auto Brightness" (which doesn't have a keycode and is usually hardwired) or some "launch vendor tool" key. https://bugs.freedesktop.org/show_bug.cgi?id=62953
2013-09-19systemctl: Avoid ellipsizing when piping outputDave Reisner
2013-09-19Add more tests and fix capability loggingZbigniew Jędrzejewski-Szmek
2013-09-19build-sys: don't build python modules after --without-pythonZbigniew Jędrzejewski-Szmek
The modules should build just fine, but AM_PATH_PYTHON sets pkgpyexecdir for us. Without that variable we don't know where to install modules. In addition libtool tries an empty rpath, breaking the build. Those issues could be fixed or worked around, but we probably don't have many people who want to avoid using python binary, but want to compile python modules. If such uses ever come up, this issue should be revisited.
2013-09-19fix grammatical errorDave Reisner
2013-09-19nspawn: be less liberal about creating bind mount destinationsDave Reisner
Previously, if a file's bind mount destination didn't exist, nspawn would blindly create a directory, and the subsequent bind mount would fail. Examine the filetype of the source and ensure that, if the destination does not exist, that it is created appropriately. Also go one step further and ensure that the filetypes of the source and destination match.
2013-09-19test-utf8: add more tests for public functionsDave Reisner
2013-09-19device-nodes: move device node specific code to own fileDave Reisner
In the process, rename udev_encode_string which is poorly named for what it does. It deals specifically with encoding names that udev creates and has its own rules: utf8 is valid but some ascii is not (e.g. path separators), and everything else is simply escaped. Rename it to encode_devnode_name.
2013-09-19shared/utf8: merge implementations, remove cruftDave Reisner
This unifies the utf8 handling code which was previously duplicated in udev and systemd.
2013-09-19udev-builtin-blkid: export ID_PART_TABLE_UUIDDave Reisner
2013-09-19clarify $ escaping in Exec* linesAndrey Borzenkov
Explain that literal $ can be passed by doubling it.
2013-09-18Spelling fix from later revision of committed patch from Shawn Landden ↵David Strauss
<shawn@churchofgit.com>.
2013-09-18Fix capability logging when effective caps are 0Zbigniew Jędrzejewski-Szmek
Shawn Landen> Doesn't this also skip the last '0' when it is all '0's? You need to keep the last one.
2013-09-18polkit: Avoid race condition in scraping /procColin Walters
If a calling process execve()s a setuid program, it can appear to be uid 0. Since we're receiving requests over DBus, avoid this by simply passing system-bus-name as a subject.
2013-09-18logs-show.c: fix enum type in function declarationZbigniew Jędrzejewski-Szmek
2013-09-17util: restore get_process_capeff behaviourZbigniew Jędrzejewski-Szmek
69ab8088 unified parsing of status files and removed the logic of skipping extra '0's when getting the effective capabilities. Restore that logic, so that the same capabilities are always mapped to the same strings in the journal.
2013-09-17Remove six unused variables and add annotationZbigniew Jędrzejewski-Szmek
clang FTW!
2013-09-17logind: fix build for ARM with sizeof(dev_t) > sizeof(void*)David Herrmann
Unfortunately on ARM-32 systems dev_t can be 64bit and thus we cannot store it easily in void* keys for hashtables. Fix that by passing a pointer to the dev_t variable instead.
2013-09-17gpt-auto-generator: do not assume that /dev/block/%u:%u is useableLennart Poettering
The generator might run before udev, and udev sets up the /dev/block/ symlinks, hence we cannot use them from the gpt generator. Instead, manually translate a major/minor to a device node.
2013-09-17backlight,random-seed: move state files into /var/lib/systemdLennart Poettering
Let's not scatter (private) files in /var around, let's place them all in /var/lib/systemd and below.
2013-09-17logind: implement generic multi-sessionDavid Herrmann
This enables the multi-session capability for seats that don't have VTs. For legacy seats with VTs, everything stays the same. However, all other seats now also get the multi-session capability. The only feature that was missing was session-switching. As logind can force a session-switch and signal that via the "Active" property, we only need a way to allow synchronized/delayed session switches. Compositors need to cleanup some devices before acknowledging the session switch. Therefore, we use the session-devices to give compositors a chance to block a session-switch until they cleaned everything up. If you activate a session on a seat without VTs, we send a PauseDevice signal to the active session for every active device. Only once the session acknowledged all these with a PauseDeviceComplete() call, we perform the final session switch. One important note is that delayed session-switching is meant for backwards compatibility. New compositors or other sessions should really try to deal correctly with forced session switches! They only need to handle EACCES/EPERM from syscalls and treat them as "PauseDevice" signal. Following logind patches will add a timeout to session-switches which forces the switch if the active session does not react in a timely fashion. Moreover, explicit ForceActivate() calls might also be supported. Hence, sessions must not crash if their devices get paused.