Lennart Poettering [Mon, 16 May 2016 20:48:45 +0000 (22:48 +0200)]
man: clarify that IOXyz= only applies to the unified hierarchy, and BlockIOXyz= to the legacy hierarchy
With this change for each setting we say which hierarachy it applies to briefly
in the first sentence of the description, plus in longer form in an extra
pargraph at the end, with a recommendation for the counterpart of the option in
the other hierarchy.
Also adds markup and the "=" suffix to all mentioned settings.
Lennart Poettering [Mon, 16 May 2016 20:18:39 +0000 (22:18 +0200)]
update TODO
Lennart Poettering [Mon, 16 May 2016 20:05:27 +0000 (22:05 +0200)]
Merge pull request #3193 from htejun/cgroup-io-controller
core: add io controller support on the unified hierarchy
Zbigniew Jędrzejewski-Szmek [Mon, 16 May 2016 19:44:35 +0000 (15:44 -0400)]
CONTRIBUTING: recommend force-push (#3273)
John Paul Adrian Glaubitz [Mon, 16 May 2016 19:25:36 +0000 (21:25 +0200)]
basic: Fix incorrect architecture mapping on sparc64. (#3274)
Michal Sekletar [Mon, 16 May 2016 15:24:51 +0000 (17:24 +0200)]
core: don't log job status message in case job was effectively NOP (#3199)
We currently generate log message about unit being started even when
unit was started already and job didn't do anything. This is because job
was requested explicitly and hence became anchor job of the transaction
thus we could not eliminate it. That is fine but, let's not pollute
journal with useless log messages.
$ systemctl start systemd-resolved
$ systemctl start systemd-resolved
$ systemctl start systemd-resolved
Current state:
$ journalctl -u systemd-resolved | grep Started
May 05 15:31:42 rawhide systemd[1]: Started Network Name Resolution.
May 05 15:31:59 rawhide systemd[1]: Started Network Name Resolution.
May 05 15:32:01 rawhide systemd[1]: Started Network Name Resolution.
After patch applied:
$ journalctl -u systemd-resolved | grep Started
May 05 16:42:12 rawhide systemd[1]: Started Network Name Resolution.
Fixes #1723
Stefan Saraev [Mon, 16 May 2016 14:58:46 +0000 (17:58 +0300)]
missing.h: add BTRFS_IOC_QUOTA_RESCAN_WAIT (#3266)
Kyle Russell [Mon, 16 May 2016 14:41:30 +0000 (09:41 -0500)]
vconsole-setup: Store fonts on heap (#3268)
More friendly to the stack.
Peter Hutterer [Mon, 16 May 2016 02:35:47 +0000 (12:35 +1000)]
hwdb: add touchpad resolution for Lenovo E530 (#3265)
https://bugs.freedesktop.org/show_bug.cgi?id=95231
topimiettinen [Mon, 16 May 2016 02:34:05 +0000 (02:34 +0000)]
namespace: Make private /dev noexec and readonly (#3263)
Private /dev will not be managed by udev or others, so we can make it
noexec and readonly after we have made all device nodes. As /dev/shm
needs to be writable, we can't use bind_remount_recursive().
gdamjan [Mon, 16 May 2016 01:43:00 +0000 (03:43 +0200)]
/var/tmp instead of /tmp/var in systemd.unit man page (#3262)
Andre Klärner [Mon, 16 May 2016 01:40:52 +0000 (03:40 +0200)]
man: fix typo (#3261)
Susant Sahani [Sun, 15 May 2016 13:45:30 +0000 (19:15 +0530)]
networkd: do not generate a mac address for vlan interfaces (#3221)
While creating a VLAN the mac address should be copied from the parent interface, so that
the VLANs inherit the MAC address of the physical interface.
Before:
```
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:26:c6:85:a3:c2 brd ff:ff:ff:ff:ff:ff
...
6: vlan1@wlp3s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 22:07:73:9d:43:59 brd ff:ff:ff:ff:ff:ff
7: vlan2@wlp3s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 46:30:76:33:35:d4 brd ff:ff:ff:ff:ff:ff
```
After:
```
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:26:c6:85:a3:c2 brd ff:ff:ff:ff:ff:ff
...
11: vlan1@wlp3s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:26:c6:85:a3:c2 brd ff:ff:ff:ff:ff:ff
12: vlan2@wlp3s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:26:c6:85:a3:c2 brd ff:ff:ff:ff:ff:ff
```
v2 of #1573, with fixed commit message.
Susant Sahani [Sun, 15 May 2016 13:15:20 +0000 (18:45 +0530)]
networkd: bridge add support to configure multicast snooping (#3223)
This patch implements support for the IFLA_BR_MCAST_SNOOPING attribute
it can change the multicast snooping value.
IGMP snooping monitors the Internet Group Management Protocol (IGMP)
traffic between hosts and multicast routers.
Lars Uebernickel [Sat, 14 May 2016 20:10:22 +0000 (22:10 +0200)]
busctl: use Monitoring interface (#3245)
This is now the recommended way to do monitoring by upstream D-Bus.
It's also allowed in the default policy, whereas eavesdrop is not
anymore, which effectively broke busctl on many systems.
Tejun Heo [Sat, 14 May 2016 19:56:53 +0000 (15:56 -0400)]
core: allow slice to be overriden if cgroups aren't realized (#3246)
unit_set_slice() fails with -EBUSY if the unit already has a slice associated
with it. This makes it impossible to override slice through dropin config or
over dbus. There's no reason to disallow slice changes as long as cgroups
aren't realized. Fix it.
Fixes #3240.
Signed-off-by: Tejun Heo <htejun@fb.com>
Reported-by: Davide Cavalca <dcavalca@fb.com>
Zbigniew Jędrzejewski-Szmek [Sat, 14 May 2016 16:52:59 +0000 (12:52 -0400)]
Merge pull request #3253 from alshopov/master
Bulgarian translation of systemd
topimiettinen [Sat, 14 May 2016 16:46:23 +0000 (16:46 +0000)]
namespace: unmount old /dev under our new private /dev (#3254)
Drop all dangling old /dev mounts before mounting a new private /dev tree.
Alexander Shopov [Sat, 14 May 2016 11:00:02 +0000 (14:00 +0300)]
Sort LINGUAS similar to Makefile.am:dist_catalog_DATA
Alexander Shopov [Wed, 11 May 2016 07:02:04 +0000 (10:02 +0300)]
po, catalog - add Bulgarian translation
Lennart Poettering [Thu, 12 May 2016 18:14:58 +0000 (20:14 +0200)]
nspawn: drop spurious newline
Lennart Poettering [Thu, 12 May 2016 18:14:46 +0000 (20:14 +0200)]
update TODO
kayrus [Thu, 12 May 2016 16:58:59 +0000 (18:58 +0200)]
core: added ListUnitsByNames dbus method (#3182)
This new method returns information by unit names. Instead of ListUnitsByPatterns
this method returns information of inactive and even unexisting units.
Moved dbus unit reply logic into a separate shared function.
Resolves https://github.com/coreos/fleet/pull/1418
Daniel Drake [Thu, 12 May 2016 16:42:39 +0000 (10:42 -0600)]
Create initrd-root-device.target synchronization point (#3239)
Add a synchronization point so that custom initramfs units can run
after the root device becomes available, before it is fsck'd and
mounted.
This is useful for custom initramfs units that may modify the
root disk partition table, where the root device is not known in
advance (it's dynamically selected by the generators).
Victor Toso [Wed, 11 May 2016 17:34:13 +0000 (19:34 +0200)]
logind: introduce LockedHint and SetLockedHint (#3238)
Desktop environments can keep this property up to date to allow
applications to easily track session's Lock status.
Evgeny Vereshchagin [Wed, 11 May 2016 12:29:24 +0000 (15:29 +0300)]
coredump: use next_datagram_size_fd instead of ioctl(FIONREAD) (#3237)
We need to be sure that the size returned here actually matches what we will read with recvmsg() next
Fixes #2984
Lennart Poettering [Tue, 10 May 2016 14:44:29 +0000 (16:44 +0200)]
Merge pull request #3220 from keszybz/install-fixes
Fix "preset-all" with dangling symlinks and install-section hint emitted too eagerly
tblume [Tue, 10 May 2016 14:20:03 +0000 (16:20 +0200)]
man: document the nfs mount option bg as unsupported (#3231)
The nfs mount option bg will not be supported with systemd.
Reasons are discussed here:
https://github.com/systemd/systemd/pull/3169
tblume [Tue, 10 May 2016 12:10:17 +0000 (14:10 +0200)]
units: make sure that fsck is executed before quotacheck
fsck determines wheter an automatic quotacheck should be executed.
Hence fsck service needs to run before quotacheck service.
Sylvain Plantefève [Tue, 10 May 2016 01:34:16 +0000 (03:34 +0200)]
catalog: update French translation (#3228)
Zbigniew Jędrzejewski-Szmek [Mon, 9 May 2016 15:24:08 +0000 (11:24 -0400)]
locale-util: mark special_glyph() as _const_
_const_ means that the caller can assume that the function will return the same
result every time (and will not modify global memory). special_glyph() meets
this: even though it depends on global memory, that part of global memory is
not expected to change. This allows the calls to special_glyph() to be
optimized, even if -flto is not used.
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2016 21:30:18 +0000 (17:30 -0400)]
tree-wide: rename draw_special_char to special_glyph
That function doesn't draw anything on it's own, just returns a string, which
sometimes is more than one character. Also remove "DRAW_" prefix from character
names, TREE_* and ARROW and BLACK_CIRCLE are unambigous on their own, don't
draw anything, and are always used as an argument to special_glyph().
Rename "DASH" to "MDASH", as there's more than one type of dash.
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2016 21:15:34 +0000 (17:15 -0400)]
shared/install: use "→" instead of "pointing to" for a symlink
It's quite a bit shorter and just as readable.
(The full sentence with "pointing to" was added to replace a text that used
"ln -s %s %s". Using the "ln" syntax is indeed unclear, because it's not
obvious which is the source and which is the target, and because symlink(2)
uses the opposite order to ln(1). But with the unicode arrow there should
be no ambiguity.)
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2016 21:02:55 +0000 (17:02 -0400)]
shared/install: do not print warning when a unit is already enabled
Executing 'systemctl enable' on the same unit twice would cause
a warning about a missing [Install] section to be printed. To avoid
this, count all symlinks that "would" be created, and return 1
no matter if we actually created a symlink or skipped creation because
it already exists.
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2016 14:10:57 +0000 (10:10 -0400)]
shared/install: handle dangling aliases as an explicit case, report nicely
This fixes 'preset-all' with a unit that is a dangling symlink.
$ systemctl --root=/ preset-all
Unit syslog.service is an alias to a unit that is not present, ignoring.
Unit auditd.service is masked, ignoring.
Unit NetworkManager.service is masked, ignoring.
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2016 14:09:52 +0000 (10:09 -0400)]
shared/install: add some more debug messages and comments
$ systemctl --root=/ preset foobar.service
Cannot find unit foobar.service.
Failed to preset: No such file or directory.
$ systemctl --root=/ preset foobar@.service
Cannot find unit foobar@.service.
Failed to preset: No such file or directory.
$ systemctl --root=/ preset foobar@blah.service
Cannot find unit foobar@blah.service or foobar@.service.
Failed to preset: No such file or directory.
Zbigniew Jędrzejewski-Szmek [Mon, 9 May 2016 18:34:05 +0000 (14:34 -0400)]
Merge pull request #3209 from poettering/nspawn-network-zones
introduce simple "network zones" concept to nspawn
Lennart Poettering [Mon, 9 May 2016 13:41:46 +0000 (15:41 +0200)]
update TODO
Lennart Poettering [Mon, 9 May 2016 13:43:51 +0000 (15:43 +0200)]
nspawn: only remove veth links we created ourselves
Let's make sure we don't remove veth links that existed before nspawn was
invoked.
https://github.com/systemd/systemd/pull/3209#discussion_r62439999
Lennart Poettering [Mon, 9 May 2016 13:42:23 +0000 (15:42 +0200)]
network: Make sure we log about parse errors for ifname lists
Fix-up for
93e2822684b37a4eeef03775a7a1f44a3055d7b2
Lennart Poettering [Fri, 6 May 2016 20:44:13 +0000 (22:44 +0200)]
network: allow LLDP packets to cross non-customer bridges for container network interfaces
This changes the default .network files we ship for nspawn containers to set
EmitLLDP=customer-bridge in order to allow propagation of the LLDP packets
across bridges. This is useful so that "networkctl status" shows all peers
connected to a virtual container network, collecting this data via LLDP. This
is safe since the default configuration for these interfaces does not bridge
these links to external interfaces, but relies on IP routing for this.
Lennart Poettering [Fri, 6 May 2016 19:27:36 +0000 (21:27 +0200)]
networkd: reworkd LLDP emission to allow control of propagation level
This allows selecting the propagation level of emitted LLDP packets
(specifically: the destination MAC address of the packets). This is useful
because it allows generating LLDP packets that optionally cross certain types
of bridges.
See 802.11ab-2009, Table 7-1 for details.
Lennart Poettering [Fri, 6 May 2016 19:20:59 +0000 (21:20 +0200)]
tree-wide: port more code to use ifname_valid()
Lennart Poettering [Fri, 6 May 2016 19:04:52 +0000 (21:04 +0200)]
man: add documentation for the new --network-zone= concept of nspawn
Lennart Poettering [Fri, 6 May 2016 19:03:40 +0000 (21:03 +0200)]
network: add automatic configuration for the networks created by nspawn --network-zone=
This way, they "just work", similar to --network-veth behaves, as long as
networkd is enabled and running on all involved nodes.
Lennart Poettering [Fri, 6 May 2016 19:00:27 +0000 (21:00 +0200)]
nspawn: add new --network-zone= switch for automatically managed bridge devices
This adds a new concept of network "zones", which are little more than bridge
devices that are automatically managed by nspawn: when the first container
referencing a bridge is started, the bridge device is created, when the last
container referencing it is removed the bridge device is removed again. Besides
this logic --network-zone= is pretty much identical to --network-bridge=.
The usecase for this is to make it easy to run multiple related containers
(think MySQL in one and Apache in another) in a common, named virtual Ethernet
broadcast zone, that only exists as long as one of them is running, and fully
automatically managed otherwise.
Lennart Poettering [Fri, 6 May 2016 18:58:32 +0000 (20:58 +0200)]
util-lib: add new ifname_valid() call that validates interface names
Make use of this in nspawn at a couple of places. A later commit should port
more code over to this, including networkd.
Lennart Poettering [Fri, 6 May 2016 18:50:16 +0000 (20:50 +0200)]
man: document that nspawn's host0 and ve-* interfaces have default config in networkd
Lennart Poettering [Mon, 9 May 2016 10:39:56 +0000 (12:39 +0200)]
Merge pull request #3222 from keszybz/tests-work
Some small fixes to make it easier to run tests and fix failure in TEST-{02,08}
Zbigniew Jędrzejewski-Szmek [Sun, 8 May 2016 15:08:42 +0000 (11:08 -0400)]
TEST-08: make sure / is remounted rw
In this test /etc/fstab is replaced by -.mount unit. This causes
systemd-remount-fs.service to not remount / rw, which in turn causes various
failures becuase /var is not writable. In particular
systemd-tmpfiles-setup.service reports many failures. This is something
to possibly fix on its own (see https://github.com/systemd/systemd/issues/791);
in the meanwhile let's fix this test so that it doesn't fail, since the
point of the test is to check aliases on mount units, and not a ro root.
Zbigniew Jędrzejewski-Szmek [Mon, 25 Apr 2016 18:20:57 +0000 (14:20 -0400)]
tests: enable logging for pid1, disable for other systemd services
systemd-udev generated an insane amount of log output at debug level.
It would break TEST-02-CRYPTSETUP by filling the overflowing the disk
(which seems to be a bug in itself!).
Zbigniew Jędrzejewski-Szmek [Mon, 25 Apr 2016 18:03:27 +0000 (14:03 -0400)]
tests: allow root to login with empty password to test images
Zbigniew Jędrzejewski-Szmek [Mon, 25 Apr 2016 17:01:25 +0000 (13:01 -0400)]
tree-wide: remove uses of --failed
It has been replaced by --state=failed.
Zbigniew Jędrzejewski-Szmek [Mon, 25 Apr 2016 16:00:11 +0000 (12:00 -0400)]
tests: specify format=raw for qemu to avoid warning
WARNING: Image format was not specified for
'/var/tmp/systemd-test.tGi3od/rootdisk.img' and probing guessed raw.
Automatically detecting the format is dangerous for raw images, write
operations on block 0 will be restricted. Specify the 'raw' format
explicitly to remove the restrictions.
Also use unsafe caching mode, we don't care about data integrity here.
Martin Pitt [Sun, 8 May 2016 19:09:35 +0000 (21:09 +0200)]
Merge pull request #3202 from poettering/socket-fixes
don't reopen socket fds when reloading the daemon
Thomas H. P. Andersen [Sat, 7 May 2016 21:52:31 +0000 (23:52 +0200)]
NEWS: typo fix and american english (#3219)
Zbigniew Jędrzejewski-Szmek [Wed, 4 May 2016 14:04:08 +0000 (10:04 -0400)]
shared/install: simplify error handling conditionals in a few places
Zbigniew Jędrzejewski-Szmek [Tue, 3 May 2016 19:57:36 +0000 (15:57 -0400)]
core/mount: add helper function for mount states
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2016 19:31:58 +0000 (15:31 -0400)]
Merge pull request #3205 from poettering/iaid
more dhcp fixes
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2016 19:08:57 +0000 (15:08 -0400)]
Merge pull request #3160 from htejun/cgroup-fixes-rev2
Cgroup fixes.
Lennart Poettering [Sat, 7 May 2016 16:40:57 +0000 (18:40 +0200)]
Merge pull request #3215 from keszybz/news-and-other-small-cleanups
News and other small cleanups
Evgeny Vereshchagin [Sat, 7 May 2016 16:17:44 +0000 (19:17 +0300)]
Merge pull request #3191 from poettering/cgroups-agent-dgram
core: use an AF_UNIX/SOCK_DGRAM socket for cgroup agent notification
Zbigniew Jędrzejewski-Szmek [Sat, 7 May 2016 15:43:39 +0000 (11:43 -0400)]
NEWS: machinectl and loginctl also support --value
Zbigniew Jędrzejewski-Szmek [Mon, 25 Apr 2016 01:54:52 +0000 (21:54 -0400)]
systemctl: do not print header if no units will be listed
"0 units listed." is still printed.
Zbigniew Jędrzejewski-Szmek [Mon, 25 Apr 2016 01:50:25 +0000 (21:50 -0400)]
systemctl: rewrite code to explicitly take care of n_units==0 case
Coverity was complaing, but it was a false positive (CID #1354669).
Nevertheless, it's better to rewrite the code so that units is never
null.
Evgeny Vereshchagin [Sat, 7 May 2016 14:21:29 +0000 (17:21 +0300)]
Merge pull request #3210 from evverx/expose-usec
core: expose TriggerLimitIntervalUSec, dump TriggerLimitIntervalSec and TriggerLimitBurst too
Lennart Poettering [Sat, 7 May 2016 09:01:36 +0000 (11:01 +0200)]
Merge pull request #3212 from dmedri/master
Minor fixes and .po updates
Daniele Medri [Sat, 7 May 2016 03:00:12 +0000 (05:00 +0200)]
NEWS: minor fixes
Daniele Medri [Sat, 7 May 2016 02:58:30 +0000 (04:58 +0200)]
italian: .po updates
Evgeny Vereshchagin [Fri, 6 May 2016 21:05:59 +0000 (00:05 +0300)]
tests: add test for #3171 (#3206)
Evgeny Vereshchagin [Fri, 6 May 2016 21:03:16 +0000 (21:03 +0000)]
core: dump TriggerLimitIntervalSec and TriggerLimitBurst too
Evgeny Vereshchagin [Fri, 6 May 2016 20:08:28 +0000 (20:08 +0000)]
core: expose TriggerLimitIntervalUSec
Before:
$ systemctl show --property TriggerLimitIntervalSec test.socket
TriggerLimitIntervalSec=2000000
After:
$ systemctl show --property TriggerLimitIntervalUSec test.socket
TriggerLimitIntervalUSec=2s
Lennart Poettering [Fri, 6 May 2016 16:22:22 +0000 (18:22 +0200)]
core: update the right mtime after finishing writing of transient units (#3203)
Fixes: #3194
Lennart Poettering [Fri, 6 May 2016 15:08:03 +0000 (17:08 +0200)]
man: link the part about [DHCP] to the DHCP= explanation
Lennart Poettering [Fri, 6 May 2016 15:07:41 +0000 (17:07 +0200)]
man: move IPv6 note to the right section
Make the XML validate again.
Lennart Poettering [Fri, 6 May 2016 15:04:05 +0000 (17:04 +0200)]
networkd: move the IAID configuration option into the [DHCP] section
It's only relevant to DHCP, and it should be where the DUID is configured too.
Lennart Poettering [Fri, 6 May 2016 14:58:01 +0000 (16:58 +0200)]
systemctl: indentation fix
Lennart Poettering [Fri, 6 May 2016 14:55:44 +0000 (16:55 +0200)]
NEWS: bring NEWS a bit up-to-date
Lennart Poettering [Fri, 6 May 2016 11:29:26 +0000 (13:29 +0200)]
core: rework how we flush incoming traffic when a socket unit goes down
Previously, we'd simply close and reopen the socket file descriptors. This is
problematic however, as we won't transition through the SOCKET_CHOWN state
then, and thus the file ownership won't be correct for the sockets.
Rework the flushing logic, and actually read any queued data from the sockets
for flushing, and accept any queued messages and disconnect them.
Lennart Poettering [Fri, 6 May 2016 11:01:17 +0000 (13:01 +0200)]
core: don't implicit open missing socket fds on daemon reload
Previously, when the daemon was reloaded and the configuration of a socket unit
file was changed so that a different set of socket ports was defined for the
socket we'd simply reopen the socket fds not yet open. This is problematic
however, as this means the SOCKET_CHOWN state is not run for them, and thus
their UID/GID is not corrected.
With this change, don't open the missing file descriptors, but log about this
issue, and ask the user to restart the socket explicit, to make sure all
missing fds are opened.
Fixes: #3171
Lennart Poettering [Fri, 6 May 2016 10:16:58 +0000 (12:16 +0200)]
core: split out selinux label retrieval logic into a function of its own
This should bring no behavioural change.
Lennart Poettering [Fri, 6 May 2016 09:57:12 +0000 (11:57 +0200)]
Merge pull request #3201 from ssahani/net-word
networkd lib: cleanup FOREACH_WORD
Susant Sahani [Fri, 6 May 2016 04:19:49 +0000 (09:49 +0530)]
networkd: route fix comment
Susant Sahani [Fri, 6 May 2016 04:07:31 +0000 (09:37 +0530)]
networkd: cleanup FOREACH_WORD
Zbigniew Jędrzejewski-Szmek [Fri, 6 May 2016 00:28:23 +0000 (20:28 -0400)]
Merge pull request #3190 from poettering/logind-fixes
Evgeny Vereshchagin [Thu, 5 May 2016 23:11:11 +0000 (02:11 +0300)]
Merge pull request #3198 from poettering/trigger-timeout-defaults
change trigger timeout defaults
Lennart Poettering [Thu, 5 May 2016 20:49:25 +0000 (22:49 +0200)]
logind: drop pointless UINT64_C() macro use
Lennart Poettering [Wed, 4 May 2016 17:40:05 +0000 (19:40 +0200)]
logind: enforce a limit on inhibitors we hand out
For similar reasons as the recent addition of a limit on sessions.
Note that we don't enforce a limit on inhibitors per-user currently, but
there's an implicit one, since each inhibitor takes up one fd, and fds are
limited via RLIMIT_NOFILE, and the limit on the number of processes per user.
Lennart Poettering [Wed, 4 May 2016 17:22:30 +0000 (19:22 +0200)]
logind: expose more configuration settings as bus properties
Lennart Poettering [Wed, 4 May 2016 17:05:18 +0000 (19:05 +0200)]
logind: don't include session lists in PropertyChanged messages
If we have a lot of simultaneous sessions we really shouldn't send the full
list of active sessions with each PropertyChanged message for user and seat
objects, as that can become quite substantial data, we probably shouldn't dump
on the bus on each login and logout.
Note that the global list of sessions doesn't send out changes like this
either, it only supports requesting the session list with ListSessions().
If cients want to get notified about sessions coming and going they should
subscribe to SessionNew and SessionRemoved signals, and clients generally do
that already.
This is kind of an API break, but then again the fact that this was included
was never documented.
Lennart Poettering [Wed, 4 May 2016 17:01:56 +0000 (19:01 +0200)]
logind: process session/inhibitor fds at higher priority
Let's make sure we process session and inhibitor pipe fds (that signal
sessions/inhibtors going away) at a higher priority
than new bus calls that might create new sessions or inhibitors. This helps
ensuring that the number of open sessions stays minimal.
Lennart Poettering [Wed, 4 May 2016 17:01:46 +0000 (19:01 +0200)]
update TODO
Lennart Poettering [Wed, 4 May 2016 16:57:15 +0000 (18:57 +0200)]
logind: enforce a limit on current user sessions
We really should put limits on all resources we manage, hence add one to the
number of concurrent sessions, too. This was previously unbounded, hence set a
relatively high limit of 8K by default.
Note that most PAM setups will actually invoke pam_systemd prefixed with "-",
so that the return code of pam_systemd is ignored, and the login attempt
succeeds anyway. On systems like this the session will be created but is not
tracked by systemd.
Tejun Heo [Thu, 5 May 2016 20:42:55 +0000 (16:42 -0400)]
core: add io controller support on the unified hierarchy
On the unified hierarchy, blkio controller is renamed to io and the interface
is changed significantly.
* blkio.weight and blkio.weight_device are consolidated into io.weight which
uses the standardized weight range [1, 10000] with 100 as the default value.
* blkio.throttle.{read|write}_{bps|iops}_device are consolidated into io.max.
Expansion of throttling features is being worked on to support
work-conserving absolute limits (io.low and io.high).
* All stats are consolidated into io.stats.
This patchset adds support for the new interface. As the interface has been
revamped and new features are expected to be added, it seems best to treat it
as a separate controller rather than trying to expand the blkio settings
although we might add automatic translation if only blkio settings are
specified.
* io.weight handling is mostly identical to blkio.weight[_device] handling
except that the weight range is different.
* Both read and write bandwidth settings are consolidated into
CGroupIODeviceLimit which describes all limits applicable to the device.
This makes it less painful to add new limits.
* "max" can be used to specify the maximum limit which is equivalent to no
config for max limits and treated as such. If a given CGroupIODeviceLimit
doesn't contain any non-default configs, the config struct is discarded once
the no limit config is applied to cgroup.
* lookup_blkio_device() is renamed to lookup_block_device().
Signed-off-by: Tejun Heo <htejun@fb.com>
Lennart Poettering [Thu, 5 May 2016 18:51:52 +0000 (20:51 +0200)]
update TODO
Lennart Poettering [Thu, 5 May 2016 11:45:18 +0000 (13:45 +0200)]
core: fix owner user/group output in socket dump
The unit file settings are called SocketUser= and SocketGroup= hence name these
fields that way in the "systemd-analyze dump" output too.
https://github.com/systemd/systemd/issues/3171#issuecomment-
216216995
Lennart Poettering [Thu, 5 May 2016 11:39:31 +0000 (13:39 +0200)]
core: change default trigger limits for socket units
Let's lower the default values a bit, and pick different defaults for
Accept=yes and Accept=no sockets.
Fixes: #3167
Lennart Poettering [Thu, 5 May 2016 20:26:09 +0000 (22:26 +0200)]
journald: stack allocation cannot fail
No need to check whether alloca() failed...
Lennart Poettering [Thu, 5 May 2016 20:24:36 +0000 (22:24 +0200)]
tree-wide: introduce new SOCKADDR_UN_LEN() macro, and use it everywhere
The macro determines the right length of a AF_UNIX "struct sockaddr_un" to pass to
connect() or bind(). It automatically figures out if the socket refers to an
abstract namespace socket, or a socket in the file system, and properly handles
the full length of the path field.
This macro is not only safer, but also simpler to use, than the usual
offsetof() + strlen() logic.
Zbigniew Jędrzejewski-Szmek [Thu, 5 May 2016 12:08:16 +0000 (08:08 -0400)]
Merge pull request #3197 from phomes/networkd-memleak
Fixes for memleaks in networkd and test