systemd.git
7 years agoRevert "core: set RLIMIT_CORE to unlimited by default"
Martin Pitt [Sat, 27 Feb 2016 11:27:06 +0000 (12:27 +0100)]
Revert "core: set RLIMIT_CORE to unlimited by default"

Partially revert commit 15a900327ab as this completely breaks core dumps
without systemd-coredump. It's also contradicting core(8), and it's not
systemd's place to redefine the kernel definitions of core files.

Commit bdfd7b2c now honours the process' RLIMIT_CORE for systemd-coredump. This
isn't what RLIMIT_CORE is supposed to do (it limits the size of the core
*file*, but the kernel deliberately ignores it for piping), so set a static
2^63 core size limit for systemd-coredump to go back to the previous behaviour
(otherwise the change above would break systemd-coredump).

Bug-Debian: https://bugs.debian.org/815020

Gbp-Pq: Topic debian
Gbp-Pq: Name Revert-core-set-RLIMIT_CORE-to-unlimited-by-default.patch

7 years agoRevert "core: one step back again, for nspawn we actually can't wait for cgroups...
Martin Pitt [Mon, 27 Apr 2015 13:29:13 +0000 (15:29 +0200)]
Revert "core: one step back again, for nspawn we actually can't wait for cgroups running empty since systemd will get exactly zero notifications about it"

This reverts commit 743970d2ea6d08aa7c7bff8220f6b7702f2b1db7.

Bug-Debian: https://bugs.debian.org/784720
Bug-Ubuntu: https://launchpad.net/bugs/1448259
Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=1141137

Gbp-Pq: Topic debian
Gbp-Pq: Name Revert-core-one-step-back-again-for-nspawn-we-actual.patch

7 years agoSkip filesystem check if already done by the initramfs
Nis Martensen [Tue, 19 Jan 2016 21:01:43 +0000 (22:01 +0100)]
Skip filesystem check if already done by the initramfs

Newer versions of initramfs-tools already fsck and mount / and /usr in
the initramfs. Skip the filesystem check in this case.

Based on a previous patch by Michael Biebl <biebl@debian.org>.

Closes: #782522
Closes: #810748
Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-filesystem-check-if-already-done-by-the-initram.patch

7 years agofsckd daemon for inter-fsckd communication
Didier Roche [Fri, 22 May 2015 11:04:38 +0000 (13:04 +0200)]
fsckd daemon for inter-fsckd communication

Global logic:
Add systemd-fsckd multiplexer which accepts multiple (via systemd-fsck's
/run/systemd/fsck.progress socket) fsck instances to connect to it and sends
progress report. systemd-fsckd then computes and writes to /dev/console the
number of devices currently being checked and the minimum fsck progress.

Plymouth and user interaction:
Forward the progress to plymouth and support canellation of in progress fsck.
Try to connect and send to plymouth (if running) some checked report progress,
using direct plymouth protocole.

Update message is the following:
fsckd:<num_devices>:<progress>:<string>
* num_devices corresponds to the current number of devices being checked (int)
* progress corresponds to the current minimum percentage of all devices being
  checked (float, from 0 to 100)
* string is a translated message ready to be displayed by the plymouth theme
  displaying the information above. It can be overridden by plymouth themes
  supporting i18n.

Grab in fsckd plymouth watch key Control+C, and propagate this cancel request
to systemd-fsck which will terminate fsck.

Send a message to signal to user what key we are grabbing for fsck cancel.

Message is: fsckd-cancel-msg:<string>
Where string is a translated string ready to be displayed by the plymouth theme
indicating that Control+C can be used to cancel current checks. It can be
overridden (matching only fsckd-cancel-msg prefix) for themes supporting i18n.

Misc:
systemd-fsckd stops on idle when no fsck is connected.
Add man page explaining the plymouth theme protocol, usage of the daemon
as well as the socket activation part. Adapt existing fsck man page.

Note that fsckd had lived in the upstream tree for a while, but was removed.
More information at
http://lists.freedesktop.org/archives/systemd-devel/2015-April/030175.html
-

Gbp-Pq: Topic debian
Gbp-Pq: Name fsckd-daemon-for-inter-fsckd-communication.patch

