Commit Graph
86400 Commits
Author SHA1 Message Date
David Santamaría Rogado 24ae53dff4 hwdb: sensor: gp add colon to sensor dmi 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 2e63c9b77f hwdb: sensor: glavey add colon to sensor dmi 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 86db0afa87 hwdb: sensor: geo add in-line comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 6fbbe54440 hwdb: sensor: exo add in-line comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado e3a9643798 hwdb: sensor: eve in-line comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado fd81658871 hwdb: sensor: estar add comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 90428a3474 hwdb: sensor: endless add comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 5a1aa20882 hwdb: sensor: digma in-line comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 500f5c645a hwdb: sensor: digibras in-line comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 81f69d6176 hwdb: sensor: dexp rework 2026-02-17 13:35:49 +01:00
David Santamaría Rogado a252f18c19 hwdb: sensor: dere add comments 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 0c8371a230 hwdb: sensor: dell rework
Change Vostro5581 to use its sku to match the rest, I suppouse it was
added before we had sku in dmi modalias.

Fix OCB4 sku instead a begining O letter needs to be a beggining zero,
checked in original bug report.

Reorder entries.

Use proper formatting.
2026-02-17 13:35:49 +01:00
David Santamaría Rogado b713ec2481 hwdb: sensor: cube refactor 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 0aaea4b376 hwdb: sensor: cytrix fix 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 6eeeb70255 hwdb: sensor: cyberbook add comment 2026-02-17 13:35:49 +01:00
David Santamaría Rogado e69ec28ac9 hwdb: sensor: csl fix 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 0c6770e55e hwdb: sensor: connect fix 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 9550e335fa hwdb: sensor: chuwi refactor
At least one too generic dmi string is there.
2026-02-17 13:35:49 +01:00
David Santamaría Rogado 9d017ceb4a hwdb: sensor: bush minor changes 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 1c8ed38270 hwdv: sensor: bmax add fixme notes
Comment that more research about the two accelerometer should be done.
2026-02-17 13:35:49 +01:00
David Santamaría Rogado 3937225f16 hwdb: sensor: ayaneo refactor and rework
This one is a real mess, spaces in dmi modalias, minus zeroes.

Needs a little more love.

fix whitespaces and comment in-line.
2026-02-17 13:35:49 +01:00
David Santamaría Rogado 0da3957a1e hwdb: sensor: axxo fix previous search and replace 2026-02-17 13:35:49 +01:00
David Santamaría Rogado 12c9badc87 hwdb: sensor: asus refactor and rework
For safety, prefer board product name, that always has the short name,
over system product name, that in few models has a very long string with
the short name at the end.

The following models added at the time of this commit BR1100FKA, RC72LA
and TP412UA needs a wildcard before when using pn.

Unmerged Q502LAB, Q551LB and Q551LN, in the merged match there are many
more unreported models.

Sort by the first model in every group.
2026-02-17 13:35:49 +01:00
David Santamaría Rogado f59346ed42 hwdb: sensor: archos in-line commenting 2026-02-17 13:35:49 +01:00
David Santamaría Rogado daa2d6e60a hwdb: sensor: aquarius rework 2026-02-17 13:35:49 +01:00
David Santamaría Rogado e91fc587a3 hwdb: sensor: acer refactor and rework
Rework acer matches to use system vendor with board name.

Is the most reliable way to deal with Acer.

While doing it discover that matches SP111-32N and SP111-34N broke in
c0443b97b7 (hwdb: add trailing ":*" everywhere, 2020-10-15)

