1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-26 03:22:00 +03:00
Commit Graph

25280 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
26e9e10b39 basic/macros: clang 3.5 doesn't support alloc_size
The attribute was removed in commit c047507 in the clang repository as it
was never properly implemented anyway. Avoid using the attribute with
clang because it generates a ton of annoying warnings.
2016-03-15 19:40:33 -04:00
Zbigniew Jędrzejewski-Szmek
7a827fcb11 test-copy: test with different max_bytes values 2016-03-15 19:26:28 -04:00
Petros Angelatos
b3969f73f9 man: document missing KillSignal= .nspawn option
Signed-off-by: Petros Angelatos <petrosagg@gmail.com>
2016-03-15 15:08:04 -07:00
Peter Hutterer
ceb6e7973a hwdb: correct resolution for Asus x550cc
https://bugzilla.redhat.com/show_bug.cgi?id=1316655
2016-03-16 08:01:18 +10:00
Zbigniew Jędrzejewski-Szmek
00a8cf7763 basic/copy: use sendfile smarter
We called sendfile with 16kb (a.k.a. COPY_BUFFER_SIZE) as the maximum
number of bytes to copy. This seems rather inefficient, especially with
large files. Instead, call sendfile with a "large" maximum.

What "large" max means is a bit tricky: current file offset + max
must fit in loff_t. This means that as we call sendfile more than once,
we have to lower the max size.

With this patch, test-copy calls sendfile twice, e.g.:
sendfile(4, 3, NULL, 9223372036854775807) = 738760
sendfile(4, 3, NULL, 9223372036854037047) = 0
The second call is necessary to determine EOF.
2016-03-15 14:54:27 -04:00
Zbigniew Jędrzejewski-Szmek
ce33fddad0 test-copy: add a test shuffling bytes between normal files
I started looking into adding copy_file_range support, and discovered
that we can improve the way we call sendfile:
- sendfile(2) man page is missing an important bit: the number of bytes to
  copy cannot be too big (SSIZE_MAX actually), and the description of EINVAL
  return code does not mention this either,
- our implementation works but calls sendfile over and over with a small
  size, which seems suboptimal.

First add a test which (under strace) can be used to see current behaviour.
2016-03-15 14:53:31 -04:00
Lubomir Rintel
2abd5b5a49 time-util: fall back to CLOCK_MONOTONIC if CLOCK_BOOTTIME unsupported
It was added in 2.6.39, and causes an assertion to fail when running in mock
hosted on 2.6.23-based RHEL-6:

Assertion 'clock_gettime(map_clock_id(clock_id), &ts) == 0' failed at systemd/src/basic/time-util.c:70, function now(). Aborting.
2016-03-15 12:43:33 +01:00
Zbigniew Jędrzejewski-Szmek
b862a54255 Merge pull request #2840 from linkmauve/use-xdg-config-home
sd-path: use XDG_CONFIG_HOME instead of hardcoding ~/.config for user-dirs
2016-03-15 00:55:08 -04:00
Emmanuel Gil Peyrot
b6b0cfaafd sd-path: use XDG_CONFIG_HOME instead of hardcoding ~/.config for user-dirs 2016-03-15 04:09:44 +00:00
Zbigniew Jędrzejewski-Szmek
23a5000b44 Merge pull request #2838 from vapier/master
include sys/sysmacros.h in more places
2016-03-14 23:51:29 -04:00
Mike Frysinger
27d13af71c include sys/sysmacros.h in more places
Since glibc is moving away from implicitly including sys/sysmacros.h
all the time via sys/types.h, include the header directly in more
places.  This seems to cover most makedev/major/minor usage.
2016-03-14 23:29:10 -04:00
Thomas Haller
0513ea4e3f lldp: fix starting ttl timer for lldp neighbor
lldp_start_timer() was only called during sd_lldp_get_neighbors().
Ensure that the timer is (re-)started when a new neighbor appears.
Otherwise, the timer is not started when relying on the events alone.

Fixes: 34437b4f9c
2016-03-14 17:02:19 +01:00
Daniel Mack
ca9bc74bd0 Merge pull request #2827 from keszybz/public-headers
ANSI C compatibility for public headers
2016-03-14 16:55:04 +01:00
Zbigniew Jędrzejewski-Szmek
70e43ee7be Merge pull request #2735 from evverx/fix-2730
Add test for -.mount with Alias=root.mount, bug #2730.
2016-03-14 09:12:29 -04:00
Zbigniew Jędrzejewski-Szmek
51f2174037 Merge pull request #2834 from coling/master 2016-03-14 08:31:08 -04:00
Zbigniew Jędrzejewski-Szmek
a0796d1c1f Merge pull request #2832 from evverx/fix-mkfs-btrfs-checking
Fix mkfs.btrfs checking
2016-03-14 08:14:41 -04:00
Zbigniew Jędrzejewski-Szmek
87836c67d8 Merge pull request #2835 from tklauser/man-spelling
man: network - Fix misspelling of "router advertisement"
2016-03-14 07:47:01 -04:00
Tobias Klauser
3708bd466e man: network - Fix misspelling of "router advertisement" 2016-03-14 12:13:58 +01:00
Colin Guthrie
5e1558f4a0 device: Ensure we have sysfs path before comparing.
In some cases we do not have a udev device when setting up a unit
(certainly the code gracefully handles this). However, we do
then go on to compare the path via path_equal which will assert
if a null value is passed in.