7 years agocgroup: don't trim cgroup trees created by someone else
Michal Sekletar [Fri, 19 Sep 2014 15:14:10 +0000 (17:14 +0200)]
cgroup: don't trim cgroup trees created by someone else

In cases when there is a cgroup tree in a controller hierarchy which was
not created by us, but it looks like it was (i.e. cgroup path is the
same as the one in systemd's named hierarchy) we shouldn't delete it.

Origin: http://lists.freedesktop.org/archives/systemd-devel/2014-September/023276.html
Bug-Debian: https://bugs.debian.org/777601

Gbp-Pq: Topic debian
Gbp-Pq: Name cgroup-don-t-trim-cgroup-trees-created-by-someone-el.patch

7 years agoOnly start logind if dbus is installed
Martin Pitt [Mon, 9 Feb 2015 09:53:43 +0000 (10:53 +0100)]
Only start logind if dbus is installed

logind fails to start in environments without dbus, such as LXC containers or
servers. Add a startup condition to avoid the very noisy startup failure.

Part of #772700

Gbp-Pq: Topic debian
Gbp-Pq: Name Only-start-logind-if-dbus-is-installed.patch

7 years agoDon't enable audit by default
Martin Pitt [Sun, 28 Dec 2014 11:49:35 +0000 (12:49 +0100)]
Don't enable audit by default

It causes flooding of dmesg and syslog, suppressing actually important
messages.

Don't enable it for now, until a better solution is found:
http://lists.freedesktop.org/archives/systemd-devel/2014-December/026591.html

Bug-Debian: https://bugs.debian.org/773528

Gbp-Pq: Topic debian
Gbp-Pq: Name Don-t-enable-audit-by-default.patch

7 years agoRe-enable journal forwarding to syslog
Martin Pitt [Fri, 28 Nov 2014 13:43:25 +0000 (14:43 +0100)]
Re-enable journal forwarding to syslog

Revert upstream commit 46b131574fdd7d77 for now, until Debian's sysloggers
can/do all read from the journal directly. See

  http://lists.freedesktop.org/archives/systemd-devel/2014-November/025550.html

for details. Once we grow a journal.conf.d/ directory, sysloggers can be moved
to pulling from the journal one by one and disable forwarding again in such a
conf.d snippet.

Gbp-Pq: Topic debian
Gbp-Pq: Name Re-enable-journal-forwarding-to-syslog.patch

7 years agoAdd support for TuxOnIce hibernation
Julien Muchembled [Tue, 29 Apr 2014 09:40:50 +0000 (11:40 +0200)]
Add support for TuxOnIce hibernation

systemd does not support non-mainline kernel features so upstream rejected this
patch.
It is however required for systemd integration by tuxonice-userui package.

Forwarded: http://lists.freedesktop.org/archives/systemd-devel/2014-April/018960.html

Gbp-Pq: Topic debian
Gbp-Pq: Name Add-support-for-TuxOnIce-hibernation.patch

7 years agoRevert "udev: network device renaming - immediately give up if the target name isn...
Michael Biebl [Wed, 17 Jul 2013 23:04:07 +0000 (01:04 +0200)]
Revert "udev: network device renaming - immediately give up if the target name isn't available"

This reverts commit 97595710b77aa162ca5e20da57d0a1ed7355eaad.

We need to keep supporting systems with 75-persistent-net-generator.rules
generated names for a while after switching to net.ifnames. Re-apply this old
hack to make the renaming less likely to fail.

Gbp-Pq: Topic debian
Gbp-Pq: Name Revert-udev-network-device-renaming-immediately-give.patch

7 years agoMake /run/lock tmpfs an API fs
Michael Biebl [Thu, 4 Sep 2014 23:15:16 +0000 (01:15 +0200)]
Make /run/lock tmpfs an API fs

The /run/lock directory is world-writable in Debian due to historic
reasons. To avoid user processes filling up /run, we mount a separate
tmpfs for /run/lock. As this directory needs to be available during
early boot, we make it an API fs.

Drop it from tmpfiles.d/legacy.conf to not clobber the permissions.

Closes: #751392
Gbp-Pq: Topic debian
Gbp-Pq: Name Make-run-lock-tmpfs-an-API-fs.patch

7 years agoBring tmpfiles.d/tmp.conf in line with Debian defaults
Tollef Fog Heen [Tue, 5 Jun 2012 18:59:36 +0000 (20:59 +0200)]
Bring tmpfiles.d/tmp.conf in line with Debian defaults

Closes: #675422
Gbp-Pq: Topic debian
Gbp-Pq: Name Bring-tmpfiles.d-tmp.conf-in-line-with-Debian-defaul.patch

7 years agoUse Debian specific config files
Michael Biebl [Thu, 18 Jul 2013 18:11:02 +0000 (20:11 +0200)]
Use Debian specific config files

Use /etc/default/locale instead of /etc/locale.conf for locale settings.

Use /etc/default/keyboard instead of /etc/X11/xorg.conf.d/00-keyboard.conf for
keyboard configuration.

Read/write /etc/timezone if /etc/localtime does not exist.

Gbp-Pq: Topic debian
Gbp-Pq: Name Use-Debian-specific-config-files.patch

7 years agotest: use ${builddir}/systemd-runtest.env for $SYSTEMD_CATALOG_DIR
Filipe Brandenburger [Wed, 12 Sep 2018 07:23:40 +0000 (00:23 -0700)]
test: use ${builddir}/systemd-runtest.env for $SYSTEMD_CATALOG_DIR

This makes it so that tests no longer need to know the absolute paths to the
source and build dirs, instead using the systemd-runtest.env file to get these
paths when running from the build tree.

Confirmed that test-catalog works on `ninja test`, when called standalone and
also when the environment file is not present, in which case it will use the
installed location under /usr/lib/systemd/catalog.

The location can now also be overridden for this test by setting the
$SYSTEMD_CATALOG_DIR environment variable.

(cherry picked from commit 49cdae63d168b2fe0e19f9f090b90d79de3c39bb)

Gbp-Pq: Name test-use-builddir-systemd-runtest.env-for-SYSTEMD_CATALOG.patch

7 years agotest: use ${builddir}/systemd-runtest.env to set $SYSTEMD_TEST_DATA
Filipe Brandenburger [Wed, 12 Sep 2018 06:55:02 +0000 (23:55 -0700)]
test: use ${builddir}/systemd-runtest.env to set $SYSTEMD_TEST_DATA

This simplifies get_testdata_dir() to simply checking for an environment
variable, with an additional function to locate a systemd-runtest.env file in
the same directory as the test binary and reading environment variable
assignments from that file if it exists.

This makes it possible to:
- Run `ninja test` from the build dir and have it use ${srcdir}/test for
  test unit definitions.
- Run a test directly, such as `build/test-execute` and have it locate
  them correctly.
- Run installed tests (from systemd-tests package) and locate the test
  units in the installed location (/usr/lib/systemd/tests/testdata), in
  which case the absence of the systemd-runtest.env file will have
  get_testdata_dir() use the installed location hardcoded into the
  binaries.

Explicit setting of $SYSTEMD_TEST_DATA still overrides the contents of
systemd-runtest.env.

(cherry picked from commit e2d413707fc68ed033a83e10a055ca638a1e1e18)

Gbp-Pq: Name test-use-builddir-systemd-runtest.env-to-set-SYSTEMD_TEST.patch

7 years agotest: remove support for suffix in get_testdata_dir()
Filipe Brandenburger [Wed, 12 Sep 2018 06:15:09 +0000 (23:15 -0700)]
test: remove support for suffix in get_testdata_dir()

Instead, use path_join() in callers wherever needed.

(cherry picked from commit 55890a40c3ec0c061c04d1395a38c26313132d12)

Gbp-Pq: Name test-remove-support-for-suffix-in-get_testdata_dir.patch

7 years agotest: make test-catalog relocatable
Yu Watanabe [Tue, 11 Sep 2018 00:18:33 +0000 (09:18 +0900)]
test: make test-catalog relocatable

Fixes #10045.

(cherry picked from commit d9b6baa69968132d33e4ad8627c7fe0bd527c859)

Gbp-Pq: Name test-make-test-catalog-relocatable.patch

7 years agotest: introduce test_is_running_from_builddir()
Yu Watanabe [Tue, 11 Sep 2018 00:17:22 +0000 (09:17 +0900)]
test: introduce test_is_running_from_builddir()

(cherry picked from commit 8cb10a4f4dabc508a04f76ea55f23ef517881b61)

Gbp-Pq: Name test-introduce-test_is_running_from_builddir.patch

7 years agocore: fix gid when DynamicUser=yes with static User=
Yu Watanabe [Thu, 26 Jul 2018 02:42:54 +0000 (11:42 +0900)]
core: fix gid when DynamicUser=yes with static User=

When DynamicUser=yes and static User= are set, and the user has
different uid and gid, then as the storage socket for the dynamic
user does not contains gid, we need to obtain gid.

Follow-up for 9ec655cbbd7505ef465e0444da0622e46099ce42.

Fixes #9702.

(cherry picked from commit 25a1df7c652d180eb716412885c3ce3fcc1bbded)

Gbp-Pq: Name core-fix-gid-when-DynamicUser-yes-with-static-User.patch

7 years agouser-runtime-dir: fix selinux regression
Alan Jenkins [Mon, 3 Sep 2018 10:10:24 +0000 (11:10 +0100)]
user-runtime-dir: fix selinux regression

Fix #9993.  When this code was split out to user-runtime-dir, it forgot to
include the call to mac_selinux_init().  So mkdir_label() stopped working.

Fixes: a9f0f5e50104 ("logind: split %t directory creation to a helper
unit")

(cherry picked from commit 81375d802672f34205bef9f301c58854af5fc568)

Gbp-Pq: Name user-runtime-dir-fix-selinux-regression.patch

7 years agotimedate: defer the property changed signal until job of starting/stopping NTP servic...
Yu Watanabe [Sun, 22 Jul 2018 14:10:02 +0000 (23:10 +0900)]
timedate: defer the property changed signal until job of starting/stopping NTP service is finished

Before this, the property changed signal is emitted immediately after
StartUnit/StopUnit method is called. So, the running state of the NTP
client service may not updated.
This makes the timing of emitting property changed signal is deferred
until job of starting/stopping NTP client service is completed.

Fixes #9672.

(cherry picked from commit 3af0a96c0fcc623bd16649fc3640396a657cf9ef)

Gbp-Pq: Name timedate-defer-the-property-changed-signal-until-job-of-s.patch

7 years agotimedate: increment reference count of sd_bus_message
Yu Watanabe [Sat, 21 Jul 2018 14:07:53 +0000 (23:07 +0900)]
timedate: increment reference count of sd_bus_message

The commit 5d280742b645a69a19e7f9131adc0c95f5c7fa07 introduces a
barrier to suppress calling context_update_ntp_status() multiple times.
However, it just stores the address of sd_bus_message object. So,
when an address is reused on the subsequent message, then the status
of NTP clients are not updated.

This makes the stored message object is referenced by the context
object. So, the subsequent message is on cirtainly different address.

(cherry picked from commit 2770af85ac04fd14af2f6bcdf4d3967ed6f2e36f)

Gbp-Pq: Name timedate-increment-reference-count-of-sd_bus_message.patch

7 years agoDo not apply uaccess tag for /dev/kvm if mode is 0666
Michael Biebl [Fri, 13 Jul 2018 21:36:13 +0000 (23:36 +0200)]
Do not apply uaccess tag for /dev/kvm if mode is 0666

(cherry picked from commit ace5e3111c0b8d8bfd84b32f2c689b0a4d92c061)

Gbp-Pq: Name Do-not-apply-uaccess-tag-for-dev-kvm-if-mode-is-0666.patch

7 years agoRe-add uaccess tag for /dev/kvm
Michael Biebl [Tue, 10 Jul 2018 12:47:58 +0000 (14:47 +0200)]
Re-add uaccess tag for /dev/kvm

If --dev-kvm-mode is set to something different then 0666, which we
explicitly support, it makes sense to still apply the uaccess tag to
/dev/kvm. For distros which opt to use the default 0666, this change is
a nop.

This partially reverts commit b8fd3d82205f632ce001fade74fed287e1564a1a.

(cherry picked from commit fa53e24130af3a389573acb9585eadbf7192955f)

Gbp-Pq: Name Re-add-uaccess-tag-for-dev-kvm.patch

7 years agonetwork/link: Fix logic error in matching devices by MAC
Dave Reisner [Sat, 7 Jul 2018 09:39:01 +0000 (05:39 -0400)]
network/link: Fix logic error in matching devices by MAC

Prior to this commit, a .link file with a [Match] section containing
MACAddress= would match any device without a MAC. This restores the
matching logic prior to e90d037.

(cherry picked from commit 25ea58d37385af27301b7ad25e985eb15f421614)

Gbp-Pq: Name network-link-Fix-logic-error-in-matching-devices-by-MAC.patch

7 years agotest: Drop SKIP_INITRD for QEMU-based tests
Michael Biebl [Mon, 16 Jul 2018 09:27:44 +0000 (11:27 +0200)]
test: Drop SKIP_INITRD for QEMU-based tests

Not all distros support booting without an initrd. E.g. the Debian
kernel builds ext4 as a module and so relies on an initrd to
successfully start the QEMU-based images.

(cherry picked from commit c2d4da002095fe6f86f89a508a81e48fb6d3196f)

Gbp-Pq: Name test-Drop-SKIP_INITRD-for-QEMU-based-tests.patch

7 years agosysusers,tmpfiles: re-create systemd-network, systemd-resolve and systemd-timesync
Yu Watanabe [Sun, 15 Jul 2018 13:31:37 +0000 (22:31 +0900)]
sysusers,tmpfiles: re-create systemd-network, systemd-resolve and systemd-timesync

This partially reverts d4e9e574ea0b5d23598a317e68399584d229568b,
0187368cadea183e18c6d575a9d6b7f491a402af, and
4240cb02fda90ba11dfc0114201e42691132c6a9.
The services systemd-networkd, systemd-resolved, and systemd-timesyncd
enable DynamicUsers= and have bus interfaces. Unfortunately, these
has many problems now. Let us create the relevant users, at least,
tentatively.

Fixes #9503.

(cherry picked from commit 5b5d82615011b9827466b7cd5756da35627a1608)

Gbp-Pq: Name sysusers-tmpfiles-re-create-systemd-network-systemd-resol.patch

7 years agotest: fix networkd-test.py rate limiting and dynamic user
Martin Pitt [Mon, 2 Jul 2018 20:26:31 +0000 (22:26 +0200)]
test: fix networkd-test.py rate limiting and dynamic user

 - Reset systemd-networkd.service before each test run, to avoid running
   into restart limits.
 - Our networkd-test-router.service unit needs to run as root and thus
   can't use `User=`; but networkd still insists on the
   `systemd-network` system user to exist, so create it.

(cherry picked from commit c44c1b8ab5274c7cdb93d9a80c79bcddb503c235)

Gbp-Pq: Name test-fix-networkd-test.py-rate-limiting-and-dynamic-user.patch

7 years agotmpfiles: specify access mode for /run/systemd/netif
Yu Watanabe [Mon, 25 Jun 2018 05:56:49 +0000 (14:56 +0900)]
tmpfiles: specify access mode for /run/systemd/netif

This partially reverts 2af767729489f6baa98a2641b2007acab44ed353.
As the directories are certainly readable and not-writable by
non-privileged users.

(cherry picked from commit 400d8461381c5748a97fccb8a022a20f40063a7d)

Gbp-Pq: Name tmpfiles-specify-access-mode-for-run-systemd-netif.patch

7 years agobus-util: make log level lower in request_name_destroy_callback()
Yu Watanabe [Wed, 27 Jun 2018 12:20:55 +0000 (21:20 +0900)]
bus-util: make log level lower in request_name_destroy_callback()

Fixes #9442.

(cherry picked from commit 04e075b572b168a183cde29480dbb30d027d4fe7)

Gbp-Pq: Name bus-util-make-log-level-lower-in-request_name_destroy_cal.patch

7 years agobasic: add missing comma in raw_clone assembly for sparc
Mike Gilbert [Wed, 27 Jun 2018 14:36:50 +0000 (10:36 -0400)]
basic: add missing comma in raw_clone assembly for sparc

Fixes: 96f64eb5741b157f26a9089816fdd992e959792e
Closes: https://github.com/systemd/systemd/issues/9444
(cherry picked from commit 358248caa3eca525751694de7c34b16bb46d5a9c)

Gbp-Pq: Name basic-add-missing-comma-in-raw_clone-assembly-for-sparc.patch

7 years agosleep: fix one more printf format of a fiemap field
Filipe Brandenburger [Wed, 27 Jun 2018 16:19:33 +0000 (09:19 -0700)]
sleep: fix one more printf format of a fiemap field

Use PRIu64 constant to get the format right on LP-64 architectures,
cast to (uint64_t) to solve incompatibility of __u64.

This was missed in ad4bc3352285f467f4ffa03c3171b19fa0a8758d, so fix it
with this follow up.

(cherry picked from commit d7af62d52cd3b58c5fe7d410e907e01fed71c02e)

Gbp-Pq: Name sleep-fix-one-more-printf-format-of-a-fiemap-field.patch

7 years agotimesync: changes type of drift_freq to int64_t
Yu Watanabe [Sat, 23 Jun 2018 00:41:55 +0000 (09:41 +0900)]
timesync: changes type of drift_freq to int64_t

drift_freq is used for storing timex.freq, and is a 64bit integer.
To support x32 ABI, this changes the type of drift_freq to int64_t.

Fixes #9387.

(cherry picked from commit 75ca1621db4647a4d62d7873cd6715e28fe0f9fa)

Gbp-Pq: Name timesync-changes-type-of-drift_freq-to-int64_t.patch

7 years agosleep: fix printf format of fiemap fields
Filipe Brandenburger [Tue, 26 Jun 2018 16:43:49 +0000 (09:43 -0700)]
sleep: fix printf format of fiemap fields

Use PRIu64 and PRIu32 constants to also get the format right on LP-64
architectures.

For the 64-bit fields, we need a cast to (uint64_t), since __u64 is
defined as a `long long unsigned` and PRIu64 expects a `long unsigned`.
In practice, both are the same, so the cast should be OK.

(cherry picked from commit ad4bc3352285f467f4ffa03c3171b19fa0a8758d)

Gbp-Pq: Name sleep-fix-printf-format-of-fiemap-fields.patch

7 years agosystemd (239-9) unstable; urgency=medium
Michael Biebl [Wed, 12 Sep 2018 17:07:38 +0000 (18:07 +0100)]
systemd (239-9) unstable; urgency=medium

  * autopkgtest: Remove needs-recommends runtime restriction.
    This restriction has been deprecated and there are plans to remove it
    altogether. The tests pass withouth needs-recommends, so it seems safe
    to remove.
  * test: Use installed catalogs when test-catalog is not located at build
    dir.
    This makes it possible to run test-catalog as installed test, so we no
    longer need to mark it as EXFAIL in our root-unittests autopkgtest.
  * test: Use "systemd-runtest.env" to set $SYSTEMD_TEST_DATA and
    $SYSTEMD_CATALOG_DIR.
    This avoids embedding ABS_{SRC,BUILD}_DIR into libsystemd-shared.so and
    the test binaries and should make the build reproducible.
    (Closes: #908365)

[dgit import unpatched systemd 239-9]

7 years agoImport systemd_239-9.debian.tar.xz
Michael Biebl [Wed, 12 Sep 2018 17:07:38 +0000 (18:07 +0100)]
Import systemd_239-9.debian.tar.xz

[dgit import tarball systemd 239-9 systemd_239-9.debian.tar.xz]

7 years agoImport systemd_239.orig.tar.gz
Michael Biebl [Fri, 22 Jun 2018 22:18:08 +0000 (23:18 +0100)]
Import systemd_239.orig.tar.gz

[dgit import orig systemd_239.orig.tar.gz]