]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
4 years agonetworkd: minor refactoring 20109/head
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 09:40:16 +0000 (11:40 +0200)] 
networkd: minor refactoring

4 years agonetworkd: replace one trivial asprintf with xsprintf
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 09:40:00 +0000 (11:40 +0200)] 
networkd: replace one trivial asprintf with xsprintf

4 years agoshared/killall: replace one trivial asprintf with xsprintf
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 09:37:44 +0000 (11:37 +0200)] 
shared/killall: replace one trivial asprintf with xsprintf

4 years agotree-wide: do not use (void) asprintf
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 09:37:21 +0000 (11:37 +0200)] 
tree-wide: do not use (void) asprintf

asprintf(3) says that the pointer is "undefined" after a failed call.
In the current glibc implementation it is just NULL. In principle the
call could return a valid pointer with bad contents or something.

We have two styles of error handling: in a majority of cases we would
check the return value, but sometimes we used (void) and relied on the
pointer not being set. In practice both styles should be equivalent,
but gcc doesn't like the second one with -Wunused-result. (Though only
sometimes. E.g. on my F34 box I don't get the same warnings as in CI,
even though the compiler version is very similar and the compilation
options are the same…). It's also nice to be consistent in our code base.
So let's always use the first style of error checking.

4 years agobasic/time-util: indentation
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 13:21:22 +0000 (15:21 +0200)] 
basic/time-util: indentation

4 years agobasic/{time,format}-util: warn when format result is unused
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 13:16:15 +0000 (15:16 +0200)] 
basic/{time,format}-util: warn when format result is unused

Now that anonymous buffers are used in almost all cases, code which
does not use the return value is usually broken.

4 years agomeson: re-enable -Wunused-result with clang
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 13:13:00 +0000 (15:13 +0200)] 
meson: re-enable -Wunused-result with clang

We disabled it in f73fb7b742f294b6d2126afa16001bd2ff6ab461 in response to an
apparent gcc bug. It seems that depending on the combination of optimization
options, gcc still ignores (void). But this seems to work fine with clang, so
let's re-enable the warning conditionally.

4 years agoReplace format_bytes_cgroup_protection with FORMAT_BYTES_CGROUP_PROTECTION
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 08:22:03 +0000 (10:22 +0200)] 
Replace format_bytes_cgroup_protection with FORMAT_BYTES_CGROUP_PROTECTION

4 years agotree-wide: add FORMAT_BYTES_FULL()
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 08:17:16 +0000 (10:17 +0200)] 
tree-wide: add FORMAT_BYTES_FULL()

4 years agocgtop: use anonymous buffers for formatting of bytes and timespans
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 07:51:23 +0000 (09:51 +0200)] 
cgtop: use anonymous buffers for formatting of bytes and timespans

4 years agobasic/macro: make CONST_MAX(DECIMAL_STR_MAX(…), STRLEN(…)) possible
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 07:49:56 +0000 (09:49 +0200)] 
basic/macro: make CONST_MAX(DECIMAL_STR_MAX(…), STRLEN(…)) possible

When those two macros were used together in CONST_MAX(), gcc would complain
about a type mismatch. So either DECIMAL_STR_MAX() should be made size_t like
STRLEN(), or STRLEN() be made unsigned.

Since those macros are only usable on arguments of (small) fixed size, any type
should be fine (even char would work…). For buffer size specifications, both
size_t and unsigned are OK. But unsigned was used for DECIMAL_STR_MAX macros
and FORMAT_foo_MAX macros, making STRLEN the only exception, so let's adjust
STRLEN() to be unsigned too.

Also: I don't think this is currently used anywhere, but if any of those macros
were used as an argument to sprintf, size_t would require a cast. ("%*s"
requires an int/unsigned argument.)

4 years agoimport: use SYNTHETIC_ERRNO in one more place
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 07:14:22 +0000 (09:14 +0200)] 
import: use SYNTHETIC_ERRNO in one more place

4 years agotree-wide: add FORMAT_BYTES()
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 07:14:01 +0000 (09:14 +0200)] 
tree-wide: add FORMAT_BYTES()

4 years agoInline some iterator variables
Zbigniew Jędrzejewski-Szmek [Mon, 5 Jul 2021 19:56:39 +0000 (21:56 +0200)] 
Inline some iterator variables

