1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-01-07 17:17:44 +03:00
Commit Graph

63785 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
59b7b0d318 Undeprecate commandline params forcequotacheck, fastboot, and forcefsck
Those are historical names, but there is nothing wrong with them. The files on
/ (/fastboot, /forcefsck, and /forcequotacheck) are problematic because they
require a modification of the root file system. But the commandline params work
fine. They have the obvious advantage compared to our "modern" option that they
are much easier to type without looking up the spelling in the docs. Undeprecate
them to avoid unnecessary churn.

(cherry picked from commit 5598454a3f8fc13257e0313d999e6ac9684082e1)
(cherry picked from commit eb841e9b8eb5ec47c46617b288135b2119694ea0)
(cherry picked from commit 59d4a05e3b)
(cherry picked from commit dc845754ad)
2024-11-30 16:56:34 +00:00
Lennart Poettering
bd4b4d68f6 userdbctl: fix counting
Fixes: #35294
(cherry picked from commit 7f8a4f12dfea6f644f92788bd9b03983898e9d32)
(cherry picked from commit 3d85366ab802aea92ade6a544b63ef73fff69e4a)
(cherry picked from commit 9d0e453244)
(cherry picked from commit 20bf8b00c3)
2024-11-30 16:56:34 +00:00
Lennart Poettering
1191cc3d55 userbdctl: show 'mapped' user range only inside of userns
Outside of userns the concept makes no sense, there cannot be users
mapped from further outside.

(cherry picked from commit e412fc5e042b8f642bcba42f5c175124583e05ae)
(cherry picked from commit aed4e9045656eb7934e3171a6fe442f7df4c4180)
(cherry picked from commit 421c23f4fa)
(cherry picked from commit de65927ffe)
2024-11-30 16:56:34 +00:00
Antonio Alvarez Feijoo
2625c00e8c man/kernel-command-line: fix typo
(cherry picked from commit a04d42821bb5350b0ffa82834e50e9b679279854)
(cherry picked from commit 03b993a9bfd97d42ebc0b3713e583c806c89e632)
(cherry picked from commit acb760fbe8)
(cherry picked from commit 90fd71a695)
2024-11-30 16:56:34 +00:00
Antonio Alvarez Feijoo
b2f6a12354 cryptenroll: show better log message if slot to wipe does not exist
```
$ systemd-cryptenroll /dev/vda3
SLOT TYPE
   0 password
$ systemd-cryptenroll --wipe-slot 1 /dev/vda3
Failed to wipe slot 1, continuing: No such file or directory
```

(cherry picked from commit 2b251491debf9cab695f5f34da9908ca46f085fe)
(cherry picked from commit 4a3d55a032053525ab331e4af6f95ec2dc053ee9)
(cherry picked from commit ade617cf3d)
(cherry picked from commit b265ca1792)
2024-11-30 16:56:34 +00:00
Lennart Poettering
f7538e8222 systemctl: grey out tasks limit the same way we grey out the fd store limit in the output
"systemctl status systemd-logind" otherwise looks a bit weird, since the
tasks and the fdstore lines are so close to each other but formatted
quite differently when it comes to coloring.

(cherry picked from commit 54646b1ca95373dfa3ebe5d6e7e27deeed9e77b0)
(cherry picked from commit ff4b66be4a35fd21ef001bbf6492e3e1f837ee1c)
(cherry picked from commit e00cc22e30)
(cherry picked from commit e9179d051a)
2024-11-30 16:56:34 +00:00
Lennart Poettering
d11c49dd64 nspawn: --private-users-ownership= value is called 'chown', not 'own'
(cherry picked from commit bae936b418e08063b68c95f4df53c3cd4f70e881)
(cherry picked from commit bdf3f9b8f274d958befa54c95811910013b39a80)
(cherry picked from commit 809b265172)
(cherry picked from commit 0368c1484d)
2024-11-30 16:56:34 +00:00
Lennart Poettering
39fde5faa9 pid1: make clear that $WATCHDOG_USEC is set for the shutdown binary, noone else
We use the $WATCHDOG_USEC variable for two very closely uses: as part of
the sd_watchdog_enabled() protocol for implementing service watchdogs.
And as part of the protocol between the service manager and
systemd-shutdown across the PID 1 execve() transition during shutdown.

