| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
We are basically already there, just need to add MONOTONIC_USEC= to the
RELOADING=1 message, and make sure the message is generated in really
all cases.
|
| |
|
|
|
|
|
|
|
|
| |
And send READY=1 again when we are done with it.
We do this not only for "daemon-reload" but also for "daemon-reexec" and
"switch-root", since from the perspective of an encapsulating service
manager these three operations are not that different.
|
| |
|
|
|
|
| |
Fixes: #6162
|
| |
|
|\
| |
| | |
Fix one compile-time conditional and refactor SD_BOOT definition
|
| |
| |
| |
| |
| |
| |
| | |
We converted to not using #ifdef for most of our defines because the syntax is
nicer and we are protected against typos and can set -Werror=undef. Let's do
the same for SD_BOOT. The define is nicely hidden in build.h for normal builds,
and for EFI builds we were already setting SD_BOOT on the commandline.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Our HAVE_* variables are defined to 0 or 1, so '#if defined(HAVE_*)' is always true.
The variable is not defined when compiling for EFI though, so we need the
additional guard.
Fixup for 3f92dc2fd4070b213e6bc85263a9bef06ec9a486.
(I don't want to do something like add -DHAVE_EXPLICIT_BZERO=0 to the commandline
in src/efi/boot/meson.build, because this quite verbose. Our compilation commandlines
are very long already. Let's instead keep this localized in this one spot in the
source file.)x
|
| |
| |
| |
| |
| | |
Honor $KERNEL_INSTALL_CONF_ROOT for reading config files, as
kernel-install does.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Man, I royally screwed this one up! 😳
Fixes: #25998
|
| |
| |
| |
| | |
Fixup for 4f57f77267610388139272d9ab9ee64dd78e9720.
|
|\ \
| |/
|/| |
journal: enforce strict consistency for realtime timestamps on write
|
| |
| |
| |
| |
| | |
-EREMCHG was introduced to denote a clock rollback detection error.
Handle this in managed_journal_file_open_reliably.
|
| |
| |
| |
| |
| | |
-EREMCHG on write is now used to denote clock rollback conditions
detected during journal write.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Ensure all realtime timestamps in a journal file are strictly
ordered on write as a defense-in-depth measure. All known callers of
journal_file_append_entry and journal_file_copy_entry, which call this
function, should be able to handle the error by rotating the journal.
This is especially helpful for systems with RTC local time enabled,
where all log entries from initramfs might be recorded as several hours
later than it actually is, which won't get caught by journald during log
flushing. In those cases, the resulting inconsistency can cause libsystemd
to loop infinitely through journal files as observed in
`abrt-dump-journal-oops`.
|
| |
| |
| |
| | |
In preparation for plugin support
|
| |
| |
| |
| | |
Follow-up for b293bb23162534e0260ed07357c2478655541166.
|
| |
| |
| |
| |
| | |
Dell would like to disable screen rotation for the platform eternally.
Mark the aceel sensor location base to disable it.
|
| | |
|
|\ \
| | |
| | | |
udev,pid1: gracefully handle failure in renaming network interface
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
When udevd failed to process the device, SYSTEMD_ALIAS or any other
properties may contain invalid values. Let's refuse to handle the uevent.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Otherwise, invalid sysname or properties may be broadcast to udev
listeners.
|
| | |
| | |
| | |
| | | |
The function is used only by udevd.
|
| | |
| | |
| | |
| | | |
No functional change, just refactoring.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Otherwise, when a new syspath is assigned to the sd-device object,
sd_device_get_sysname() or _sysnum() will provide an outdated device
name or number.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Let's propagate the actual error code up, as we usual do.
Inspired by: #25168
|
|\ \ \
| | | |
| | | | |
Fix build with the latest libcurl
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
CURLOPT_PROTOCOLS [0] was deprecated in libcurl 7.85.0 with
CURLOPT_PROTOCOLS_STR [1] as a replacement, causing build warnings/errors:
../build/src/import/curl-util.c: In function ‘curl_glue_make’:
../build/src/import/curl-util.c:255:9: error: ‘CURLOPT_PROTOCOLS’ is deprecated: since 7.85.0. Use CURLOPT_PROTOCOLS_STR [-Werror=deprecated-declarations]
255 | if (curl_easy_setopt(c, CURLOPT_PROTOCOLS, CURLPROTO_HTTP|CURLPROTO_HTTPS|CURLPROTO_FILE) != CURLE_OK)
| ^~
In file included from ../build/src/import/curl-util.h:4,
from ../build/src/import/curl-util.c:6:
/usr/include/curl/curl.h:1749:3: note: declared here
1749 | CURLOPTDEPRECATED(CURLOPT_PROTOCOLS, CURLOPTTYPE_LONG, 181,
| ^~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Since there's no grace period between the two symbols, let's resort
to a light if-def-ery to resolve this.
[0] https://curl.se/libcurl/c/CURLOPT_PROTOCOLS.html
[1] https://curl.se/libcurl/c/CURLOPT_PROTOCOLS_STR.html
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
CURLINFO_PROTOCOL has been deprecated in curl 7.85.0 causing compilation
warnings/errors:
../build/src/import/pull-job.c: In function ‘pull_job_curl_on_finished’:
../build/src/import/pull-job.c:142:9: error: ‘CURLINFO_PROTOCOL’ is deprecated: since 7.85.0. Use CURLINFO_SCHEME [-Werror=deprecated-declarations]
142 | code = curl_easy_getinfo(curl, CURLINFO_PROTOCOL, &protocol);
| ^~~~
In file included from ../build/src/import/curl-util.h:4,
from ../build/src/import/pull-job.h:6,
from ../build/src/import/pull-common.h:7,
from ../build/src/import/pull-job.c:16:
/usr/include/curl/curl.h:2896:3: note: declared here
2896 | CURLINFO_PROTOCOL CURL_DEPRECATED(7.85.0, "Use CURLINFO_SCHEME")
| ^~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Since both CURLINFO_SCHEME and CURLINFO_PROTOCOL were introduced in
the same curl version (7.52.0 [0][1]) we don't have to worry about
backwards compatibility.
[0] https://curl.se/libcurl/c/CURLINFO_SCHEME.html
[1] https://curl.se/libcurl/c/CURLINFO_PROTOCOL.html
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This erase_obj() machinery looks like voodoo and creates an awful lot of
noise as soon as we get back to building with -O0. We can do this in a
more simple way by introducing a struct that holds the information we
need on cleanup. When building with optimization enabled, all this gets
inlined and the eraser vanishes.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Prompted by:
https://lists.freedesktop.org/archives/systemd-devel/2023-January/048714.html
|
|\ \ \
| | | |
| | | | |
Coverity fixes
|
| | | |
| | | |
| | | |
| | | | |
Fixes CID#1502330.
|
| | | | |
|
| | | | |
|
| |/ /
| | |
| | |
| | | |
Fixes CID#1501687.
|
|/ /
| |
| |
| | |
It says remove in 2023; happy to oblige.
|
| |
| |
| |
| |
| | |
Explicitly set __attribute__ ((noinline)) so that the compiler does not
attempt to inline expand_to_usable, even with LTO.
|
|\ \
| | |
| | | |
pid1: rework service_arm_timer() to optionally take a relative time v…
|
| | |
| | |
| | |
| | | |
In most cases this is actually what we want, hence simplify this case.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Let's pass USEC_INFINITY from sd_event_source_set_time_relative() to
sd_event_source_set_time() instead of raising EOVERFLOW.
We should raise EOVERFLOW only if your addition fails, but not if the
input already is USEC_INFINITY, since it's an entirely valid operation
to have an infinite time-out, and we should support that.
|
|\ \ \
| | | |
| | | | |
EmergencyAction parsing fix
|