summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-11-16login: make sure to replace existing unitsDavid Herrmann
When queuing unit jobs, we should rather replace existing units than fail. This is especially important when we queued a user-shutdown and a new login is encountered. In this case, we better raplce the shutdown jobs. systemd takes care of everything else.
2015-11-16login: fix re-use of usersDavid Herrmann
If the last reference to a user is released, we queue stop-jobs for the user-service and slice. Only once those are finished, we drop the user-object. However, if a new session is opened before the user object is fully dropped, we currently incorrectly re-use the object. This has the effect, that we get stale sessions without a valid "systemd --user" instance. Fix this by properly allowing user_start() to be called, even if user->stopping is true.
2015-11-16login: group static fields in "struct User"David Herrmann
Make sure to put static fields together in "struct User". This makes it easier to figure out the lifetime of each field.
2015-11-16login: make user->service staticDavid Herrmann
Just like user->slice, there is no reason to store the unit name in /run, nor should we allocate it dynamically on job instantiation/removal. Just keep it statically around at all times and rely on user->started || user->stopping to figure out whether the unit exists or not.
2015-11-16login: make user_new() and user_free() follow coding-styleDavid Herrmann
Few changes to user_new() and user_free(): - Use _cleanup_(user_freep) in constructor - return 'int' from user_new() - make user_free() deal with partially initialized objects - keep reverse-order in user_free() compared to user_new() - make user_free() return NULL - make user_free() accept NULL as no-op
2015-11-16login: keep user->slice constantDavid Herrmann
Currently, we allocate user->slice when starting a slice, but we never release it. This is incompatible if we want to re-use a user object once it was stopped. Hence, make sure user->slice is allocated statically on the user object and use "u->started || u->stopping" as an indication whether the slice is actually available on pid1 or not.
2015-11-16login: simply XDG_RUNTIME_DIR managementDavid Herrmann
Lets not pretend we support changing XDG_RUNTIME_DIR via logind state files. There is no reason to ever write the string into /run, as we allocate it statically based on the UID, anyway. Lets stop that and just allocate the runtime_path in "struct User" at all times. We keep writing it into the /run state to make sure pam_systemd of previous installs can still read it. However, pam_systemd is now fixed to allocate it statically as well, so we can safely remove that some time in the future. Last but not least: If software depends on systemd, they're more than free to assume /run/user/$uid is their runtime dir. Lets not require sane applications to query the environment to get their runtime dir. As long as applications know their login-UID, they should be safe to deduce the runtime dir.
2015-11-16Merge pull request #1886 from poettering/tasks-maxDavid Herrmann
Enable TasksMax by default for all units
2015-11-16TODO: sortDavid Herrmann
2015-11-16Merge pull request #1907 from evverx/fix-pam-install-on-debianLennart Poettering
tests: fix pam_modules installation on Debian (and Debian-like systems)
2015-11-16virt: sort #includes alphabeticallyMartin Pitt
nitpick from PR #1910
2015-11-16Merge pull request #1908 from phomes/network-memleakDavid Herrmann
network: dhcp6 - fix mem leak
2015-11-16Merge pull request #1906 from poettering/pid-checkDavid Herrmann
machined,logind: be more careful when accepting PIDs and UIDs from clients
2015-11-16nspawn: set TasksMax= for containers to 8192 by defaultLennart Poettering
2015-11-16logind: change default to UserTasksMax= to 4096Lennart Poettering
2015-11-16core: enable TasksMax= for all services by default, and set it to 512Lennart Poettering
Also, enable TasksAccounting= for all services by default, too. See: http://lists.freedesktop.org/archives/systemd-devel/2015-November/035006.html
2015-11-16Merge pull request #1910 from martinpitt/masterLennart Poettering
virt: add missing #includes
2015-11-16virt: add missing #includesMartin Pitt
src/basic/virt.c: In function 'detect_vm_device_tree': src/basic/virt.c:117:17: error: unknown type name '_cleanup_closedir_' _cleanup_closedir_ DIR *dir = NULL; src/basic/virt.c:128:17: error: implicit declaration of function 'FOREACH_DIRENT' [-Werror=implicit-function-declaration] FOREACH_DIRENT(dent, dir, return -errno)
2015-11-16tests: intsall /etc/login.defsEvgeny Vereshchagin
Fixes: systemd-testsuite login[31]: cannot open login definitions /etc/login.defs [No such file or directory] systemd-testsuite systemd[1]: Received SIGCHLD from PID 31 (login). systemd-testsuite systemd[1]: Child 31 (login) died (code=exited, status=1/FAILURE) systemd-testsuite systemd[1]: console-getty.service: Child 31 belongs to console-getty.service systemd-testsuite systemd[1]: console-getty.service: Main process exited, code=exited, status=1/FAILURE systemd-testsuite systemd[1]: console-getty.service: Changed running -> dead on Debian/Ubuntu Useful on other distros
2015-11-15network: dhcp6 - fix mem leakThomas Hindoe Paaboel Andersen
from 7a695d8e CID#1338679
2015-11-15tests: fix pam_modules installation on Debian (and Debian-like systems)Evgeny Vereshchagin
libpam_modules installs modules into /lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)/security on Debian Fixes: systemd-testsuite login[36]: PAM unable to dlopen(pam_group.so): /lib/security/pam_group.so: cannot open shared object file: No such file or directory systemd-testsuite login[36]: PAM adding faulty module: pam_group.so systemd-testsuite login[36]: PAM unable to dlopen(pam_limits.so): /lib/security/pam_limits.so: cannot open shared object file: No such file or directory systemd-testsuite login[36]: PAM adding faulty module: pam_limits.so ... etc
2015-11-15machined,logind: be more careful when accepting PIDs and UIDs from clientsLennart Poettering
Always validate first before we start processing the data.
2015-11-15Merge pull request #1903 from phomes/gitignoreLennart Poettering
gitignore: add test-install-root
2015-11-15gitignore: add test-install-rootThomas Hindoe Paaboel Andersen
2015-11-15Merge pull request #1901 from evverx/various-fixesLennart Poettering
Various fixes
2015-11-15Merge pull request #1899 from phomes/NEWS-typoLennart Poettering
NEWS: typo fixes
2015-11-15tests: install execs from user units tooEvgeny Vereshchagin
Fixes: systemd[39]: systemd-exit.service: Executing: /bin/kill -s 58 29 systemd[39]: systemd-exit.service: Failed at step EXEC spawning /bin/kill: No such file or directory systemd[29]: Received SIGCHLD from PID 39 ((kill)). systemd[29]: Child 39 ((kill)) died (code=exited, status=203/EXEC)
2015-11-15firstboot: log on take_etc_passwd_lock error tooEvgeny Vereshchagin
2015-11-15Merge pull request #1898 from marcosfrm/journalctl-shell-completion-2Lennart Poettering
shell-completion: journalctl: add --sync
2015-11-15NEWS: typo fixesThomas Hindoe Paaboel Andersen
2015-11-15shell-completion: journalctl: add --syncMarcos Mello
From 94b6551
2015-11-15Merge pull request #1896 from phomes/install-wrong-enumDaniel Mack
install: don't mix state and type enums
2015-11-15install: don't mix state and type enumsThomas Hindoe Paaboel Andersen
from 0ec0deaa
2015-11-14hwdb: updateKay Sievers
2015-11-13core: now that .snapshot unit are gone, we don't need the per-type .no_gc ↵Lennart Poettering
bool anymore
2015-11-13core: simplify scope unit GC checking code a bitLennart Poettering
2015-11-13logind: add a new UserTasksMax= setting to logind.confLennart Poettering
This new setting configures the TasksMax= field for the slice objects we create for each user. This alters logind to create the slice unit as transient unit explicitly instead of relying on implicit generation of slice units by simply starting them. This also enables us to set a friendly description for slice units that way.
2015-11-13logind: don't assert if the slice is missingLennart Poettering
After all, we don't actually really need the slice to work, it's just nice to have it.
2015-11-13core: enable transient unit support for slice unitsLennart Poettering
2015-11-13man: document our definition of a year and a monthLennart Poettering
Let's be accurate here, as this might be surprising to people.
2015-11-13util-lib: when parsing time values, accept "M" as short for "month"Lennart Poettering
nginx defines an uppercase "M" that way (in contrast to the lowercase "m" for "minute"), and it sounds like an OK logic to follow, so that we understand a true superset of time values nginx understands. http://nginx.org/en/docs/syntax.html
2015-11-13btrfs: properly handle the case when a subvol has no parentLennart Poettering
Don't be confused by subvols without parent. This is after all how the root subvol is set up.
2015-11-13core: add new DefaultTasksMax= setting for system.confLennart Poettering
This allows initializing the TasksMax= setting of all units by default to some fixed value, instead of leaving it at infinity as before.
2015-11-13core: make sure DefaultLimitCPU= and DefaultLimitRTTIME= understand time ↵Lennart Poettering
units, too We added this for the per-unit setting, hence let's enable this for the global default settings too.
2015-11-13Merge pull request #1883 from evverx/man-systemd-service-sd-watchdog-enabledLennart Poettering
man: add note about sd_watchdog_enabled
2015-11-13man: add note about sd_watchdog_enabledEvgeny Vereshchagin
2015-11-13Merge pull request #1880 from fsateler/sysctl-docLennart Poettering
man: document systemd-sysctl arguments
2015-11-13Merge pull request #1878 from hbrueckner/for-upstreamKay Sievers
udev/path_id: improve and enhance bus detection for Linux on z Systems
2015-11-13man: document systemd-sysctl argumentsFelipe Sateler
2015-11-13Merge pull request #1881 from michich/analyze-dotLennart Poettering
analyze: dot graph missing Requisite, superfluous ConflictedBy