Apparently some exitrds tools got confused by the latter use. Let's
address that by setting $WATCHDOG_PID to 1, in accordance to the
sd_watchdog_enabled() protocol to make clear this is only intended for
PID 1 and nothing else.

Replaces: #35135
(cherry picked from commit 4b20ae9a0e914e61d6bac095e5fc9664510ac03e)
(cherry picked from commit cf7b3cc18225ef8824f9cac9c88b7ea0b0dce3cd)
(cherry picked from commit cab88476b2)
(cherry picked from commit fa467a411f)
2024-11-30 16:56:34 +00:00
Luca Boccassi
f92cd4d022 ci: link systemd-keyutil into place
The mkosi action.yaml links systemd main, and instealls an hard-coded
set of binaries. ukify now depends on the new systemd-keyutil, which
cannot be in that list. Link it manually.

(cherry picked from commit 8f24348e72)
(cherry picked from commit 150b961a0b)
2024-11-16 10:30:57 +00:00
Luca Boccassi
5b199c6e23 test: fix test scripts filename pattern
In this branch it's testsuite-xy.foo, not TEST-XY-FOO

Follow-up for dffa62c85f

(cherry picked from commit 14e32845b5)
2024-11-16 10:30:57 +00:00
Yu Watanabe
2ba27c38fe nspawn: ignore failure in creating /dev/net/tun when --private-network is unspecified
Follow-up for efedb6b0f3cff37950112fd37cb750c16d599bc7.
Closes #35116.

(cherry picked from commit 985ea98e7f90c92fcc0b8441fafb190353d2feb8)
Really rewritten from scratch.
(cherry picked from commit 04ee5e25a1082d4c6c0c52a154d5ad5fc959a853)
(cherry picked from commit 45b39f98c9)
(cherry picked from commit c25b73f93b)
2024-11-16 10:30:57 +00:00
Yu Watanabe
fb8b0b6192 network-generator: drop wrong warning for rd.peerdns without value
(cherry picked from commit 2a774f064815573efc33d43dfe3548590e42e9c2)
(cherry picked from commit 56cc8acf45dbff227d1713d509bc3b71386df5d8)
(cherry picked from commit 2e956d0840)
(cherry picked from commit d3132ec494)
2024-11-16 10:30:57 +00:00
Yu Watanabe
2aaee78cb0 network-generator: parse vlan ID from vlan interface name
Fixes #33954.

(cherry picked from commit e31a55edf136e777aabdf19894ee886eac47c20e)
(cherry picked from commit 4cd435ca49950c2bba86a95b500c6d239f18efe1)
(cherry picked from commit f9f74a067c)
(cherry picked from commit 456c15b8fd)
2024-11-16 10:30:57 +00:00
Yu Watanabe
6bad63a0d0 network-generator: vlan= can be specified multiple times
(cherry picked from commit 9eee6b1b3f00d46459eebefb70be50ea6af30ddb)
(cherry picked from commit f3baba94425e6ccaf7a672903148dbb2b9e022f7)
(cherry picked from commit be571ff648)
(cherry picked from commit ca169c9e8b)
2024-11-16 10:30:57 +00:00
andre4ik3
9601ac90fe boot: allocate cleanup pages below 4GiB only on x86
Outside of x86, some machines (e.g. Apple silicon, AMD Opteron A1100) have
physical memory mapped above 4GiB, meaning this allocation will fail, causing
the entire boot process to fail on these machines.

This commit makes it so that the below-4GB address space allocation requirement
is only set on x86 platforms, and not on other platforms (that don't have the
specific Linux x86 boot protocol), thereby fixing boot on those that have no
memory mapped below 4GiB in their address space.

Tested on an Apple silicon M1 laptop and an AMD x86_64 desktop tower.

Fixes: #35026

Manual backport of 6e207b370e91e681efb08c497a6c8ad78e3c8d83.