4 years agotree-wide: add FORMAT_TIMESTAMP_STYLE()
Zbigniew Jędrzejewski-Szmek [Mon, 5 Jul 2021 19:41:59 +0000 (21:41 +0200)] 
tree-wide: add FORMAT_TIMESTAMP_STYLE()

4 years agoshared/format-table: allocate buffer of sufficient size
Zbigniew Jędrzejewski-Szmek [Mon, 5 Jul 2021 19:29:11 +0000 (21:29 +0200)] 
shared/format-table: allocate buffer of sufficient size

4 years agotree-wide: add FORMAT_TIMESTAMP_RELATIVE()
Zbigniew Jędrzejewski-Szmek [Thu, 1 Jul 2021 12:43:52 +0000 (12:43 +0000)] 
tree-wide: add FORMAT_TIMESTAMP_RELATIVE()

4 years agotree-wide: add FORMAT_TIMESPAN()
Zbigniew Jędrzejewski-Szmek [Thu, 1 Jul 2021 12:32:46 +0000 (14:32 +0200)] 
tree-wide: add FORMAT_TIMESPAN()

4 years agosd-journal: add FORMAT_TIMESTAMP_SAFE()
Zbigniew Jędrzejewski-Szmek [Thu, 1 Jul 2021 12:11:49 +0000 (14:11 +0200)] 
sd-journal: add FORMAT_TIMESTAMP_SAFE()

4 years agotree-wide: use FORMAT_TIMESTAMP()
Zbigniew Jędrzejewski-Szmek [Thu, 1 Jul 2021 12:11:30 +0000 (14:11 +0200)] 
tree-wide: use FORMAT_TIMESTAMP()

4 years agobasic/time-util: add FORMAT_TIMESTAMP
Zbigniew Jędrzejewski-Szmek [Thu, 1 Jul 2021 10:10:52 +0000 (10:10 +0000)] 
basic/time-util: add FORMAT_TIMESTAMP

This uses the same idea of an anonyous buffer as ETHER_ADDR_TO_STR().

4 years agotest-ether-addr-util: add a simple test that HW_ADDR_TO_STR works with nesting
Zbigniew Jędrzejewski-Szmek [Tue, 29 Jun 2021 13:27:12 +0000 (15:27 +0200)] 
test-ether-addr-util: add a simple test that HW_ADDR_TO_STR works with nesting

It seems to, but I was a bit incredulous… The comment is adjusted to match
the standard.

The trick with a temporary buffer is neat. I wasn't sure if it is valid, but
the standard says so. The test really tests that we are reading the rules right
and that the compiler doesn't do anythign strange or emit an unexpected
warning.

4 years agoMerge pull request #20166 from poettering/fsync-more
Yu Watanabe [Thu, 8 Jul 2021 22:32:01 +0000 (07:32 +0900)] 
Merge pull request #20166 from poettering/fsync-more

various tweaks to existing fsync() helpers, and some new apis

4 years agoMerge pull request #20168 from poettering/signal-util-tweak
Yu Watanabe [Thu, 8 Jul 2021 22:24:43 +0000 (07:24 +0900)] 
Merge pull request #20168 from poettering/signal-util-tweak

generalize SIGINT handling in copy.c

4 years agoMerge pull request #20167 from poettering/format-table-tweaks
Yu Watanabe [Thu, 8 Jul 2021 22:20:49 +0000 (07:20 +0900)] 
Merge pull request #20167 from poettering/format-table-tweaks

format-table: three new features

4 years agodirent-util: no need to bother with fstatat() for "." and ".." to figure out if these...
Lennart Poettering [Fri, 25 Jun 2021 21:47:02 +0000 (23:47 +0200)] 
dirent-util: no need to bother with fstatat() for "." and ".." to figure out if these are dirs

4 years agoblockdev-util: add fd-based APIs for getting backing block device for file
Lennart Poettering [Mon, 8 Mar 2021 22:48:21 +0000 (23:48 +0100)] 
blockdev-util: add fd-based APIs for getting backing block device for file

4 years agopath-util: make path_compare() accept NULL
Lennart Poettering [Thu, 17 Jun 2021 09:05:43 +0000 (11:05 +0200)] 
path-util: make path_compare() accept NULL

4 years agologind: allow binding different operation to reboot key long presses
Yegor Alexeyev [Fri, 11 Jun 2021 22:18:07 +0000 (01:18 +0300)] 
logind: allow binding different operation to reboot key long presses

