Commit Graph
13179 Commits
Author SHA1 Message Date
David Herrmann 3df49c2877 login: support user-bus on dbus1
dbus-1.10 was just released, including systemd units to run
`dbus-daemon --session` as systemd user unit. This allows using a
user-bus with dbus1, just like we do per default with kdbus.

All the dbus libraries have already been fixed long ago to use the
user-bus as default. Hence, there's no need to set
DBUS_SESSION_BUS_ADDRESS= if we use the user-bus. However, gdm and
friends continue to spawn a session bus if this variable is not set
(instead of checking for the existence of the user-bus). Hence, we force
the user-bus, if it is available, in pam_systemd. Once gdm and friends
are fixed, we can continue to drop this again. However, that might take
a while.

With this in place, all that is needed to make the user-bus work is:
    `systemctl --global enable dbus.socket`

If dbus.socket is not enabled, the legacy session-bus is still used.

Based on a patch by: Jan Alexander Steffens <jan.steffens@gmail.com>
2015-08-31 18:12:37 +02:00
Lennart Poettering dcd7199082 cgtop: rework error handling
Never report errors twice.
2015-08-31 13:29:46 +02:00
Lennart Poettering 556c25cf8c sd-event: improve debug message when we fail to remove and fd from an epoll
Let's help users to debug issues with epoll fd removal by printing the
name of the event source.
2015-08-31 13:20:44 +02:00
Lennart Poettering 324496eb25 cgls: pretty print root cgroup path
Make sure show it as "/" rather than empty string.
2015-08-31 13:20:44 +02:00
Lennart Poettering 90990e28c9 manager: remove ask-password fd from sd_event before closing it
Otherwise we might attempt to remove a non-existing fd from epoll.
2015-08-31 13:20:44 +02:00
Lennart Poettering 7fcfb7ee2f cgtop: allow toggling of --recursive= and -k at runtime 2015-08-31 13:20:44 +02:00
Lennart Poettering 3cb5beea0c cgtop: recursively count cgroup member tasks
When showing the number of tasks in a cgroup, recursively count tasks in
child cgroups and include them in the number. This ensures that the
number of tasks is cummulative the same way as memory, cpu and IO
resources are.

Old behaviour can be restored by passing the new --recursive=no switch.
2015-08-31 13:20:44 +02:00
Lennart Poettering 41ba8b6e69 cgtop: ignore kernel threads when counting tasks
However, allow them to be counted in by specifying -k
2015-08-31 13:20:44 +02:00
Lennart Poettering cb88a0a4ae cgls: print the expressive error message we have 2015-08-31 13:20:44 +02:00
Lennart Poettering a6149b93af process-util: trivial optimization 2015-08-31 13:20:43 +02:00
Lennart Poettering 03af6492f0 cgtop: show resource usage relative to cgroup root only
This way the output is restricted to cgroups from a container when run
in one.
2015-08-31 13:20:43 +02:00
Lennart Poettering 52f448c3ff unit: minor simplification 2015-08-31 13:20:43 +02:00
Lennart Poettering 9797f89bf0 util: treat 'C' and 'POSIX' locale identical 2015-08-31 13:20:43 +02:00
Lennart Poettering a1b4e6e933 pager: set $LESSCHARSET when we output UTF8 chars
This way we can be sure that less has the same idea of the terminal as
we do.