See https://bugs.mageia.org/show_bug.cgi?id=17766

Not sure if this is the correct fix, but it avoids the crash
2016-03-14 09:43:03 +00:00
Evgeny Vereshchagin
579afbea21 shared/machine-pool: fix another mkfs.btrfs checking
Fixes:
       Message: Process 806 (systemd-importd) of user 0 dumped core.

                Stack trace of thread 806:
                #0  0x00007f5eaeff7227 raise (libc.so.6)
                #1  0x00007f5eaeff8e8a abort (libc.so.6)
                #2  0x000055b6d3418f4f log_assert_failed (systemd-importd)
                #3  0x000055b6d3409daf safe_close (systemd-importd)
                #4  0x000055b6d33c25ea closep (systemd-importd)
                #5  0x000055b6d33c38d9 setup_machine_directory (systemd-importd)
                #6  0x000055b6d33b8536 method_pull_tar_or_raw (systemd-importd)
                #7  0x000055b6d33ed097 method_callbacks_run (systemd-importd)
                #8  0x000055b6d33ef929 object_find_and_run (systemd-importd)
                #9  0x000055b6d33eff6b bus_process_object (systemd-importd)
                #10 0x000055b6d3447f77 process_message (systemd-importd)
                #11 0x000055b6d344815a process_running (systemd-importd)
                #12 0x000055b6d3448a10 bus_process_internal (systemd-importd)
                #13 0x000055b6d3448ae1 sd_bus_process (systemd-importd)
                #14 0x000055b6d3449779 time_callback (systemd-importd)
                #15 0x000055b6d3454ff4 source_dispatch (systemd-importd)
                #16 0x000055b6d34562b9 sd_event_dispatch (systemd-importd)
                #17 0x000055b6d34566f8 sd_event_run (systemd-importd)
                #18 0x000055b6d33ba72a bus_event_loop_with_idle (systemd-importd)
                #19 0x000055b6d33b95bc manager_run (systemd-importd)
                #20 0x000055b6d33b9766 main (systemd-importd)
                #21 0x00007f5eaefe2a00 __libc_start_main (libc.so.6)
                #22 0x000055b6d33b5569 _start (systemd-importd)
2016-03-14 00:54:35 +00:00
Evgeny Vereshchagin
c3b0e5ac57 shared/machine-pool: fix mkfs.btrfs checking
binary_is_good translates ENOENT to 0
See https://github.com/systemd/systemd/commit/85eca92e#diff-bcad68c477b6651521e880c40b7a9b40R813
2016-03-14 00:01:33 +00:00
Ronny Chevalier
ed0b16e279 Merge pull request #2828 from mineo/run-help
run: Improve the help message about timer options and existing units
2016-03-12 15:56:54 +01:00
Wieland Hoffmann
b61a09a522 run: Improve the help message about timer options and existing units 2016-03-12 11:50:34 +01:00
Zbigniew Jędrzejewski-Szmek
e0c0b07da1 headers: remove commas at end of enum lists
src/systemd/sd-journal.h:75:51: warning: commas at the end of enumerator
      lists are a C99-specific feature [-Wc99-extensions]
2016-03-11 13:50:56 -05:00
Zbigniew Jędrzejewski-Szmek
b2542bf9ab headers: do not use siginfo_t if not defined
Simply avoid the trouble and use a void* if the define
is missing. We lose type safety, but who cares.
sigaction(2) says that siginfo_t requires _POSIX_C_SOURCE >= 199309L,
but we can be a bit more generous and use the same define
as /usr/include/signal.h.
2016-03-11 13:46:12 -05:00
Zbigniew Jędrzejewski-Szmek
0cb27225e9 headers: use __inline__ instead of inline
https://gcc.gnu.org/onlinedocs/gcc-5.3.0/gcc/Alternate-Keywords.html#Alternate-Keywords
recommends __inline__ over inline in ANSI C compatible headers.
Tested with gcc-5.3 and clang-3.7.

