Commit Graph

11152 Commits

Author SHA1 Message Date
Lennart Poettering 4ff49cb630 update TODO 2013-04-16 04:41:21 +02:00
Lennart Poettering 7027ff61a3 nspawn: introduce the new /machine/ tree in the cgroup tree and move containers there
Containers will now carry a label (normally derived from the root
directory name, but configurable by the user), and the container's root
cgroup is /machine/<label>. This label is called "machine name", and can
cover both containers and VMs (as soon as libvirt also makes use of
/machine/).

libsystemd-login can be used to query the machine name from a process.

This patch also includes numerous clean-ups for the cgroup code.
2013-04-16 04:41:21 +02:00
Lennart Poettering cec4ead904 util: make sure result of hostname_cleanup() passes hostname_is_valid() 2013-04-16 04:41:21 +02:00
Lennart Poettering ed85d9a58d logind: filter configured cgroup controller lists 2013-04-16 04:41:21 +02:00
Lennart Poettering 54b758dd14 logind: when looking for cgroup prefixes, allocate from stack 2013-04-16 04:41:21 +02:00
Michael Biebl b45e9abd1d libudev: remove udev_monitor_new_from_socket() symbol
This function was removed in v183, so drop it from the symbols
versioning file.
2013-04-16 02:15:45 +02:00
Kay Sievers 6133cee253 bus: copy iteration macro from the kernel 2013-04-16 02:10:55 +02:00
Kay Sievers c225e76785 hwdb: update 2013-04-16 01:45:44 +02:00
Kay Sievers 68cfd33173 bus: catch up with kernel changes 2013-04-16 01:44:36 +02:00
Auke Kok c4d58b0b6d bootchart: put the bootchart into the journal.
This bit of code is mostly stolen from coredump.c. We construct
a simple journal message and append the bootchart file in the
journal automatically.

You can extract the latest bootchart from the current boot with
something like:

$ journalctl -b MESSAGE_ID=9f26aa562cf440c2b16c773d0479b518 --field=BOOTCHART

which prints it to stdout.

None of the other logic is touched. The journal entry is created
even if bootchart was run manually, which is probably wrong.
2013-04-15 16:28:41 -07:00
Kay Sievers 8ad802ec35 bus: fix missing macro argument renaming
<fdo-vcs> systemd kay master * b1454bf src/libsystemd-bus/ bus-kernel.c kdbus.h
<fdo-vcs> systemd bus: catch up with kernel changes
<kmacleod> kay: randomly looked at your commit, it looks like in KDBUS_FOREACH_ITEM
  you missed changing a (d) to an (i) in (uint8_t*) (d) < (uint8_t*) (k) + (k)->size;  ?
<kay> kmacleod: hah, so there *is* a reason for using _foo in macros :)
<kay> kmacleod: thanks!
2013-04-15 23:39:42 +02:00
Kay Sievers b1454bf05c bus: catch up with kernel changes 2013-04-15 23:32:38 +02:00
Lennart Poettering 9a3ef988b8 audit: since nspawn now sets CAP_AUDIT_CONTROL for containers we cannot user this anymore to skip audit session ID retrieval
As audit is still broken in containers we need a reliable way how we can
determine whether the audit data we read from 7proc is actually useful.
Previously we used CAP_AUDIT_CONTROL for this, since nspawn removed that
from the nspawn container. This has changed a while back however, which
means we used audit data of host system in the container.

This adds an explicit container check to the audit calls, so that all
audit data is turned off in containers.

This should fix session creation with pam_systemd/logind in nspawn containers.
2013-04-15 21:59:04 +02:00
Lennart Poettering 7a9ec5c902 core: let's make our log messages proper sentences with full stops 2013-04-15 21:59:04 +02:00
Lennart Poettering a32360f1a5 core: always create /user and /machine top-level cgroup dirs
This allows clients to put inotify watches on these trees to watch for
state changes, without having to wait until these dirs are created.