This solves issues in systems that have locale uninitalized, where
systemd would output UTF-8 but less wouldn't allow it and show them as
control characters.
2015-08-31 13:20:43 +02:00
Lennart Poettering d79200e26e unit: unify how we assing slices to units
This adds a new call unit_set_slice(), and simplifies
unit_add_default_slice(). THis should make our code a bit more robust
and simpler.
2015-08-31 13:20:43 +02:00
Lennart Poettering 35b7ff80e2 unit: add new macros to test for unit contexts 2015-08-31 13:20:43 +02:00
Lennart Poettering 6513d561ce core: use DUAL_TIMESTAMP_NULL where we can 2015-08-31 13:20:43 +02:00
Lennart Poettering 3f5e811594 core: don't generate stub unit file for transient units
We store the properties for transient units in drop-ins anyway, and
units don't have to have fragment files, hence don't bother with them,
and don't create them.
2015-08-31 13:20:43 +02:00
Lennart Poettering 3850d0505f build-sys: add missing Makefile symlink 2015-08-31 13:09:52 +02:00
Robin Hack 172cfe8714 socket: fix setsockopt call. SOL_SOCKET changed to SOL_TCP. 2015-08-31 11:45:09 +02:00
Lennart Poettering bbc19baa50 Merge pull request #1083 from filbranden/configparse1
A few more tweaks to extract_first_word
2015-08-31 11:36:01 +02:00
Susant Sahani b48288868a networkd: add support for tunnel encap limit
The Tunnel Encapsulation Limit option specifies how many additional
levels of encapsulation are permitted to be prepended to the packet
2015-08-31 13:21:44 +05:30
Filipe Brandenburger 8ab00959fb extract_first_word: Refactor EXTRACT_DONT_COALESCE_SEPARATORS handling
Refactor allocation of the result string to the top, since it is
currently done in both branches of the condition.

Remove unreachable code checking for EXTRACT_DONT_COALESCE_SEPARATORS
when state == SEPARATOR (the only place where SEPARATOR is assigned to
state follows a check for EXTRACT_DONT_COALESCE_SEPARATORS that jumps to
the end of the function.)

Tested by running test-util successfully.

Follow up to: 206644aede
2015-08-30 19:48:38 -07:00
Filipe Brandenburger d3ef6c5560 extract_first_word: Refactor allocation in empty argument case
This covers the case where an argument is an empty string, such as ''.

Instead of allocating the empty string in the individual conditions when
state == VALUE, just always allocate it at the end of state == START, at
which point we know we will have an argument.

Tested that test-util keeps passing after the refactor.

Follow up to: 14e685c29d
2015-08-30 19:48:30 -07:00
Cristian Rodríguez 0ba793fb8b sd-bus: Fix incorrect cleanup attribute in bus_match_to_string()
Must be _cleanup_fclose_ not _cleanup_free_
2015-08-30 19:21:31 -03:00
Cristian Rodríguez 82613b14ba core: add attribute printf to null_log() 2015-08-30 19:21:31 -03:00
Cristian Rodríguez 3cb063fdb2 locale: add printf attribute to log_xkb() 2015-08-30 19:21:31 -03:00
Lennart Poettering 8971a0a031 Merge pull request #1073 from phomes/master
util: make malloc0 ask calloc for one block of size n
2015-08-30 13:18:14 +02:00
Thomas Hindoe Paaboel Andersen 0ab8a1b622 networkd: initialize tz to null
We may not set it before checking it for null.
2015-08-30 03:23:07 +02:00
Thomas Hindoe Paaboel Andersen f80bb1f7ea util: make malloc0 ask calloc for one block of size n
... instead of an array of n individual bytes.

Silences a lot of warnings in smatch.
2015-08-30 02:32:33 +02:00
Lennart Poettering a19222e1d3 nspawn: don't try to extract quotes from option string, glibc doesn't do that either
Follow-up regarding #649.
2015-08-29 19:43:48 +02:00
Eugene Yakubovich 5e5bfa6e1c nspawn: add (no)rbind option to --bind and --bind-ro
--bind and --bind-ro perform the bind mount
non-recursively. It is sometimes (often?) desirable
to do a recursive mount. This patch adds an optional
set of bind mount options in the form of:
	--bind=src-path:dst-path:options