Sort by the first model of every group.
2026-02-17 13:35:49 +01:00
David Santamaría Rogado 6f298b0b72 hwdb: sensor: say that model sort is groupped 2026-02-17 13:35:49 +01:00
Luca Boccassi 70b5a49d25 Update hwdb and autosuspend rules (#40710) 2026-02-17 12:13:18 +00:00
Zbigniew Jędrzejewski-Szmek 92ad9dd8af hwdb: update autosuspend rules 2026-02-17 11:51:58 +01:00
Zbigniew Jędrzejewski-Szmek a1278f9b04 hwdb: update
As always, a spattering of additions and updates.
2026-02-17 11:51:14 +01:00
Zbigniew Jędrzejewski-Szmek 836d0385ff meson: update man rules
Why oh why do people forget to do this?
Fixup for 563b5dedb7.
2026-02-17 11:29:32 +01:00
Zbigniew Jędrzejewski-Szmek f9dbf6fd5a core: add SetProperties varlink method (#40356)
Start with Markers as a property, more can be added in the future as
needed
2026-02-17 10:57:09 +01:00
Yu Watanabe 4fae85faea Several fixlets for issues found by Coverity (#40707) 2026-02-17 18:26:46 +09:00
Chris Down 31620807e1 oomd: Fix unnecessary delays during OOM kills with pending kills present
Let's say a user has two services with ManagedOOMMemoryPressure=kill,
perhaps a web server under system.slice and a batch job under
user.slice. Both exceed their pressure limits. On the previous timer
tick, oomd has already queued the web server's candidate for killing,
but the prekill hook has not yet responded, so the kill is still
pending.

In the code, monitor_memory_pressure_contexts_handler() iterates over
all pressure targets that have exceeded their limits. When it reaches
the web server target and calls oomd_cgroup_kill_mark(), which returns 0
because that cgroup is already queued. The code treats this the same as
a successful new kill: it resets the 15 second delay timer and returns
from the function, exiting the loop.

This loop is handled by SET_FOREACH and the iteration order is
hash-dependent. As such, if the web server target happens coincidentally
to be visited first, oomd never evaluates the batch job target at all.

The effect is twofold:

1. oomd stalls for 15 seconds despite not having initiated any new kill.
   That can unnecessarily delay further action to stem increases in
   memory pressure. The delay exists to let stale pressure counters
   settle after a kill, but no kill has happened here.
2. It non-deterministically skips pressure targets that may have
   unqueued candidates, dangerously allowing memory pressure to persist
   for longer than it should.

Fix this by skipping cgroups that are already queued so the loop
proceeds to try other pressure targets. We should only delay when a new
kill mark is actually created.
2026-02-17 18:26:04 +09:00
Chris Down 4fb8cc53b3 oomd: Fix silent failure to find bad cgroups when another cgroup dies
Consider a workload slice with several sibling cgroups. Imagine that one
of those cgroups is removed between the moment oomd enumerates the
directory and the moment it reads memory.oom.group. This is actually
relatively plausible under the high memory pressure conditions where
oomd is most needed.

In this case, the failed read prompts us to `return 0`, which exits the
entire enumeration loop in recursively_get_cgroup_context(). As a
result, all remaining sibling cgroups are silently dropped from the
candidate list for that monitoring cycle.

The effect is that oomd can fail to identify and kill the actual
offending cgroup, allowing memory pressure to persist until a subsequent
cycle where the race doesn't occur.

Fix this by instead proceeding to evaluate further sibling cgroups.
2026-02-17 17:32:26 +09:00
Chris Down e757e791b2 oomd: Fix silent, non-deterministic dropped OOM kills
Let's say a user has two services with ManagedOOMMemoryPressure=kill,
one for a web server under system.slice, and one for a batch job under
user.slice. The batch job is causing severe memory pressure, whereas the
web server's cgroup has no processes with significant pgscan activity.

In the code, monitor_memory_pressure_contexts_handler() iterates over
all pressure targets that have exceeded their limits. When
oomd_select_by_pgscan_rate() returns 0 (that is, no candidates) for a
target, we return from the entire SET_FOREACH loop instead of moving to
the next target. Since SET_FOREACH iteration order is hash-dependent, if
the web server target happens to be visited first, oomd will find no
kill candidates for it and exit the loop. The batch job target that is
actually slamming the machine will never even be evaluated, and can
continue to wreak havoc without any intervention.

The effect is that oomd non-deterministically and silently fails to kill
cgroups that it should actually kill, allowing memory pressure to
persist and dangerously build up on the machine.

The fix is simple, keep evaluating remaining targets when one does not
match.
2026-02-17 17:31:39 +09:00
Yu Watanabe 7a6b6c4d07 network/wwan: fix memleak in failure path
Fixes CID#1645018.
2026-02-17 17:02:10 +09:00
Yu Watanabe 1a416a47e7 network/wwan: add missing error check
Fixes CID#1645015.
2026-02-17 17:01:00 +09:00
Yu Watanabe 2e8cfb7cef sd-bus: use bus_error_message() at several more places
For CID#1645014, CID#1645016, and CID#1645017.
2026-02-17 17:00:42 +09:00
Yu Watanabe ce6ea42b69 bus-polkit: add one more assertion
For CID#1645013.
2026-02-17 16:39:38 +09:00
Mike Yuan fad273450a socket-util: remove unused {send,receive}_many_fds*()
These were introduced as part of the effort of sd-executor
worker pool (#29566), which never landed due to unsignificant
performance improvement. Let's just remove the unused
helpers. If that work ever gets resurrected they can be
restored from this commit pretty easily.
2026-02-17 14:56:00 +09:00
Yu Watanabe d9e078fe68 oomd: Fix Killed signal reason being lost (#40689)
Emitting "oom" doesn't mesh with the org.freedesktop.oom1.Manager
Killed() API contract, which defines "memory-used" and "memory-pressure"
as possible reasons. Consumers that key off reason thus will either lose
policy attribution or may reject the unknown value completely.

Plumb the reason through so it is visible to consumers.
2026-02-17 14:53:46 +09:00
Chris Down b10e5a60aa oomd: Add regression tests to check Killed notification gives a reason 2026-02-17 14:50:21 +09:00
Chris Down 936d864b0b oomd: Fix Killed signal reason being lost
Emitting "oom" doesn't mesh with the org.freedesktop.oom1.Manager
Killed() API contract, which defines "memory-used" and "memory-pressure"
as possible reasons. Consumers that key off reason thus will either lose
policy attribution or may reject the unknown value completely.

Plumb the reason through so it is visible to consumers.
2026-02-17 14:50:17 +09:00
Daan De Meyer 48c84fe730 nspawn-mount: Use setns() in wipe_fully_visible_api_fs()
namespace_enter() now does a is_our_namespace() check, which requires
/proc on older kernels, which is not available anymore after we call
do_wipe_fully_visible_api_fs() in wipe_fully_visible_api_fs().

Let's just call setns() instead as namespace_enter() is overkill to
enter a single namespace anyway.
2026-02-17 04:55:24 +01:00
Yu Watanabe 710742270b report: enforce metric prefix (#40647)
Addressing
> we should enforce that metrics ids begin with the varlink service name

from #40633
2026-02-17 06:47:50 +09:00
Daan De Meyer 0ad6108c8e mkosi: Set CacheOnly=metadata for test images (#40699)
The default behavior is to sync repository metadata for every image
that does not have a cache and we recently changed behavior to
invalidate
all cached images whenever we decide the repository metadata needs to
be resynced.

In systemd we have two images that are not cached because they use
BaseTrees=
hence set CacheOnly=metadata to explicitly indicate these two images
should never cause a repository metadata if resync even though they are
not cached.
2026-02-16 15:42:35 +01:00
Ivan Kruglov cc14f78c02 report: validate metric name by socket 2026-02-16 05:46:24 -08:00
nikstur 5b193a8e23 meson: read more progs from PATH
Find more progs on PATH instead of hardcoding them.
2026-02-16 14:32:38 +01:00
Daan De Meyer 2a08e31cbd mkosi: Set CacheOnly=metadata for test images
The default behavior is to sync repository metadata for every image
that does not have a cache and we recently changed behavior to invalidate
all cached images whenever we decide the repository metadata needs to
be resynced.

In systemd we have two images that are not cached because they use BaseTrees=
hence set CacheOnly=metadata to explicitly indicate these two images
should never cause a repository metadata if resync even though they are
not cached.
2026-02-16 13:28:22 +01:00