(cherry picked from commit a9d9db7f4e4a75f6dbda5c31fbbf325eff9d63b4)
(cherry picked from commit 8923d93768)
(cherry picked from commit 6f0a01d3c0)
2024-11-16 10:30:57 +00:00
Mike Yuan
bddd7a10ad portable: do not use SYNTHETIC_ERRNO for sd_bus_error_set_errno()
The concept of synthetic errnos is about logging, which
is irrelevant irt bus error and we don't do any special
treatment in sd-bus for them, meaning the value propagated
would be spurious.

(cherry picked from commit 2f2058da0b88535cb3a95fc98e7b2f1ae4d35601)
(cherry picked from commit 018c7fb18ae8aff5414d5e74cb41fb98b72c0554)
(cherry picked from commit 39c2b7fd58)
(cherry picked from commit 06be1bfc83)
2024-11-16 10:30:57 +00:00
Luca Boccassi
57778c6f22 hwdb: update to main@{2024-11-12}
git restore -s origin/main hwdb.d/ test/hwdb.d

(cherry picked from commit 7e36a73e2e4d580b2df0f755569ca4040bfe7232)
(cherry picked from commit 6e29d791df)
(cherry picked from commit 223b317761)
2024-11-16 10:30:57 +00:00
Yu Watanabe
2e68de29d1 network/tunnel: allow Local=/Remote=any for all tunnel types
It seems there is no restriction for local and remote addresses.

Fixes #34930.