4 years agoconf-files: rename return parameters ret_xyz
Lennart Poettering [Fri, 25 Jun 2021 21:46:46 +0000 (23:46 +0200)] 
conf-files: rename return parameters ret_xyz

4 years agoMerge pull request #20163 from poettering/repart-root-fix
Lennart Poettering [Thu, 8 Jul 2021 11:06:41 +0000 (13:06 +0200)] 
Merge pull request #20163 from poettering/repart-root-fix

repart: drop duplicate handling of /sysroot/ prefix

4 years agoMerge pull request #19995 from poettering/cred-tool
Lennart Poettering [Thu, 8 Jul 2021 10:59:59 +0000 (12:59 +0200)] 
Merge pull request #19995 from poettering/cred-tool

Add support for encrypted credentials

4 years agorepart: when we can't fit the partitions in, report needed disk size current disk...
Lennart Poettering [Fri, 2 Jul 2021 13:33:35 +0000 (15:33 +0200)] 
repart: when we can't fit the partitions in, report needed disk size current disk size

This improves error output in repart if we can't fit the defined
partitions into the disk image. With this change we'll now show not only
the disk size we need (as before), but also the current one, as well as
the largest free area on disk.

This should make it a bit easier to debug disk space issues that repart
runs into.

4 years agoMount encrypted swap partitions via gpt-auto
Hugo Osvaldo Barrera [Sun, 4 Jul 2021 14:30:20 +0000 (16:30 +0200)] 
Mount encrypted swap partitions via gpt-auto

If the auto-discovered swap partition is LUKS encrypted, decrypt it
automatically.

This aligns with the Discoverable Partitions Specification, though I've
also updated it to explicitly mention that LUKS is now supported here.

Since systemd retries any key already in the kernel keyring, if the swap
partition has the same passphrase as the root partition, the user won't
be prompted a second time for a second passphrase.

See https://github.com/systemd/systemd/issues/20019

4 years agocopy: port over to pop_pending_signal() 20168/head
Lennart Poettering [Thu, 8 Jul 2021 08:38:09 +0000 (10:38 +0200)] 
copy: port over to pop_pending_signal()

4 years agosignal-util: add helper pop_pending_signal()
Lennart Poettering [Thu, 25 Feb 2021 11:11:59 +0000 (12:11 +0100)] 
signal-util: add helper pop_pending_signal()

4 years agoformat-table: teach table_hide_column_from_display() to accept multiple arguments 20167/head
Lennart Poettering [Thu, 4 Mar 2021 21:07:46 +0000 (22:07 +0100)] 
format-table: teach table_hide_column_from_display() to accept multiple arguments

In case we want to hide multiple columns in one go, make that easy.

4 years agoformat-table: add cell type for outputting 64bit values in hex
Lennart Poettering [Wed, 6 Jan 2021 14:51:35 +0000 (15:51 +0100)] 
format-table: add cell type for outputting 64bit values in hex

4 years agoformat-table: add cell type for "mode_t" values
Lennart Poettering [Wed, 6 Jan 2021 14:51:05 +0000 (15:51 +0100)] 
format-table: add cell type for "mode_t" values

4 years agofs-util: teach syncfs_path() handle with empty path argument 20166/head
Lennart Poettering [Wed, 3 Feb 2021 20:06:09 +0000 (21:06 +0100)] 
fs-util: teach syncfs_path() handle with empty path argument

4 years agofs-util: add fsync_path_and_parent_at()
Lennart Poettering [Wed, 3 Feb 2021 19:53:32 +0000 (20:53 +0100)] 
fs-util: add fsync_path_and_parent_at()

4 years agofs-util: add API for fsync()ing parent dir of path
Lennart Poettering [Mon, 1 Feb 2021 16:12:12 +0000 (17:12 +0100)] 
fs-util: add API for fsync()ing parent dir of path

4 years agofs-util: make sure fsync_directory_of_file() does something useful on O_PATH fds
Lennart Poettering [Tue, 15 Jun 2021 13:57:18 +0000 (15:57 +0200)] 
fs-util: make sure fsync_directory_of_file() does something useful on O_PATH fds

When handling O_PATH fds it's safe to use the parent of
/proc/self/fd/<fd> for any kind of inode. Hence do so.

