Commit Graph
56455 Commits
Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek 5bb309722d Merge pull request #22414 from yuwata/resolve-synthesize-empty-domain-follow-up
resolve: follow-up for synthesizing empty name
2022-02-23 09:10:49 +01:00
Peter Hutterer 8ac9ec4d5c udev-builtin-input_id: don't label absolute mice as pointing sticks
The Getac UX10 tablet exposes a "CUST0000:00 0EEF:C002 Mouse" device
with BTN_LEFT/RIGHT and ABS_X/Y on the i2c bus. This causes the builtin
to incorrectly label it as pointing stick (all i2c mice are
tagged as ID_INPUT_POINTING_STICK, see 3d7ac1c655).

Fix this by adding a separate variable for absolute pointing
devices like the VMmouse USB mouse or this Getac tablet - this way we
skip the pointing stick check.

See https://gitlab.freedesktop.org/libinput/libinput/-/issues/743
for recordings.
2022-02-23 09:03:21 +01:00
Zbigniew Jędrzejewski-Szmek f2acaf39c1 Merge pull request #22600 from poettering/timestamp_is_set-more
make more use of timestamp_is_set()
2022-02-23 08:59:49 +01:00
Yu Watanabe 30fa3aa1fa resolve: synthesize empty domain only when A and/or AAAA key is requested
Follow-up for 3b2ac14ac4 (#22231).

Before this commit.
---
$ dig -t SRV '.'

; <<>> DiG 9.16.24-RH <<>> -t SRV .
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16836
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;.				IN	SRV

;; Query time: 1 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Feb 04 12:01:09 JST 2022
;; MSG SIZE  rcvd: 28
---

After this commit.
---
$ dig -t SRV '.'

; <<>> DiG 9.16.24-RH <<>> -t SRV .
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19861
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;.				IN	SRV

;; AUTHORITY SECTION:
.			86394	IN	SOA	a.root-servers.net. nstld.verisign-grs.com. 2022020302 1800 900 604800 86400

;; Query time: 20 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Feb 04 12:00:12 JST 2022
;; MSG SIZE  rcvd: 103
---

Fixes #22401.
2022-02-23 07:53:57 +09:00
Yu Watanabe 176a9a2cca resolve: make dns_scope_good_domain() take DnsQuery* 2022-02-23 07:53:57 +09:00
Yu Watanabe 830f50ab1e resolve: drop never matched condition
As dns_scope_good_domain() does not return negative errno.
2022-02-23 07:53:53 +09:00
Luca Boccassi a549442fff Merge pull request #22582 from medhefgo/boot-input
boot: Minor input fixes
2022-02-22 22:11:44 +00:00
Luca Boccassi 6ccc08954e Merge pull request #19970 from curtistklein/watchdog-pretimeout-merge
watchdog: Add watchdog pretimeout support
2022-02-22 22:08:09 +00:00
Yu Watanabe 6e4d122ad1 unit: escape %
Fixes #22601.
2022-02-23 06:54:54 +09:00
Lennart Poettering b547838000 units: drop After=systemd-networkd.service from systemd-resolved.service
This ordering existed since resolved was first created, but there should
not be any need to order the two services against each other, as
resolved should be able to pick up networkd DNS metadata either way (as
it works with inotify in /run).

Let's drop this hence, and not cargo-cult this to eternity

Also see: https://github.com/systemd/systemd/pull/22389#issuecomment-1045978403
2022-02-23 06:52:39 +09:00
Yu Watanabe 05d8ad0f85 Merge pull request #22596 from yuwata/test-fix-fd-leaks
test: fix fd leaks
2022-02-23 06:51:06 +09:00
Lennart Poettering 0da36375eb tree-wide: use timestamp_is_set() more 2022-02-22 22:49:40 +01:00
Lennart PoetteringandFrantisek Sumsal ec93eb48f2 coccinelle: automatically look for timestamp_is_set candidates
Based on @mrc0mmand's Coccinelle skills, not mine. All credit is his.

Co-authored-by: Frantisek Sumsal <frantisek@sumsal.cz>
2022-02-22 22:47:12 +01:00
Zbigniew Jędrzejewski-Szmek cab4ed0f4a Merge pull request #22592 from yuwata/test-oomd-util-fixlets
test: test-oomd-util fixlets
2022-02-22 18:25:45 +01:00
Luca Boccassi aff3a9e1fa watchdog: add setting to configure pretimeout governor 2022-02-22 17:19:54 +00:00
Curtis Klein 56b96db700 watchdog: check pretimeout governor
Check and log the default pretimeout governor configured in the kernel.
The pretimeout will not work unless at least one governor is available
and configured. This requires loading a kernel module manually.
2022-02-22 17:19:54 +00:00
Curtis Klein 5717062e93 watchdog: Add watchdog pretimeout support
Add support for managing and configuring watchdog pretimeout values if
the watchdog hardware supports it. The ping interval is adjusted to
account for a pretimeout so that it will still ping at half the timeout
interval before a pretimeout event would be triggered. By default the
pretimeout defaults to 0s or disabled.

The RuntimeWatchdogPreSec config option is added to allow the pretimeout
to be specified (similar to RuntimeWatchdogSec). The
RuntimeWatchdogPreUSec dbus property is added to override the pretimeout
value at runtime (similar to RuntimeWatchdogUSec). Setting the
pretimeout to 0s will disable the pretimeout.
2022-02-22 17:19:54 +00:00
Frantisek Sumsal b491d74064 ci: fix clang-13 installation
For some reason Ubuntu Focal repositories now have `llvm-13` virtual
package which can't be installed, but successfully fools our check,
resulting in no clang/llvm being installed...

```
$ apt show llvm-13
Package: llvm-13
State: not a real package (virtual)
N: Can't select candidate version from package llvm-13 as it has no candidate
N: Can't select versions from package 'llvm-13' as it is purely virtual
N: No packages found

$ apt install --dry-run llvm-13
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package llvm-13 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'llvm-13' has no installation candidate
```
2022-02-22 17:57:25 +01:00
Zbigniew Jędrzejewski-Szmek 09d0758b22 Merge pull request #22574 from yuwata/network-dhcp-pd-fixes
network: dhcp-pd: fix two issues
2022-02-22 17:53:00 +01:00
Lennart Poettering 92148fb777 clang-format: we actually typically use 16ch continuation indentation
We use 8 for blocks, and 16 for continuation in most cases afaics, hence
say so in .clang-format too
2022-02-22 17:32:50 +01:00
Yu Watanabe be99883e13 test: fix file descriptor leak in test-psi-util
Fixes an issue reported in #22576.
2022-02-23 00:58:16 +09:00
Yu Watanabe 1da5325d19 test: fix file descriptor leak in test-tmpfiles.c
Also fixes a typo in assertion.

Fixes an issure reported in #22576.
2022-02-23 00:58:16 +09:00
Yu Watanabe 19962747ca test: fix file descriptor leak in test-fs-util
Fixes an issue reported in #22576.
2022-02-23 00:58:13 +09:00
Jan Janssen 3f9973bf36 boot: Handle shift and logo keys too
Some firmware supports sending input events for shift and logo keys.
Previously, we would suppress these with EFI_NOT_READY unless
some other key was pressed alongside, but it is really the job of the
caller to decide how to handle these.

Note that for keys that already have a printable shift representation
the reported input event will not have the shift key bits set
(Shift+a is reported as A). Should some firmware turn out to violate the
spec here we can always remove that part.
2022-02-22 16:34:55 +01:00
Jan Janssen 1cb5d7857b boot: Properly check status code of console_key_read
In some cases there was a unlikely possibility that we would look
at an uninitialized key value.
Also, returning in case of unexpected input error cases should prevent
infinite looping.
2022-02-22 16:34:52 +01:00
Lennart Poettering bd4f672e4c Merge pull request #22584 from poettering/systemctl-verb-renamed
systemctl: rename "verb" entrypoint functions systematically to verb_xyz()
2022-02-22 16:16:58 +01:00
Lennart Poettering c04c7c10c0 analyze: fix build on non-seccomp builds
Follow-up for #22585

See: https://github.com/systemd/systemd/pull/22585#issuecomment-1047658990
2022-02-22 16:15:52 +01:00
Lennart Poettering 623461c130 systemctl: rework daemon_reload() functions
Let's split out the inner parts of verb_daemon_reload() as a function
daemon_reload() and then stop using the former outside of the verbs
logic, and instead call the latter whenever we need to reload the daemon
as auxiliary opeation.

This should make our logic more systematic as we don't have to provide
fake or misleading argc/argv to verb_daemon_reload() anymore.
2022-02-22 14:15:08 +01:00
Lennart Poettering 32baf64d5a systemctl: systematically rename verb entrypoints verb_xyz()
Let's clean up our function naming a bit, and always name the
verb_xyz(), where the xyz maps to the command line verb as closely as
possible.

No actual code changes, just an attempt to make the systemctl sources a
bit more systematic, and less surprising.
2022-02-22 14:15:07 +01:00
Yu Watanabe 282696ce52 test: fix file descriptor leak in test-oomd-util
Fixes an issue reported in #22576.
2022-02-22 21:50:52 +09:00
Yu Watanabe 8306912b0e test: fix memory and fd leak in test-dhcp6-client
Fixes an issue reported in #22576.
2022-02-22 21:50:43 +09:00
Yu Watanabe 2e37084fc9 test: drop timeout handlers
Fixes file descriptor leak reported in #22576.
2022-02-22 21:50:32 +09:00
Yu Watanabe 62d4b3b36e test: fix file descriptor leak in test-catalog
Fixes an issue reported in #22576.
2022-02-22 21:50:29 +09:00
Yu Watanabe 07b7337aff network: dhcp-pd: allow to assign the same subnet prefix to multiple interfaces
There is no reason networkd refuses that. Especially, when multiple
downstream interfaces are connected to the same network, it is natural to
assign the same subnet prefix to them.

Prompted by #22571.
2022-02-22 20:39:32 +09:00
Yu Watanabe 38488babe7 network: dhcp-pd: fix prefix length of address assigned to upstream interface
This effectively revert ab0c82d9f7.

I have no idea why I did that...

Fixes #22559.
2022-02-22 20:39:28 +09:00
Yu Watanabe a6d6a51d83 test-oomd-util: fix conditional jump on uninitialised value
Fixes #22577.
2022-02-22 20:24:22 +09:00
Yu Watanabe d9fe39b24a test-oomd-util: style fixlets 2022-02-22 20:21:57 +09:00
Franck Bui c972880640 core: really skip automatic restart when a JOB_STOP job is pending
It's not clear why we rescheduled a service auto restart while a stop job for
the unit was pending. The comment claims that the unit shouldn't be restarted
but the code did reschedule an auto restart meanwhile.

In practice that was rarely an issue because the service waited for the next
auto restart to be rescheduled, letting the queued stop job to be proceed and
service_stop() to be called preventing the next restart to complete.

However when RestartSec=0, the timer expired right away making PID1 to
reschedule the unit again, making the timer expired right away... and so
on. This busy loop prevented PID1 to handle any queued jobs (and hence giving
no chance to the start rate limiting to trigger), which made the busy loop last
forever.

This patch breaks this loop by skipping the reschedule of the unit auto restart
and hence not depending on the value of u->restart_usec anymore.

Fixes: #13667
2022-02-22 11:45:12 +01:00
Ludwig Nussel 6d7127d6dd systemctl: improve error messages related to halt failures 2022-02-22 11:36:29 +01:00
Zbigniew Jędrzejewski-Szmek 22049270c0 Merge pull request #22585 from poettering/analyze-split-up
analyze: split out each verb into its own .c/.h pair
2022-02-22 11:02:57 +01:00
Lan Tian 70920214b6 hwdb: Force release calculator key on all HP OMEN laptops 2022-02-22 10:40:51 +01:00
prumian d9ab110ddc hwdb: add CST Laser Trackball (#22583)
Set the default to 800DPI as this is what user manual suggests.
2022-02-22 07:47:39 +01:00
Lennart Poettering 0e48986961 env-util: drop unsetenv_erase()
Follow-up for: e99ca14741

Found by @grigorig: https://github.com/systemd/systemd/commit/e99ca1474145f7fad38bb0255d344f4ad7717ef5#r67071855
2022-02-21 23:08:34 +00:00
Lennart Poettering dc4864dd68 analyze: modernize pretty_boot_time() a bit
Use simple strextend() backed by dynamic memory instead of format string
logic with fixed buffer.
2022-02-21 17:22:23 +01:00
Lennart Poettering ef38bedbf9 analyze: systematically name verb entry point functions verb_xyz()
Some of the functions so far were named do_xyz(), others dump_xyz() and
even others test_xyz(). let's instead name them exactly like the verb
exposed in the command line, just prefixed with verb_
2022-02-21 17:22:23 +01:00
Lennart Poettering e82116e56b analyze: move "condition" verb into analyze-condition.[ch] 2022-02-21 17:22:23 +01:00
Lennart Poettering f2562398ea analyze: split out "verify" verb into own .c/.h file
This renames the old analyze-verify.[ch] pair →
analyze-verify-util.[ch], because it's used by the test logic as well,
and by keeping it separate from the verify verb logic we don't have to
import the arg_xyz variables.
2022-02-21 17:22:23 +01:00
Lennart Poettering 2acfc25225 analyze: move inspect-elf verb entrypoint into analyze-elf.[ch], too
like for the other verbs, let's move the whole entry point for the verb,
too.
2022-02-21 17:22:23 +01:00
Lennart Poettering 57a22a3f97 analyze: fully move "security" verb to analyze-security.[ch]
let's move the verb entropy point too, like for the other verbs now.
2022-02-21 17:22:23 +01:00
Lennart Poettering f24f8e3789 analyze: split out "time" verb 2022-02-21 17:22:23 +01:00