Commit graph

11498 commits

Author SHA1 Message Date
Lennart Poettering b043cd0b7e cgroup: the "tasks" attribute is obsolete, cgroup.procs is the new replacement 2013-06-06 15:49:01 +02:00
Lennart Poettering 3d585edbb1 build-sys: we do not support --disable-largefile builds 2013-06-06 10:38:31 +02:00
Cristian Rodríguez 5e63ce78b5 build-sys: do not allow --enable static 2013-06-06 10:10:54 +02:00
Lennart Poettering af4713396c service: execute ExecStopPost= commands when the watchdog timeout hits
We can assume that a service for which a watchdog timeout was triggered
is unresponsive to a clean shutdown. However, it still makes sense to
execute the post-stop cleanup commands that can be configured with
ExecStopPost=. Hence, when the timeout is hit enter STOP_SIGKILL rather
than FINAL_SIGKILL.
2013-06-06 09:10:12 +02:00
Chengwei Yang 1cce5d639c manager: Do not handle SIGKILL since we can not
This is a minor fix because it's not a major issue, this fix just avoid
to get EINVAL error from sigaction(2).

There are two signals can not handled at user space, SIGKILL and
SIGSTOP even we're PID 1, trying to handle these two signals will get
EINVAL error.

There are two kinds of systemd instance, running as system manager or
user session manager, apparently, the latter is a general user space
process which can not handle SIGKILL. The special pid 1 also can not
do that refer to kernel/signal.c:do_sigaction().

However, pid 1 is unkillable because the kernel did attach
SIGNAL_UNKILLABLE to it at system boot up, refer to
init/main.c:start_kernel()
    --> rest_init()
        --> kernel_thread()
            --> kernel_init()
                --> init_post()
                    current->signal->flags |= SIGNAL_UNKILLABLE
2013-06-06 08:58:58 +02:00
Harald Hoyer 4a4c0be0ab libsystemd-bus/bus-kernel.h: set MEMFD_MIN_SIZE to 128k 2013-06-05 12:25:02 +02:00
Harald Hoyer 6cbf6931d2 test-bus-kernel-benchmark: corrected output for memfd bisect 2013-06-05 12:24:17 +02:00
Kay Sievers 83d97ce664 bus: benchmark - adjust printf and MAX_SIZE 2013-06-05 10:26:00 +02:00
Pierre Neidhardt f3dbb13c85 keymap: add some more Asus laptop keys
With Linux 3.9 (commit a935eaecef2b209ad661dadabb4e32b7c9a9b924), the
Asus keyboard driver has changed to be more compliant to the symbol
signification. This has led to some issues with udev. In particular,
the XF86TouchpadToggle (a Fn key) does not work anymore on Asus X52J.

I found another similar patch which does not seem to have been ever
submitted/merged:

  https://launchpadlibrarian.net/73337842/95-keymap.rules.patch

Find enclosed the patch containing both the launchpad patch and mine
into one file.

https://bugs.freedesktop.org/show_bug.cgi?id=65375
2013-06-04 17:45:41 -04:00
Zbigniew Jędrzejewski-Szmek bdf874d4bf man: mention that units are 1024-based 2013-06-04 17:45:40 -04:00
Kay Sievers bf30e48fe5 bus: unmap memfd retrieved from the memfd cache 2013-06-04 23:37:57 +02:00
Kay Sievers 311754514c bus-benchmark: add performance data output mode
- for now, comment out munmap() check to enable memfd passing
  - print tab-separated values and header
  - add memcpy() to fill the memfd, to produce real-world results

$ ./test-bus-kernel-benchmark
SIZE    COPY    MEMFD
4194304 370     370
2097152 810     810
1048576 2130    2130
524288  4090    4090
262144  7080    7080
131072  11380   11380
65536   17140   17140
98304   13930   13930
114688  12890   12890
122880  12350   12350
126976  12150   12150
129024  12170   12170
130048  12040   12040
130560  12080   12080
130816  12010   12010
130944  12020   12020
131008  12040   12040
131040  12050   12050
131056  12010   12010
131064  12060   12060
131068  12040   12040
131070  11310   11310
131069  11420   11420
Copying/memfd are equally fast at 131068 bytes

$ ./test-bus-kernel-benchmark chart
SIZE    COPY    MEMFD
1       35570   23690
2       36470   23680
4       36160   23520
8       36600   22220
16      33900   20830
32      33990   21360
64      33480   21280
128     34050   20910
256     32950   21750
512     34730   21900
1024    33810   22890
2048    36280   23110
4096    30790   21610
8192    29380   21100
16384   26880   19820
32768   22510   17980
65536   17270   15180
131072  11400   11420
262144  7140    8270
524288  4090    5050
1048576 2110    2780
2097152 800     1140
4194304 350     580
2013-06-04 21:00:30 +02:00
Zbigniew Jędrzejewski-Szmek 3a256a12ad systemctl: add missing verbs to help 2013-06-04 10:58:00 -04:00
Zbigniew Jędrzejewski-Szmek 5ec7641776 systemctl: limit logs in status to current boot
Also reworded a few debug messages for brevity, and added a log
statement which prints out the filter at debug level:

Journal filter: (((UNIT=sys-module-configfs.device AND _PID=1) OR (COREDUMP_UNIT=sys-module-configfs.device AND MESSAGE_ID=fc2e22bc6ee647b6b90729ab34a250b1) OR _SYSTEMD_UNIT=sys-module-configfs.device) AND _BOOT_ID=4e3c518ab0474c12ac8de7896fe6b154)
2013-06-04 09:59:06 -04:00
Karel Zak 7c1b8f043e units: cleanup agetty command line
* baud rate is optional and unnecessary for virtual terminals
 * term type is optional (default is 'linux' for virtual terminals
   and 'vt102' for serial lines)
 * long options are more user-friendly

... all this is supported since util-linux v2.20 (Aug 2011).
2013-06-04 15:34:44 +02:00
Lennart Poettering 59967d30e5 bus-benchmark: lower loop time to 100ms by default, to ensure "make check" finishes more quickly
To get useful results you should however specify a much longer time on
the command line.
2013-06-04 12:00:50 +02:00
Lennart Poettering 061b2c4365 test: determine number of transactions per second rather than time per transaction
This way the measurements are not skewed by twoo short total measurement
times, and results become stabler.
2013-06-04 11:53:11 +02:00
Zbigniew Jędrzejewski-Szmek 02b9e969a6 systemctl,core: allow nuking of symlinks to removed units
Before, one the unit file was deleted, install_context_for_removal()
would refuse to look for symlinks. But we can remove dangling symlinks
anyway.

In principle, package installation/deinstallation scripts should do
that before the unit is uninstalled, but they don't always do. Also,
a user might have added additional symlinks manually.

https://bugs.freedesktop.org/show_bug.cgi?id=62395
2013-06-03 13:55:17 -04:00
Tom Gundersen 5b46fc6c60 Makefile.am: merge conditionals
Merge all ENABLE_TMPFILES conditionals into one, and merge two ENABLE_EFI
conditionals. Also make sure the .in files are always distributed.
2013-06-03 16:00:51 +02:00
Thomas Hindoe Paaboel Andersen 2b7d6965be analyze: fix font size on plot
The font-size was missing a unit so they were ignored. This patch sets
the unit to 'px' and adjusts the sizes a bit as the text got very small.
2013-06-02 22:29:31 +02:00
Thomas Hindoe Paaboel Andersen d9acfb71db analyze: show unit file loading on plot
This will add another color to the legend called "Loading unit files"
Like the generators it will mark a part of the systemd bar indicating
the time spent while loading unit files.
2013-06-02 22:26:13 +02:00
Umut Tezduyar 518d10e985 analyze: show generators on plot 2013-06-02 22:26:05 +02:00
Umut Tezduyar 6351163bf3 build-sys: option to disable tmpfiles 2013-06-02 11:12:14 +02:00
Daniel Albers fe1abefcd3 journal: take KeepFree into account when reporting maximum size
When reporting the maximum journal size add a hint if it's limited
by KeepFree.
2013-06-01 09:15:11 -04:00
Kay Sievers 1a2a4cf250 bus: update for kdbus changes 2013-05-31 04:56:10 +02:00
Zbigniew Jędrzejewski-Szmek 1058cbf2ad systemctl: suggest 'systemctl daemon-reload' without --system
--system is default anyway, and some poor user might type 9
characters without needing to.
2013-05-30 20:44:41 -04:00
Václav Pavlín 76d5a71de9 systemctl: add command set-log-level
Command changes current log level
2013-05-30 20:44:41 -04:00
Václav Pavlín 99504dd4c1 systemctl: add commands set-default and get-default
systemctl set-default NAME links the default.target to the given unit,
get-default prints out the path to the currently set default target.
2013-05-30 20:44:41 -04:00
Lukas Nykryn 9749cd77bc core: read "debug" from kernel commandline and set log level 2013-05-30 00:43:39 -04:00
Jan Alexander Steffens (heftig) 23ad4dd884 journald: DO recalculate the ACL mask, but only if it doesn't exist
Since 11ec7ce, journald isn't setting the ACLs properly anymore if
the files had no ACLs to begin with: acl_set_fd fails with EINVAL.

An ACL with ACL_USER or ACL_GROUP entries but no ACL_MASK entry is
invalid, so make sure a mask exists before trying to set the ACL.
2013-05-30 00:43:39 -04:00
Zbigniew Jędrzejewski-Szmek 8de1fd281e build-sys: more pretty colors 2013-05-30 00:43:39 -04:00
Nirbheek Chauhan cb0edd735c core: use the same test as upstart for apparmor
Lennart:
> Hmm, I just noticed this patch:
>
> https://code.launchpad.net/~mdeslaur/upstart/apparmor-support/+merge/164169
>
> It contains a different check for AppArmor. Basically something like this:
>
> /sys/module/apparmor/parameters/enabled == 'Y'
>
> I'd prefer if we could change our code to do the same, given that
> the Ubuntu guys are guys are upstream for apparmor.