4 years agorepart: drop spurious whitespace 20163/head
Lennart Poettering [Wed, 7 Jul 2021 13:33:43 +0000 (15:33 +0200)] 
repart: drop spurious whitespace

4 years agorepart: don't prefix /sysroot/ twice
Lennart Poettering [Mon, 5 Jul 2021 12:48:16 +0000 (14:48 +0200)] 
repart: don't prefix /sysroot/ twice

For some reason I first commited
a73b2ad041469bf20e3771725dcf70069451e116 and then
8f47e32a3eefa1a366510b5d752875dd56bd7708. But the latter makes the
former obsolete and causes us to suffix paths twice.

Let's hence revert a73b2ad041469bf20e3771725dcf70069451e116 and stick to
8f47e32a3eefa1a366510b5d752875dd56bd7708 as the latter is the ore
generic solution of the two.

4 years agoupdate TODO 19995/head
Lennart Poettering [Mon, 21 Jun 2021 09:22:26 +0000 (11:22 +0200)] 
update TODO

4 years agoman: document the new (Load|Set)CredentialEncrypted= settings
Lennart Poettering [Wed, 23 Jun 2021 16:15:02 +0000 (18:15 +0200)] 
man: document the new (Load|Set)CredentialEncrypted= settings

4 years agoman: add man page for "systemd-creds"
Lennart Poettering [Wed, 23 Jun 2021 07:41:49 +0000 (09:41 +0200)] 
man: add man page for "systemd-creds"

4 years agotest: extend credentials test to cover encrypted credentials
Lennart Poettering [Thu, 24 Jun 2021 08:28:28 +0000 (10:28 +0200)] 
test: extend credentials test to cover encrypted credentials

4 years agopid1: add support for encrypted credentials
Lennart Poettering [Mon, 21 Jun 2021 12:19:07 +0000 (14:19 +0200)] 
pid1: add support for encrypted credentials

4 years agocreds: add a new tool for listing/showing/encrypting/decrypting credentials
Lennart Poettering [Mon, 21 Jun 2021 15:54:09 +0000 (17:54 +0200)] 
creds: add a new tool for listing/showing/encrypting/decrypting credentials

4 years agocreds-util: add infra for encrypting/decrypting credentials
Lennart Poettering [Mon, 21 Jun 2021 09:19:20 +0000 (11:19 +0200)] 
creds-util: add infra for encrypting/decrypting credentials

4 years agoutil: move src/basic/creds-util.[ch] → src/shared/
Lennart Poettering [Mon, 21 Jun 2021 15:58:58 +0000 (17:58 +0200)] 
util: move src/basic/creds-util.[ch] → src/shared/

This is preparation for adding encryption support to the credentials
logic, and we thus would like to add more deps. Let's hence move things
from src/basic/ to src/shared, so that we can rely on the OpenSSL
utilities already in src/shared.

4 years agohexdecoct: optionally, line break base64 encoded data
Lennart Poettering [Tue, 22 Jun 2021 17:43:37 +0000 (19:43 +0200)] 
hexdecoct: optionally, line break base64 encoded data

4 years agofileio: optionally allow interpreting file size as limit
Lennart Poettering [Mon, 21 Jun 2021 12:18:04 +0000 (14:18 +0200)] 
fileio: optionally allow interpreting file size as limit

4 years agochattr-util: generalize chattr manipulation for files with secrets from journalctl
Lennart Poettering [Mon, 21 Jun 2021 09:17:10 +0000 (11:17 +0200)] 
chattr-util: generalize chattr manipulation for files with secrets from journalctl

This moves the code for setting chattr file attributes appropriate for
"secrets" files from journalctl into generic chattr-util.c code so that
we can use it elsewhere.

Also, let's reuse the "bitwise" logic already implemented in the chattr
code, instead of doing it again.

4 years agofs-util: add fd-based flavour of path_is_encrypted()
Lennart Poettering [Mon, 21 Jun 2021 09:18:39 +0000 (11:18 +0200)] 
fs-util: add fd-based flavour of path_is_encrypted()

4 years agoblockdev-util: add fd-based flavour of get_block_device()
Lennart Poettering [Mon, 21 Jun 2021 08:55:36 +0000 (10:55 +0200)] 
blockdev-util: add fd-based flavour of get_block_device()