https://bugzilla.redhat.com/show_bug.cgi?id=1316964
2016-03-11 13:41:49 -05:00
Zbigniew Jędrzejewski-Szmek
7f495b9848 build-sys: add check that our headers are ANSI compatible 2016-03-11 13:33:43 -05:00
Daniel Mack
5d331c192f Merge pull request #2821 from keszybz/mac_selinux_bind-do-not-rely-on-errno
socket_address_listen: do not rely on errno (2)
2016-03-10 17:37:40 +01:00
Daniel Mack
bffac070d0 Merge pull request #2794 from jhol/dont-unmount-initramfs-mounts
core/mount: Don't unmount initramfs mounts
2016-03-10 15:24:21 +01:00
Zbigniew Jędrzejewski-Szmek
825546ef76 socket_address_listen: do not rely on errno (2)
We'd still use the invalid errno for a return value. Rework
the code to simply return the right error right away.
2016-03-10 09:24:08 -05:00
Tom Gundersen
ead02a14ed Merge pull request #2818 from vinaykul/master
DHCP DUID and IAID configurability
2016-03-10 14:38:42 +01:00
Daniel Mack
79c96fd204 Merge pull request #2820 from lnykryn/test-ipcrm
test-ipcrm: fix log message
2016-03-10 13:43:48 +01:00
Daniel Mack
b5adc91a67 Merge pull request #2819 from bachradsusi/mac_selinux_bind-do-not-rely-on-errno
socket_address_listen - do not rely on errno
2016-03-10 13:31:59 +01:00
Lukas Nykryn
7322824832 test-ipcrm: fix log message 2016-03-10 12:57:23 +01:00
Petr Lautrbach
a0c9496cc8 socket_address_listen - do not rely on errno
Currently socket_address_listen() calls mac_selinux_bind() to bind a UNIX
socket and checks its return value and errno for EADDRINUSE. This is not
correct. When there's an SELinux context change made for the new socket,
bind() is not the last function called in mac_selinux_bind(). In that
case the last call is setfscreatecon() from libselinux which can change
errno as it uses access() to check if /proc/thread-self is available.
It fails on kernels before 3.17 and errno is set to ENOENT.

It's safe to check only the return value at it's set to -errno.
2016-03-10 10:34:37 +01:00
Vinay Kulkarni
c83321e6d4 DHCP DUID and IAID configurability 2016-03-09 21:58:44 -08:00
Zbigniew Jędrzejewski-Szmek
c41d3b3a0c Merge pull request #2792 from ronnychevalier/rc/tests_movev2
tests: move out unrelated tests from test-util to their own file
2016-03-09 23:53:54 -05:00
Zbigniew Jędrzejewski-Szmek
ef240bf0df Merge pull request #2816 from rhatdan/selinux
/dev/console must be labeled with SELinux label in containers
2016-03-09 23:47:00 -05:00
Zbigniew Jędrzejewski-Szmek
0551ec7355 Merge pull request #2793 from fbuihuu/fstab-generator-automount-option
fstab-generator: fix automounts to not mount automatically
2016-03-09 23:41:24 -05:00
Martin Pitt
bd7e03af00 Merge pull request #2755 from keszybz/more-tests
Enable more tests by default, and even more with `--enable-tests=unsafe`
2016-03-09 18:21:42 +01:00
Dan Walsh
68b020494d /dev/console must be labeled with SELinux label
If the user specifies an selinux_apifs_context all content created in
the container including /dev/console should use this label.

Currently when this uses the default label it gets labeled user_devpts_t,
which would require us to write a policy allowing container processes to
manage user_devpts_t.  This means that an escaped process would be allowed
to attack all users terminals as well as other container terminals.  Changing
the label to match the apifs_context, means the processes would only be allowed
to manage their specific tty.

This change fixes a problem preventing RKT containers from working with systemd-nspawn.
2016-03-09 11:19:45 -05:00
Daniel Mack
280d397ab3 Merge pull request #2768 from benjarobin/fix-2718
systemctl: Replace check_one_unit() by get_state_one_unit()
2016-03-07 14:50:08 +01:00
Ronny Chevalier
ef03147173 Merge pull request #2803 from 0xAX/lacess-tree-wide
firstboot: use laccess macro instead of facessat()
2016-03-06 21:20:49 +01:00
Alexander Kuleshov
b3cd687d86 firstboot: use laccess macro instead of facessat() 2016-03-06 13:27:59 +06:00
Zbigniew Jędrzejewski-Szmek
58015d7815 README: bump kernel version to 3.12
It is required for %P is sysctl kernel.core_pattern.

Fixes #2800.
2016-03-05 11:22:45 -05:00
Zbigniew Jędrzejewski-Szmek
b61c9cf925 Merge pull request #2791 from 0xAX/clear-flag-macro
tree-wide: use SET_FLAG() macro to make code more clear
2016-03-05 10:31:04 -05:00
Zbigniew Jędrzejewski-Szmek
22a9adac34 Merge pull request #2795 from jhol/replace-irreversibly-on-failure
core/failure-action: set job-modes to replace-irreversibly
2016-03-05 10:19:25 -05:00
Zbigniew Jędrzejewski-Szmek
0ca49eed1f Merge pull request #2801 from ronnychevalier/rc/systemctl_error_msg
systemctl: improve error message when starting a unit failed
2016-03-05 10:16:50 -05:00
Alexander Kuleshov
5883ff6017 tree-wide: use SET_FLAG() macro to make code more clear 2016-03-05 18:26:01 +06:00
Ronny Chevalier
0b8505b7c9 systemctl: improve error message when starting a unit failed
Fixes #2798
2016-03-05 12:47:21 +01:00