(cherry picked from commit 5e48fd0506ed6212c9db2276d5845ab77aa9bce4)
(cherry picked from commit 3093ac05abcaf5a43f75ec1d5702ed226cc3ce31)
(cherry picked from commit 81c84336f4)
(cherry picked from commit 6f19e9fa9c)
2024-11-16 10:30:57 +00:00
12paper
bf4d3b243b login: fix session_kill(..., KILL_LEADER,...) (#35105)
`loginctl kill-session --kill-whom=leader <N>` (or the D-Bus equivalent)
doesn't work because logind ends up calling `KillUnit(..., "main", ...)`
on a scope unit and these don't have a `MainPID` property. Here, I just
make it send a signal to the `Leader` directly.

(cherry picked from commit 8254755091847105c33e473c62cdc7621ed275bc)
(cherry picked from commit c89c5d04f33dbc5c6dfb67b8bc58cbd3d924b434)
(cherry picked from commit 80efb1da3f)
(cherry picked from commit 94b234df96)
2024-11-16 10:30:57 +00:00
Lidong Zhong
e0b8d7341e udev: skipping empty udev rules file while collecting the stats
To keep align with the logic used in udev_rules_parse_file(), we also
should skip the empty udev rules file while collecting the stats during
manager reload. Otherwise all udev rules files will be parsed again whenever
reloading udev manager with an empty udev rules file. It's time consuming
and the following uevents will fail with timeout.

(cherry picked from commit 2ae79a31b7c7947e2c16e18eb85ac5607ebc40b6)
(cherry picked from commit 688eb20fdb9c4bcc6d205323f9cec119d6273169)
(cherry picked from commit 484d31a58d)
(cherry picked from commit 8b6ae951d3)
2024-11-16 10:30:57 +00:00
Lennart Poettering
3ddb7955eb man: tone down claims on processes having exited already in ExecStop=
Processes can easily survive the first kill operation we execute, hence
we shouldn't make strong claims about them having exited already. Let's
just say "likely" hence.

Fixes: #15032
(cherry picked from commit ac804bc2f8d814d2afcdccd88f7469ac320da1c8)
(cherry picked from commit 307a6332a63dd0f6addbc5c77d21f72ce4578070)
(cherry picked from commit b38386ae2b)
(cherry picked from commit e23cbecd7f)
2024-11-16 10:30:57 +00:00
Lennart Poettering
51d8bd3283 man: document that .path units don't care for hidden files
Fixes: #32751
(cherry picked from commit 5adc4337996f561df43c617e37ef4b157073b2e6)
(cherry picked from commit a6f9c2031666a856f137109e77c856a8e238a59b)
(cherry picked from commit b8a62a9f4f)
(cherry picked from commit 85e29f7612)
2024-11-16 10:30:57 +00:00
Lennart Poettering
5fee803746 run: handle gracefully if we can't find binary client-side due to perms
Fixes: #35022
(cherry picked from commit 9810899ef2f28fbb42cf659e6892b1a5074cfc83)
(cherry picked from commit 070dbe1e77fc25201a89770beb691135ce84bed1)
(cherry picked from commit ccc2e1ff85)
(cherry picked from commit 8e353d2293)
2024-11-16 10:30:57 +00:00
Zbigniew Jędrzejewski-Szmek
12e76a5637 resolved: log error messages for openssl/gnutls context creation
In https://bugzilla.redhat.com/show_bug.cgi?id=2322937 we're getting
an error message:
Okt 29 22:21:03 fedora systemd-resolved[29311]: Could not create manager: Cannot allocate memory
I expect that this actually comes from dnstls_manager_init(), the
openssl version. But without real logs it's hard to know for sure.

Use EIO instead of ENOMEM, because the problem is unlikely to be actually
related to memory.

(cherry picked from commit ee95e86ae163e436384f1b782a77a7e18deba890)
(cherry picked from commit abd1e408203d5d445b05f4dc0ac07e35114532d1)
(cherry picked from commit 67954b4554)
(cherry picked from commit 17a3a8e91b)
2024-11-16 10:30:57 +00:00
Colin Foster
b9caa340e8 test-dhcp-client: utilize log_info instead of printf
log_info appears to be the preferred method to convey information from
tests. Convert all the printfs to log_info to follow this standard.

(cherry picked from commit 38557d9ffbc6351b8980faf90d54619790436d43)
(cherry picked from commit 4ea84288480115f7175a8cfc61d03e3a712396b8)
(cherry picked from commit cfa083d450)
(cherry picked from commit 6dda2e10a0)
2024-11-16 10:30:57 +00:00
Zbigniew Jędrzejewski-Szmek
617136c95c cryptenroll,homectl,journalctl: adjust messages before qrcodes
Users will generally know what a qrcode is, so let's not treat them as dumb and
explain that it can be scanned. OTOH, we should say what the qrcode contains
and it is useful to give a hint why the users would want to scan it. Reword
messages accordingly.

(Also, don't say "to your phone", when somebody might be using a stolen phone,
or something else then a phone.)

(cherry picked from commit 10faa40ba781cf499258a3b37de02dd643822dc6)
(cherry picked from commit fefd60bf7ad9f361c85395ab38f10482f3007f15)
(cherry picked from commit 4ca8f5e68d)
(cherry picked from commit d415c1d8a3)
2024-11-16 10:30:57 +00:00
Zbigniew Jędrzejewski-Szmek
90010fbc83 test-terminal-util: print value of colors_enabled()
This makes it easier to diagnose why colors are disabled.

(cherry picked from commit b137b2979868e2de5fb5c26e90bacee33597b8e7)
(cherry picked from commit bbdb5f97a96e5942bb055770366e0d48c3ee8540)
(cherry picked from commit f120804bb7)
(cherry picked from commit f40708b6de)
2024-11-16 10:30:57 +00:00
Zbigniew Jędrzejewski-Szmek
3840328782 sd-id128: mark functions as const, not pure
We would need to use pure if the funtion was getting pointers and
dereferencing them. But sd128_t is a structure and those functions
only access the parameters of the call.

(cherry picked from commit dc32b09b70c9bb20821df92ac82ace83d8a968e2)
(cherry picked from commit 3190a427b915976c9c11979acad20682e947a3c8)
(cherry picked from commit b166ddd3dc)
(cherry picked from commit e0aa869012)
2024-11-16 10:30:57 +00:00
Zbigniew Jędrzejewski-Szmek
4219dc3c61 sd-common: add __const__
const is stronger than pure, see
https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-pure-function-attribute
and
https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-const-function-attribute.

(cherry picked from commit 955c51c087f1fb6d0b7a0091db943ad05ba3095e)
(cherry picked from commit a5e128ca26cab912b4e404dbd6ad9cb6f60c67da)
(cherry picked from commit afcbe7c406)
(cherry picked from commit f680da581e)
2024-11-16 10:30:57 +00:00
Mike Yuan
3c253f9994 core/service: use log_unit_* where appropriate
(cherry picked from commit 1e8f0beee4272ddc8b25dfa9af8e54bafc4c061a)
(cherry picked from commit b9ff85ece7a6bd9eca158aa0a8af46055ffb6142)
(cherry picked from commit e575661da9)
(cherry picked from commit 12b7b9e50c)
2024-11-16 10:30:57 +00:00
Yu Watanabe
25d95a2374 sd-event: fix memleak when built without assertion
Fixes a bug introduced by baf3fdec27.

This also adds several assertions at the beginning of the function.

Fixes #34899.

(cherry picked from commit 5dc0668802cd07cdca2dc5bda52cc1e63b57f145)
(cherry picked from commit 7455e7622113969866ed116d101aa54cfe2b1f7e)
(cherry picked from commit 261469e369)
(cherry picked from commit e5f6d457d4)
2024-11-16 10:30:57 +00:00
Luca Boccassi
88d2d367a7 logind: allow read/write to char-hvc devices
virtio console uses /dev/hvc* so we need access to write wall
messages

(cherry picked from commit 5ff6841c2378ed83e645681cbd4ee145f68d72b7)
(cherry picked from commit 0852240f927f47100b61e3b33e34a0f74b0d6a90)
(cherry picked from commit ccb963233d)
(cherry picked from commit 9e47ce3ab7)
2024-11-16 10:30:57 +00:00
Luca Boccassi
4d7b8a3387 test: CET/EET are deprecated, use Europe/Berlin and Kyiv
The links moved to the legacy dataset so they won't be available by
default, so stop using them and just use the city ones instead

(cherry picked from commit aa077884c13769ae3bd6aa98978b4ac9e64b5365)
(cherry picked from commit 4a3fc628a24b5f13af350691ff50f8be905c9c9c)
(cherry picked from commit 484cd8584c)
(cherry picked from commit c2d3456d89)
2024-11-16 10:30:57 +00:00
Zbigniew Jędrzejewski-Szmek
a26c25a9f5 man/systemd-nspawn: emphasise that user namespaces are strongly recommended
(cherry picked from commit 9b1a5bc365e379b4b13849adacfde3427f55ca38)
(cherry picked from commit a816075978767187f1a172326f414f67d905001b)
(cherry picked from commit e6247b048f)
(cherry picked from commit 207ee49f20)
2024-11-16 10:30:57 +00:00
Lennart Poettering
ece78099fd resolved: refresh resolv.conf files when link goes away
This might have the effect that some DNS server or search domain
disappears, hence rewrite the relevant files.

See: #27543
(cherry picked from commit 562f7bde8872b4fd03db11bf25c9dd294fd2c186)
(cherry picked from commit 72806073770393982a50aed54c40164105c9bf14)
(cherry picked from commit 1de3aa4ec9)
(cherry picked from commit cea9e1619a)
2024-11-16 10:30:57 +00:00
Lennart Poettering
89291a6e82 networkd: raise limits on number of address 8x
Limits should be enforced, but not in a way real setups collide with
them.

There have been multiple reports that current limits are too low, hence
raise them 8x.

Fixes: #24852
(cherry picked from commit af7674f4ad30e83efc84f04c45f01e6eff137702)
(cherry picked from commit dc47ba69fcc6ff01b813777b126f4cf9b571a9c9)
(cherry picked from commit c0d234ac2e)
(cherry picked from commit 15c33cb709)
2024-11-16 10:30:57 +00:00
Lennart Poettering
44412eb2c2 udev: consider serial ports as unconfigured only if both port and iomem_base sysattr is zero
Various archs do not know the "io port" concept, hence check for the
"iomem" configuration, too.

Fixes: #34800
(cherry picked from commit 9da582984b632a75f562a304ff96dd1043281430)
(cherry picked from commit 7803507b6e2a0e120e73b6a66460e458d72b0207)
(cherry picked from commit fadf1b1536)
(cherry picked from commit 749df25830)
2024-11-16 10:30:57 +00:00
Yu Watanabe
d3843cb4aa TEST-60-MOUNT-RATELIMIT: wait for mount unit being started or stopped
(cherry picked from commit c5928a768417b298eb2741107fa7492e93d637fc)
(cherry picked from commit 3b171cb7bc6d84381f8ac27722503b103745cd2b)
(cherry picked from commit ee80f6b05c)
(cherry picked from commit 7a64921bc2)
2024-11-16 10:30:57 +00:00
Luca Boccassi
9bb135904b Fix maybe-uninitialized warnings with gcc 14.2
../src/resolve/resolved-bus.c: In function ‘call_link_method’:
../src/resolve/resolved-bus.c:1769:16: warning: ‘l’ may be used uninitialized [-Wmaybe-uninitialized]
 1769 |         return handler(message, l, error);
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~
../src/resolve/resolved-bus.c:1755:15: note: ‘l’ was declared here
 1755 |         Link *l;
      |               ^
../src/resolve/resolved-bus.c: In function ‘bus_method_get_link’:
../src/resolve/resolved-bus.c:1828:13: warning: ‘l’ may be used uninitialized [-Wmaybe-uninitialized]
 1828 |         p = link_bus_path(l);
      |             ^~~~~~~~~~~~~~~~
../src/resolve/resolved-bus.c:1816:15: note: ‘l’ was declared here
 1816 |         Link *l;
      |               ^

(cherry picked from commit 5f911aca8434b4163514019fcb4c1c967a50617c)
(cherry picked from commit 2590b77f39f7c1264b686e0b379465f5670631d3)
(cherry picked from commit 4c9509ad0c)
(cherry picked from commit 7d275f119c)
2024-11-16 10:30:57 +00:00
Yu Watanabe
42d89850de journalctl: erase verify key before free
Even optarg is erased, copied string was not erased.
Let's erase the copied key for safety.

(cherry picked from commit d0ad4e88d4e6b5e312c359a6505125f7e088f3e3)
(cherry picked from commit 28f7c958fb799887cb67528a85ca59f0ccd9261e)
(cherry picked from commit 6b13398c22)
(cherry picked from commit b115781317)
2024-11-16 10:30:57 +00:00
Yu Watanabe
abd0c2def6 TEST-19-CGROUP: add test cases for IPAddressAllow=/IPAddressDeny=
(cherry picked from commit 5f3cfb9d5ee334c53cc407308ba677401a6ba1cd)
(cherry picked from commit 04bf8544baa3ef4c675e610f35dd44f2ea60382e)
(cherry picked from commit 41ebd13365)
(cherry picked from commit 481f29f7fa)
2024-11-16 10:30:57 +00:00
Yu Watanabe
b434c13273 core/cgroup: fix IPAddressAllow=/IPAddressDeny= set through DBus
Fixes a regression caused by 84ebe6f013 (v250).
Fixes #34773.

(cherry picked from commit 77bbd9f1bd2b01bcb2a49ed42c6dc06613532bcf)
(cherry picked from commit a94b2c39f94e7af82a56c52941cc1c6aeaf2318f)
(cherry picked from commit 71fca73f70)
(cherry picked from commit 556f0549d3)
2024-11-16 10:30:57 +00:00
Yu Watanabe
831c6a1fe0 network/dhcp6: set hostname even if UseAddress=no
Follow-up for f963f8953d and
1536b7b2d0.

(cherry picked from commit 8fead9c9e46e5f71ae6f6b038ff7f72c5a13b663)
(cherry picked from commit 30cf66855b6e31e7de2bff6d79d5c2d9fc17d684)
(cherry picked from commit f4189fdd1d)
(cherry picked from commit 51ed671255)
2024-11-16 10:30:57 +00:00
Gaël PORTAY
51ac5cfc05 docs: add a missing : character
This adds the missing colon character to the section systemd-sysusers.

(cherry picked from commit 8ef5ea2bf6d8c9ef12b00ab3838b9af81e30bf5d)
(cherry picked from commit 6a288cd999090661461be74f24fd29cb90da1f3f)
(cherry picked from commit a2c6d50b64)
(cherry picked from commit 4b21746e21)
2024-11-16 10:30:57 +00:00
Lennart Poettering
18002c8364 man: document preference for secure_getenv() in coding style
(cherry picked from commit c9b477415a6293b74df67c8118bafb0ef8662819)
(cherry picked from commit 1f0d68c6e9dc7cc9bd14f47d03eec10389e2c845)
(cherry picked from commit 833a89efc7)
(cherry picked from commit 6bb1aba753)
2024-11-16 10:30:57 +00:00
Daan De Meyer
388630c5a9 systemd-update-helper: Show executed commands if debug logging is enabled
(cherry picked from commit 8b8668b9e71837cb541cd432bc37e4c9405e49cd)
(cherry picked from commit c7762098ec09c2626204c9580c91295414137bba)
(cherry picked from commit b095673440)
(cherry picked from commit d1bc81ba33)
2024-11-16 10:30:57 +00:00
Lennart Poettering
6feda43612 seccomp: allowlist uretprobe() syscall
This is a new syscall provided by the kernel used to implement faster
uprobes. It's not supposed to be called by userspace, but only by kernel
generated uprobe code.

It should be fine to allow this, as the kernel authenticates the
invocation itself, and we shouldn't break compat with things.

Note that this allowlisting is not sufficient to make ureprobe() work.
libseccomp must be tought the syscall too, but this can happen
independently.

Fixes: #34615
(cherry picked from commit d693c483a2bb3eae490fd78d68fc16d0a731fee2)
(cherry picked from commit 389fbf464907132479cd1d18c7cbee17328f36cf)
(cherry picked from commit 1fd57ca01c)
(cherry picked from commit bde6caa9ef)
2024-11-16 10:30:57 +00:00
Lennart Poettering
a73de752a4 meson: sort includes
(cherry picked from commit 882032faaf9e2d2524936e82ccc770903d4c38d6)
(cherry picked from commit c14a47547d040c4976f20388f5535ed655bbd035)
(cherry picked from commit 40ea469735)
(cherry picked from commit 9d7f1c6bc1)
2024-11-16 10:30:57 +00:00
Lennart Poettering
b6b898c9a7 man: reword comment a bit regarding ExecStartPre= multiple commands
The documentation claimed that ExecStartPre=/ExecStartPost= accepts
multiple command lines, in contrast to ExecStart=. This is half an
untruth, because ExecStart= allows that too – as long as Type=oneshot is
set.

Hence, reword this a bit, and do not emphasize the contrast.

Prompted by: #34570

(cherry picked from commit c3069a6bfb454a0e02607ad21b5badf9847fe11a)
(cherry picked from commit ff667d8c2ef7ed2378fb1de39e1bcc2af2197d0e)
(cherry picked from commit d0063ca694)
(cherry picked from commit 4e23372329)
2024-11-16 10:30:57 +00:00
Chen Guanqiao
39f4a5abbe mount: optimize mountinfo traversal by decoupling device discovery
In mount_load_proc_self_mountinfo(), device_found_node() is synchronously called
during the traversal of mountinfo entries. When there are a large number of
mount points, and the device types are not significantly different, this results
in excessive time consumption during device discovery, causing a performance
bottleneck. This issue is particularly prominent on servers with a large number
of cores in IDC.

This patch decouples device discovery from the mountinfo traversal process,
avoiding redundant device operations. As a result, it significantly improves
performance, especially in environments with numerous mount points.

Signed-off-by: Chen Guanqiao <chen.chenchacha@foxmail.com>
(cherry picked from commit 00ad3f02275b507a753495ace5e5f84cb38b604d)
(cherry picked from commit 44e1774660fcddcfefcf153cc3c189ea35572d63)
(cherry picked from commit ea35f88ae7)
(cherry picked from commit 7ed4036831)
2024-11-16 10:30:57 +00:00