4 years agosd-id128: make sure sd_id128_get_machine_app_specific() logic also works without...
Lennart Poettering [Thu, 24 Jun 2021 11:57:16 +0000 (13:57 +0200)] 
sd-id128: make sure sd_id128_get_machine_app_specific() logic also works without "khash"

So, as it turns out AF_ALG is turned off in a lot of kernels/container
environments, including our CI. Hence, if we link against OpenSSL
anyway, let's just use that client side. It's also faster.

One of those days we should drop the khash code, and ust use OpenSSL,
once the licensing issues are resolved.

4 years agohostnamed: correct variable with errno in fallback_chassis
Jan Palus [Wed, 7 Jul 2021 22:23:21 +0000 (00:23 +0200)] 
hostnamed: correct variable with errno in fallback_chassis

fixes assertion failure on arm:

systemd-hostnamed[642]: Assertion '(_error) != 0' failed at src/hostname/hostnamed.c:207, function fallback_chassis(). Aborting.

4 years agoNEWS: finalize for v249 v249
Luca Boccassi [Wed, 7 Jul 2021 16:32:01 +0000 (17:32 +0100)] 
NEWS: finalize for v249

4 years agoprocess-util: explicitly handle processes lacking parents in get_process_ppid()
Lennart Poettering [Wed, 7 Jul 2021 13:57:51 +0000 (15:57 +0200)] 
process-util: explicitly handle processes lacking parents in get_process_ppid()

Let's make sure we signal out-of-band via an error message if a process
doesn't have a parent process whose PID we could return. Otherwise we'll
too likely hide errors, as we return an invalid PID 0, which in other
contexts has special meaning (i.e. usually "myself").

Replaces: #20153

This is based on work by @dtardon, but goes a different route, by
ensuring we propagate a proper error in this case.

This modernizes the function in question a bit in other ways, i.e.
renames stuff and makes the return parameter optional.

4 years agoMerge pull request #20145 from bluca/prep
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 13:28:15 +0000 (15:28 +0200)] 
Merge pull request #20145 from bluca/prep

Preparations for v249

4 years agoRevert "Add systemd-resolve backwards compatibility section to resolvectl docs"
Lennart Poettering [Wed, 30 Jun 2021 16:45:32 +0000 (18:45 +0200)] 
Revert "Add systemd-resolve backwards compatibility section to resolvectl docs"

This reverts commit 9fcfc0470df856c870dcfc6df78bfbc714da6bd2.

4 years agomeson: install the right README file in modprobe.d
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 10:39:33 +0000 (12:39 +0200)] 
meson: install the right README file in modprobe.d

We put the "global" README file there. Introduced
in d83e90c73cf25a839f5e60f355baa0d38364ff41.

4 years agobasic/time-util: fix errno name
Zbigniew Jędrzejewski-Szmek [Fri, 2 Jul 2021 08:53:40 +0000 (10:53 +0200)] 
basic/time-util: fix errno name

Fixup for bdaeafea5dff32ccb479ecf8fe0a3173c995fbf5. This was supposed to be
pushed in an updated version, but I forgot to stage the change.

4 years agoman: fix systemd-sleep.conf.xml whitespace 20145/head
Luca Boccassi [Wed, 7 Jul 2021 09:32:35 +0000 (10:32 +0100)] 
man: fix systemd-sleep.conf.xml whitespace

Follow-up for 33f899bd479534b0a920ce427cdf06739028f5ab

4 years agoNEWS: note new user-visible change, drop 'in spe'
Luca Boccassi [Tue, 6 Jul 2021 21:53:49 +0000 (22:53 +0100)] 
NEWS: note new user-visible change, drop 'in spe'

4 years agoNEWS: update contributors list
Luca Boccassi [Tue, 6 Jul 2021 21:45:02 +0000 (22:45 +0100)] 
NEWS: update contributors list

Added Alexey Rubtsov, Icenowy Zheng, milaq, qhill, Trent Piepho,
Hamish Moffatt

4 years agohwdb: run ninja -C build update-hwdb update-hwdb-autosuspend
Luca Boccassi [Tue, 6 Jul 2021 21:36:04 +0000 (22:36 +0100)] 
hwdb: run ninja -C build update-hwdb update-hwdb-autosuspend

4 years agoClarify the behaviour of suspend-then-sleep mode in the manual pages.
Hamish Moffatt [Mon, 5 Jul 2021 09:06:15 +0000 (19:06 +1000)] 
Clarify the behaviour of suspend-then-sleep mode in the manual pages.