options are comma separated and currently only
"rbind" and "norbind" are allowed.
Default value is "rbind".
2015-08-28 18:06:05 -07:00
Lennart Poettering 776d6aac18 Merge pull request #1067 from teg/dhcp-server
sd-dhcp-server: improve predictability of leases
2015-08-28 12:17:37 +02:00
Tom Gundersen 84d449b552 Merge pull request #1063 from poettering/dbus-interface-from-type
cgls/cgtop: a variety of modernizations
2015-08-28 12:01:46 +02:00
Tom Gundersen 83cedf7ae2 sd-dhcp-server: improve predictability of leases
Rather than having all clients attempt to get the same leases (starting at the
beginning of the pool), make each client star at a random offset into the pool
determined by their client id. This greatly increases the chances of a given
client receiving the same IP address even though both the client and server
have lost any lease information (and distinct server instances handing out
the same leases).
2015-08-28 11:05:32 +02:00
Daniel Mack 9c92a077b6 Merge pull request #1062 from poettering/cgroups-show
cgroup-show: unescape cgroups on presentation
2015-08-28 08:56:40 +02:00
Daniel Mack 9f917da977 Merge pull request #1061 from poettering/pager
A few auto-pager improvements
2015-08-28 08:56:08 +02:00
Lennart Poettering e049fa164f cgls: modernize cgls in preparation for unified cgroup hierarchy work
Fix --machine= handling, don't hardcode long-obsolete container
cgroup paths

Many other clean-ups.
2015-08-28 02:29:56 +02:00
Lennart Poettering 45d7a8bb6c cgtop: major modernizations
In preparation of the unified cgroup support, let's clean up cgtop:

a) rework time code to be based on "nsec_t" rather than "struct timespec"

b) Introduce long option --order= for selecting ordering

c) count number of processes only in the main hierarchy, don't bother
   with the controller hierarchies. We don't allow orthogonal
   hierarchies in systemd anymore, hence there's no point to check the
   other hierarchies.

d) Deal with non-monotonic cpuacct values (see #749)

e) When sorting groups, don't do prefix compare when ordering by number
   of tasks, since this is not accumulative for all children.

f) Actually make --cpu without parameter work

g) Don't output control characters when we get them as input.

Fixes #749.
2015-08-28 02:27:29 +02:00
Lennart Poettering 21b735e798 core: add unit_dbus_interface_from_type() to unit-name.h
Let's add a way to get the type-specific D-Bus interface of a unit from
either its type or name to src/basic/unit-name.[ch]. That way we can
share it with the client side, where it is useful in tools like cgls or
machinectl.

Also ports over machinectl to make use of this.
2015-08-28 02:10:10 +02:00
Lennart Poettering 3d9495a85e cgroup-show: unescape cgroups on presentation
Let's unescape cgroups on presentation, so that we show literal unit
names.
2015-08-28 02:08:43 +02:00
Lennart Poettering 8b5264aa65 pager: also redirect stderr
It's really confusing if stdout goes to the pager, but stderr is written
directly to the screen. Hence, make sure both stdout and stderr are
passed to the pager when doing autopaging.
2015-08-28 02:05:58 +02:00
Lennart Poettering 6a7c676c54 pager: port fallback pager to use copy_bytes() 2015-08-28 02:05:51 +02:00
Lennart Poettering 81d20007f9 copy: add splice() based fallback
Apparently, sendfile() does not work between fifos and ttys, but
splice() does, hence let's optionally fall back to that. This is useful
to implement the fallback pager this way.
2015-08-28 02:05:42 +02:00
Tom Gundersen edb75140b5 Merge pull request #1057 from poettering/resolve-drop-res-query
sd-resolve: drop res_query() API
2015-08-27 21:39:44 +02:00
Tom Gundersen 4a316c44aa Merge pull request #1055 from poettering/dhcp-updates
Various networkd and dhcp updates
2015-08-27 21:38:36 +02:00
Lennart Poettering 1fac0c31ab sd-resolve: drop res_query() API
Querying low-level DNS RRs should be done via resolved now, not via
glibc's awful res_query() API anymore. Let's not introduce an async
wrapper for it hence.
2015-08-27 20:47:13 +02:00
Lennart Poettering c2c940bda0 networkd: s/now/know 2015-08-27 20:23:17 +02:00
Lennart Poettering e37d2c941f dhcp: say domain name, when we mean domain name 2015-08-27 19:57:11 +02:00
Lennart Poettering 9c8e3101ce network: get rid of more RefCnt usage
A follow-up to 3733eec3e2
2015-08-27 19:56:52 +02:00