This introduces the new top-level /machine cgroup dir as canonical
location where OS containers and VMs shall be located (as discussed with
the libvirt folks).
2013-04-15 21:59:04 +02:00
Lennart Poettering a53824ea74 update TODO 2013-04-15 21:59:04 +02:00
Harald Hoyer fee79e010f do not change console to non-unicode for LANG=C
If systemd-vconsole-setup was started with LANG=C (no locale.conf), then
it would set the console to non-unicode, which is not what we want.
2013-04-15 18:37:24 +02:00
Anatol Pomozov ab06eef810 Fix spelling errors using 'codespell' tool 2013-04-15 08:40:05 -04:00
Lennart Poettering 97e1305817 sd-login: add a sd_pid_get_user_unit() call 2013-04-15 14:16:45 +02:00
Lennart Poettering 6c03089c32 bus: handle env vars safely
Make sure that our library is safe for usage in SUID programs when it
comes to env var handling
2013-04-15 14:05:03 +02:00
Lennart Poettering 4a875b6133 kdbus: parse cgroup meta data, too 2013-04-15 01:51:37 +02:00
Lennart Poettering c62e11ce39 localectl: read X11 keymaps from the correct file
As reported by Sergey Udaltsov.
2013-04-15 01:30:21 +02:00
Zbigniew Jędrzejewski-Szmek 1e8e0a3221 udev/ata_id: zero out variable properly
b8a2b0f76 'use initalization instead of explicit zeroing'
introduced a bug where only the first sizeof(uint_t*) bytes
would be zeroed out, instead of the whole array.
2013-04-14 18:52:24 -04:00
Zbigniew Jędrzejewski-Szmek e9b807c168 bus: remove two unused variables 2013-04-14 18:52:24 -04:00
Zbigniew Jędrzejewski-Szmek ee6349a726 systemd-python: fix formatting in docstring 2013-04-14 18:38:32 -04:00
Auke Kok a1d4ca9d8a TODO: bootchart items. 2013-04-14 14:11:47 -07:00
Auke Kok cfca24f3df readahead: document options and commands. 2013-04-14 12:54:54 -07:00
Zbigniew Jędrzejewski-Szmek 268d944e44 readahead-analyze: avoid division-by-0
Also remove a few casts and use _cleanup_fclose_ to simplify logic.
2013-04-14 14:29:17 -04:00
Zbigniew Jędrzejewski-Szmek 4094bcbfac MurmurHash3: actually inline functions
"__attribute__((always_inline))" does not replace "inline" and they
still need to be used together. This fixes "always_inline function
might not be inlinable [-Wattributes]" warning in gcc 4.7

Idea-from-patch-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
2013-04-14 13:11:06 -04:00
Lennart Poettering a56f19c4f9 kdbus: generare bloom filters properly for messages we send 2013-04-14 17:49:18 +02:00
Lennart Poettering 2404302e50 kdbus: update kdbus.h from upstream 2013-04-14 17:47:12 +02:00
Lennart Poettering 88fe224c8c bus: always explicitly rewind read index before passing message to caller or callback 2013-04-14 17:46:41 +02:00
Lennart Poettering 42c5aaf3ba bus: fix counting of argN= matches 2013-04-14 17:45:26 +02:00
Lennart Poettering ed5c5dbde1 util: introduce alloca0() and use it at a number of places 2013-04-14 17:43:59 +02:00
Kay Sievers 01f6c9d468 bus: zero data structure and catch up with error value change 2013-04-14 16:28:34 +02:00
Lennart Poettering 77930f1120 kdbus: also parse cmdline message attribute 2013-04-14 03:20:23 +02:00
Lennart Poettering 75722f1d48 kdbus: make name acquirement ioctls valgrind clean 2013-04-14 03:20:23 +02:00
Zbigniew Jędrzejewski-Szmek abad76cc4c Include <fcntl.h> instead of <sys/fcntl.h>
<fcntl.h> is POSIX. On Linux, <sys/fcntl.h> simply includes
<fcntl.h>, so there should be on difference. On Android
likewise, except that there is some more stuff. QNX has
only <fcntl.h>.

https://bugs.freedesktop.org/show_bug.cgi?id=63423
2013-04-13 21:02:03 -04:00
Zbigniew Jędrzejewski-Szmek d3b6d0c21e fileio: in envfiles, do not skip lines following empty lines
https://bugs.freedesktop.org/show_bug.cgi?id=63477
2013-04-13 20:24:39 -04:00
Zbigniew Jędrzejewski-Szmek 7914d6bba4 Remove a few NULLs
Just {} is used in a lot of places now, and there's nothing
special abose those few.
2013-04-13 20:24:39 -04:00
Lennart Poettering 69aec65cf8 kdbus: parse even more kernel meta data fields 2013-04-13 21:53:11 +02:00
Lennart Poettering 5b7d4c1c16 kdbus: update to newest kdbus API 2013-04-13 20:12:37 +02:00
Mirco Tischler d378991747 journal: fix broken tags _SOURCE_REALTIME_TIMESTAMP and _MACHINE_ID 2013-04-12 19:26:49 -04:00
Zbigniew Jędrzejewski-Szmek 991f2a3932 systemctl: new verb 'list-sockets'
LISTEN           UNIT                            ACTIVATES
/dev/initctl     systemd-initctl.socket          systemd-initctl.service
/dev/log         systemd-journald.socket         systemd-journald.service
...
[::]:19531       systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
kobject-uevent 1 systemd-udevd-kernel.socket     systemd-udevd.service

17 sockets listed.
Pass --all to see loaded but inactive sockets, too.
2013-04-12 19:26:36 -04:00
Zbigniew Jędrzejewski-Szmek 2244a6fbe6 util: add wrapper for realloc to avoid specyfing type 2013-04-12 19:26:12 -04:00
Lennart Poettering 2da833ac2d kdbus: make our little test pass cleanly again 2013-04-12 22:51:23 +02:00
Lennart Poettering b5baa8fe88 kbdus: add null bloom filter to our messages
This makes things work again with the requirements of the kernel on
bloom filters.
2013-04-12 22:48:36 +02:00
Lennart Poettering ed7d0b225b kdbus: use a valid service name for testing 2013-04-12 21:45:14 +02:00
Lennart Poettering cfde0327ad kdbus: update kdbus.h from upstream 2013-04-12 21:44:55 +02:00
Lennart Poettering d9115e1852 kdbus: make sure msg structure is properly initialized 2013-04-12 21:44:14 +02:00