Fixes #20125.

4 years agowait-online: fix typo
Yu Watanabe [Tue, 6 Jul 2021 23:42:15 +0000 (08:42 +0900)] 
wait-online: fix typo

4 years agoNEWS: add old entry about Type=ether
Zbigniew Jędrzejewski-Szmek [Wed, 7 Jul 2021 07:26:12 +0000 (09:26 +0200)] 
NEWS: add old entry about Type=ether

Apparently it's an important feature for some folks:
https://utcc.utoronto.ca/\~cks/space/blog/linux/NetworkdMACMatchesWidely.
I think we considered this more of a bugfix, but it's somewhere on the border.
Let's add this it's easier to discover.

4 years agooomd: don't collect candidate stats on every interval
Anita Zhang [Tue, 6 Jul 2021 09:46:13 +0000 (02:46 -0700)] 
oomd: don't collect candidate stats on every interval

cb13961ada52c1b27f6d6c2c6e37a2901f01ed30 updated the oomd logic to
collect candidate data when a kill was about to happen. However there
was still a call left over in the main loop to collect candidate data on
every interval. Remove this since it's unneeded.

Fixes #20122

4 years agotmpfiles: fix borked assert
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 14:41:28 +0000 (16:41 +0200)] 
tmpfiles: fix borked assert

It seems that fd_set_perms() is always called after checking that
fd >= 0 (also when called as action() in glob_item_recursively()),
so it seems that the assertion really came from fd==0.

Fixes #20140.

Also three other similar cases are updated.

4 years agoman: correct return value of sd_bus_open_with_description
Luca Boccassi [Tue, 6 Jul 2021 11:55:30 +0000 (12:55 +0100)] 
man: correct return value of sd_bus_open_with_description

Since https://github.com/systemd/systemd/commit/f4b2933ee7890e5d414ab266d8586f19027a2bd9
if a description is not set, sd_bus_open_with_description returns -ENXIO, but the
documnetation stated that it returned successfully with a NULL string.

4 years agoMerge pull request #20092 from fbuihuu/tag-xgi-z7z9-graphic-chip-as-master-of-seat...
Zbigniew Jędrzejewski-Szmek [Tue, 6 Jul 2021 10:52:53 +0000 (12:52 +0200)] 
Merge pull request #20092 from fbuihuu/tag-xgi-z7z9-graphic-chip-as-master-of-seat-take2

 login: XGI Z7/Z9 (XG20 core) graphic chip requires master-of-seat to…

4 years agoupdate TODO
Lennart Poettering [Mon, 5 Jul 2021 13:07:12 +0000 (15:07 +0200)] 
update TODO

4 years agologin: use a hwdb entry for tagging Parallels' fb devices with 'master-of-seat' tag 20092/head
Franck Bui [Fri, 2 Jul 2021 12:43:50 +0000 (14:43 +0200)] 
login: use a hwdb entry for tagging Parallels' fb devices with 'master-of-seat' tag

This assumes that (vesa)fb driver is used as fallback.

4 years agologin: use a hwdb entry for tagging HyperV's fb devices with 'master-of-seat' tag
Franck Bui [Thu, 1 Jul 2021 19:34:34 +0000 (21:34 +0200)] 
login: use a hwdb entry for tagging HyperV's fb devices with 'master-of-seat' tag

Graphic devices that don't do DRM and relies on fb devices are now listed in
hwdb. Dedicated udev rules are no more needed.

4 years agologin: XGI Z7/Z9 (XG20 core) graphic chip requires master-of-seat to be set
Franck Bui [Thu, 1 Jul 2021 10:30:29 +0000 (12:30 +0200)] 
login: XGI Z7/Z9 (XG20 core) graphic chip requires master-of-seat to be set

This graphic chip doesn't have a DRM driver and fall back to vesa-framebuffer
driver.

Without this patch, users of such chip suddenly see their GUI broken without
any indication or reason of what happened (no error message). Hence this
regression is near to impossible to troubleshoot for end users. Such case was
reported https://bugzilla.opensuse.org/show_bug.cgi?id=1187154.

Rather than adding another exception in the udev rules to deal with such
HWs, they instead get their own hwdb file '60-seat.hwdb'.