https://bugs.freedesktop.org/show_bug.cgi?id=63312
2013-05-30 00:43:39 -04:00
Zbigniew Jędrzejewski-Szmek 827f70eb76 man: fix display of keys which appear in two sections in directive index
When an index key appeared in multiple sections (e.g.
CPUAffinity= was present in both "SYSTEM MANAGER DIRECTIVES"
and "UNIT DIRECTIVES"), when lxml was used, the key would
be not be displayed in all but one of those sections, and
only an empty <term/> element would be present. This
happens because lxml allows only one parent for each node,
and when the same formatted element was used in multiple places,
it was actually moved between them. Fix this by making a copy
of the element. The bug was present since lxml support was
introduced.

Also fix some indentation issues.
2013-05-30 00:43:38 -04:00
Zbigniew Jędrzejewski-Szmek 310b59edcf man: link to XKB conf. guide in localectl(1) 2013-05-30 00:43:38 -04:00
Eelco Dolstra ccd90a976d Fix CPUShares configuration option
This fixes the error message "Unknown or unsupported cgroup attribute
CPUShares".
2013-05-30 00:43:38 -04:00
Kay Sievers 62b3e928de bus: update for kdbus changes 2013-05-30 05:35:42 +02:00
Zachary Cook 4f8d551ff0 systemd: record efi timestamps after /sys is mounted
This partially reverts commit c3a170f3, which moved
efi_get_boot_timestamps too early in main(), before
/sys is assured to be mounted

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64371

[tomegun: in particular /sys/firmware/efi/efivars needs to be
mounted, which is not a problem if a systemd-initramfs containing
the correct module is being used. But not everyone uses an
initramfs...]
2013-05-29 15:36:05 +02:00
Lennart Poettering 832d16a616 bus: rework benchmark test to actually yield useful results 2013-05-29 17:16:10 +09:00
Lennart Poettering 76b7742c13 bus: when adding memfds to cache and we shorten them, make sure to unmap the remainder 2013-05-29 17:05:01 +09:00
Lennart Poettering 89b4fc4656 bus: properly unmap mapped area 2013-05-29 17:05:01 +09:00
Martin Pitt 98627dced7 keymap: Add Logitech USB (iTouch)
https://launchpad.net/bugs/1152377
2013-05-24 08:35:47 +02:00
Kay Sievers 9b3848f2e2 bus: update kdbus.h from upstream 2013-05-24 03:08:48 +02:00
Václav Pavlín 3a05c0f96c systemctl: mangle names when avoiding dbus
Unit names were mangled in function enable_unit only when dbus was
used. This patch adds mangling also when the dbus is not in use.

This makes it possible to say e.g.:
   systemctl --root=/path enable cups
without spelling cups.service out in full.
2013-05-23 00:29:10 -04:00
Jan Janssen 546158bc6f Fix --no-ask-password
POSIX_ME_HARDER mode is disabled for localectl. It doesn't
make much sense in case of localectl, and there's little reason
for localectl to behave specially.
2013-05-23 00:28:04 -04:00
Zbigniew Jędrzejewski-Szmek a057be1fcc man: mention net.ifnames in kernel-command-line(3) 2013-05-22 21:13:57 -04:00
Lennart Poettering 8f155917bf bus: add benchmark tool to determine the right threshold for copying vs. memfd 2013-05-22 16:04:39 +02:00
Jan Janssen 2927b326cc man: Document missing options 2013-05-21 09:23:51 -04:00
Michael Tremer 67820a0cbd systemctl: make systemctl is-enabled work for templated units
Patch resolves the problem that 'systemctl is-enabled' does
not work for templated units.

Without this patch, systemctl is-enabled something@abc.service
returned "No such file or directory", because it first checked
if /usr/lib/systemd/system/something@abc.service, etc. exists.
If systemctl is-enabled is called for templated units, this
check should be omitted and it should search for symlinks in
the .wants dirs right away.

This patch fixes the broken behaviour and resolves
  https://bugs.freedesktop.org/show_bug.cgi?id=55318.

[zj: fixed the patch to still check for broken symlinks and
     masked instances. Also removed untrue assumptions from
     the patch description.]
2013-05-21 09:23:51 -04:00
Michael Olbrich 9e9c3abcfa service: kill processes with SIGKILL on watchdog failure
Just calling service_enter_dead() does not kill any processes.
As a result, the old process may still be running when the new one is
started.

After a watchdog failure the service is in an undefined state.
Using the normal shutdown mechanism makes no sense. Instead all processes
are just killed and the service can try to restart.
2013-05-21 09:23:51 -04:00
Mantas Mikulėnas 571bfc6c56 systemctl: honor "--no-legend" in 'list-sockets' 2013-05-21 09:23:51 -04:00