4 years agohwdb: add resolution override for Pinebook Pro touchpad
Icenowy Zheng [Sun, 4 Jul 2021 09:20:25 +0000 (17:20 +0800)] 
hwdb: add resolution override for Pinebook Pro touchpad

The Pinebook Pro touchpad returns a resolution data that is 2 times of
the real value, which makes libinput think the touchpad is only 1/4 the
real size.

Add a resolution override value for it, to allow libinput to calculate
the distance moved on it correctly.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
4 years agoMerge pull request #20098 from milaq/hwdb_logitech_additions
Yu Watanabe [Sun, 4 Jul 2021 23:10:11 +0000 (08:10 +0900)] 
Merge pull request #20098 from milaq/hwdb_logitech_additions

hwdb: Additions and fixes to Logitech mice

4 years agotest: unify handling of boolean values
Frantisek Sumsal [Sun, 4 Jul 2021 10:21:23 +0000 (12:21 +0200)] 
test: unify handling of boolean values

Let's unify handling of the boolean values throughout the test-functions
code, since we use 0/1, true/false, and yes/no almost randomly in many
places, so picking the right values during CI configuration can be a real
pain.

4 years agoTODO: reorder entries by component
Luca Boccassi [Sat, 3 Jul 2021 15:26:21 +0000 (16:26 +0100)] 
TODO: reorder entries by component

Roughly reorder entries, without rewording anything, by component, so
that there's some structure to the text.
Only 3 lines are deleted: an empty line, 'External:' at the bottom since
it was merged with 'External:' at the top, and the weird last line:
'String is not UTF-8 clean, ignoring assignment' which was likely an error
from some editor

4 years agomkosi: initialize /usr/lib/os-release' IMAGE_ID + IMAGE_VERSION fields from build
Lennart Poettering [Fri, 2 Jul 2021 12:59:58 +0000 (14:59 +0200)] 
mkosi: initialize /usr/lib/os-release' IMAGE_ID + IMAGE_VERSION fields from build

If it's passed into the build, use it, so that the mkosi build version
is propagated into the image itself.

4 years agotest: optionally, only save test journal for failing tests
Dan Streetman [Fri, 2 Jul 2021 14:38:14 +0000 (10:38 -0400)] 
test: optionally, only save test journal for failing tests

Saving the journal for passing tests creates a huge amount of unneeded
data stored for each full test run. Add a env var to allow saving the
journal only for failed tests.

4 years agoMerge pull request #20108 from yuwata/network-fix-ndisc-and-dhcp6-issue-20050
Zbigniew Jędrzejewski-Szmek [Sat, 3 Jul 2021 07:17:29 +0000 (09:17 +0200)] 
Merge pull request #20108 from yuwata/network-fix-ndisc-and-dhcp6-issue-20050

network: remove old addresses and routes after new ones are configured

4 years agohashmap: make sure hashmap_get_strv()+set_get_strv() work with a NULL object
Lennart Poettering [Fri, 2 Jul 2021 13:15:17 +0000 (15:15 +0200)] 
hashmap: make sure hashmap_get_strv()+set_get_strv() work with a NULL object

Before we invoke n_entries() we need to check for non-NULL here, like in
all other calls to the helper function. Otherwise we'll crash when
invoked with a NULL object, which we usually consider equivalent to an
empty one though.

4 years agounits: correct description of final.target
qhill [Fri, 2 Jul 2021 13:13:13 +0000 (14:13 +0100)] 
units: correct description of final.target

This was updated incorrectly in https://github.com/systemd/systemd/pull/20058/commits/4fd3fc66396026f81fd5b27746f2faf8a9a7b9ee.  As https://github.com/systemd/systemd/blob/main/man/systemd.special.xml decribes, this unit is about shutdown rather than boot.

4 years agoudev: when booting without root= specification, and searching a root partition actual...
Lennart Poettering [Fri, 2 Jul 2021 13:35:39 +0000 (15:35 +0200)] 
udev: when booting without root= specification, and searching a root partition actually do the version comparison magic

Since 08fe0a53869f27a9bfbc5bd31f27058145d46745 when dissecting a disk
image we'll automatically pick the "newest" root fs if multiple exist,
by comparing GPT partition labels. This works in systemd-nspawn,
systemd-dissect, systemd-tmpfiles --image, … and so on. It also works
already in systemd-gpt-auto-generator. However, there was one missing
place: in the logic that automatically finds a root fs in case no root=
was specified on the kernel logic at all. This logic doesn't use the
dissection logic, but a much simpler one.

Let's fill the gap, and implement it there too.

4 years agocoredumpctl: show --help text if "coredumpctl help" is called
Lennart Poettering [Fri, 2 Jul 2021 13:30:43 +0000 (15:30 +0200)] 
coredumpctl: show --help text if "coredumpctl help" is called

Most of our programs that take "verbs" make the "help" verb either
equivalent to passing the --help switch (or at least print a message
redirecting the user to that switch). Do so in coredumpctl too, in order
to minimize surprises.

4 years agoudev: Fix by-uuid symlink for ubifs volumes
Trent Piepho [Thu, 1 Jul 2021 19:19:57 +0000 (12:19 -0700)] 
udev: Fix by-uuid symlink for ubifs volumes

ubifs volumes have a UUID and the built-in blkid is able to determine
it.  The disk/by-uuid symlink isn't created because ubifs volumes are
not on block devices but on SUBSYSTEM="ubi" devices.  See #20071.

Allow ubi subsystem devices to be processed by the persistent storage
rules too.  The kernel device name matching already allows ubi* to pass.
The existing rules are sufficient to create the link.

The links look like other by-uuid symlinks, for example:
/dev/disk/by-uuid/9a136158-585b-4ba4-9b70-cbaf2cf78a1c -> ../../ubi0_1

4 years agonetwork: fix overflow issue in address lifetime calculation 20108/head
Yu Watanabe [Fri, 2 Jul 2021 13:26:04 +0000 (22:26 +0900)] 
network: fix overflow issue in address lifetime calculation

Fixes another issue reported in #20050. See
https://github.com/systemd/systemd/issues/20050#issuecomment-872967337.

4 years agonetwork: drop old dhcp6 addresses or routes after new ones are configured
Yu Watanabe [Fri, 2 Jul 2021 11:19:17 +0000 (20:19 +0900)] 
network: drop old dhcp6 addresses or routes after new ones are configured

Fixes the issue similar to #20050 but for DHCP6.

4 years agonetwork: drop old ndisc configurations after new ones are configured
Yu Watanabe [Fri, 2 Jul 2021 11:15:10 +0000 (20:15 +0900)] 
network: drop old ndisc configurations after new ones are configured

Previously, `ndisc_remove_old_one()` checked `ndisc_{addresses,routes}_configured`
flags, but they are not unset when all addresses or routes are already
assigned.
After the request queue is implemented, the address or route requests
are not processed within the same event of ndisc handler is called, but
will processed later when they are ready. So, calling `ndisc_remove_old()`
in the event of ndisc handler will remove all addresses and routes
previously assigned even they are requested to be updated.

This makes `ndisc_remove_old()` do nothing when there exist some
requests to configure addresses and routes, thus previously assigned
addresses and routes are kept until all requests are processed.

Fixes #20050.

4 years agonetwork: fix log message
Yu Watanabe [Fri, 2 Jul 2021 11:13:32 +0000 (20:13 +0900)] 
network: fix log message

4 years agowait-online: improve timeout log message
Lennart Poettering [Fri, 2 Jul 2021 07:53:16 +0000 (09:53 +0200)] 
wait-online: improve timeout log message

The time-out when waiting to reach the online state is a pretty
regularly seen error, let's print an explicit log message for it. The
previous "Event loop failed: timed out" message is a bit too low-level I
think for regular users (as event loops are a developer's concept, not a
user's, really).

Note that outputting low-level error messages is generally actually OK I
think — for unexpected errors, but this timeout is a pretty expected one,
directly configurable by the user, hence output something friendly.

4 years agoparse-socket-bind-item: fix typo in comment
Yu Watanabe [Fri, 2 Jul 2021 11:49:40 +0000 (20:49 +0900)] 
parse-socket-bind-item: fix typo in comment

This also adds a blank line after each function declaration to follow our
coding style.

4 years agopo: Translated using Weblate (Russian)
Alexey Rubtsov [Fri, 2 Jul 2021 09:04:21 +0000 (11:04 +0200)] 
po: Translated using Weblate (Russian)

Currently translated at 100.0% (189 of 189 strings)

Co-authored-by: Alexey Rubtsov <rushills@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/master/ru/
Translation: systemd/main