Daan De Meyer
5f13fb0a73
repart: Put function call closer to its error handling
2023-08-15 12:09:31 +02:00
Luca Boccassi
4ccee4b426
Merge pull request #28812 from DaanDeMeyer/sector-size
...
repart: Use 4096 as the fallback sector size for verity/luks/filesystems
2023-08-15 10:16:24 +01:00
Daan De Meyer
c81e350c03
Merge pull request #28833 from DaanDeMeyer/copy-subvolume
...
repart: Add Subvolumes= setting
2023-08-15 09:53:02 +02:00
Michael A Cassaniti
eeee486159
sysupdate: Use sector size for partition size calculations
2023-08-15 09:17:12 +02:00
Daan De Meyer
4b17f5c378
Merge pull request #28829 from DaanDeMeyer/mount-fd
...
tree-wide: Mount file descriptors via /proc/<pid>/fd
2023-08-15 09:04:45 +02:00
Luca Boccassi
e158e17299
Merge pull request #28835 from mrc0mmand/more-tests
...
test: add coverage for #27953
2023-08-15 01:54:52 +01:00
Daan De Meyer
4419735822
fd-util: Use /proc/pid/fd instead of /proc/self/fd
...
Currently, we mount via file descriptors using /proc/self/fd. This
works, but it means that in /proc/mounts and various other files,
the source of the mount will be listed as /proc/self/fd/xxx. For other
software that parses these files, /proc/self/fd/xxx doesn't mean anything,
or worse, it means the completely wrong thing, as it will refer to one of
their own file descriptors instead.
Let's improve the situation by using /proc/pid/fd instead. This allows
processes parsing /proc/mounts to do the right thing more often than not.
One scenario where even this doesn't work if when containers are involved,
as with the pid namespace unshared, even /proc/pid/fd will mean the wrong
thing, but it's no worse than /proc/self/fd which will always means the wrong
thing.
This also doesn't work if we mount via file descriptor and then exit, as the pid will
be gone, but it does work as long as the process that did the mount is alive, which
makes it useful for systemd-dissect --with for example if the program we run in the
image wants to parse /proc/mounts.
2023-08-14 22:43:12 +02:00
Frantisek Sumsal
01febfcdce
test: explicitly specify a UTF-8 locale for UTF-8 shenanigans
...
As things don't work well without it:
$ LANG=C printf "\ufffe\n"
\uFFFE
2023-08-14 20:09:31 +02:00
Frantisek Sumsal
3ba954dd57
test: add coverage for #27953
2023-08-14 19:35:37 +02:00
Frantisek Sumsal
39f17be437
test: drop unnecessary log level setup
...
As we do that globally via a dropin.
2023-08-14 19:31:20 +02:00
Daan De Meyer
440f805c17
repart: Add Subvolumes= setting
...
This setting indicates which directories in the target partition
should be btrfs subvolumes. If set, we'll try to create these
directories as subvolumes.
Note that this only works when running as root without --offline,
as mkfs.btrfs does not support creating subvolumes.
2023-08-14 18:46:08 +02:00
Daan De Meyer
c55a97f1fd
mkdir: Add support for creating subvolumes to mkdir_p_root()
...
We pass in the paths which should be subvolumes and try to create
those as subvolumes if we can.
2023-08-14 18:46:08 +02:00
Daan De Meyer
ad6fae7ffc
copy: Add support for creating subvolumes to copy_tree_at()
...
The subvolumes set is a set of source inodes similar to how the
denylist hashmap contains source inodes as keys. It indicates
directories in the source tree that should become subvolumes in
the target tree.
2023-08-14 18:46:08 +02:00
Daan De Meyer
bc6a6130ac
fs-util: Add XO_SUBVOLUME flag for xopenat()
...
When specified, xopenat() will try to create a btrfs subvolume and
fall back to creating a regular directory.
2023-08-14 18:46:08 +02:00
Daan De Meyer
e54c79ccc2
btrfs-util: Move subvolume creation to basic/btrfs.h
...
Also make btrfs_subvol_make() an openat style function.
2023-08-14 18:46:08 +02:00
Daan De Meyer
6819924c30
path-util: Make ret argument optional for path_extract_directory()
2023-08-14 18:46:06 +02:00
Daan De Meyer
672de611dd
Merge pull request #28828 from DaanDeMeyer/sysupdate-fdisk
...
fdisk-util: Make fdisk_new_context_fd() more generic
2023-08-14 14:23:03 +02:00
Daan De Meyer
e36c6210b7
dissect-image: Fix mount_point_is_available()
...
We call dir_is_empty() to check if the directory is empty but don't
take the result into account when returning from the function.
2023-08-14 14:22:38 +02:00
Daan De Meyer
2af02e6165
tree-wide: Always include <net/if.h> before related linux headers
...
Otherwise, we get redefinition errors if <net/if.h> is included later
on by another header.
2023-08-14 13:16:46 +02:00
Daan De Meyer
93f125a66f
repart: Use 4096 as the fallback sector size for verity/luks/filesystems
...
When we don't know the sector size of the actual block device, because
we're building an image in a loopback file and no sector size was specified
explicitly, let's use 4096 as the sector size for filesystems, verity and
LUKS. This should be the most compatible option, since 4096 will also work
on devices with sector size 512 or 2048.
For the actual GPT partition table size, we stick with 512 as the default
value since UEFI firmware and the kernel will only try to read the GPT
partition table from the first LBA on the device and the sector size for
most devices is still 512. It can also be trivially modified when copying
the image to another device using --copy-from + --sector-size.
2023-08-14 11:04:52 +02:00
Daan De Meyer
4492eb1186
tree-wide: Use fdisk_new_context_at() more
2023-08-14 10:42:43 +02:00
Daan De Meyer
fd9fe57a26
fdisk-util: Make fdisk_new_context_fd() more generic
...
Let's make this an openat() style function so we can also pass a
device path.
2023-08-14 10:27:57 +02:00
Daan De Meyer
59120e89d8
Merge pull request #28827 from gioele/docs-fix-network-online-example-unit
...
docs/NETWORK_ONLINE: Move `Type=`, `RemainAfterExit=` to `[Service]` + Use `until` instead of `while !`
2023-08-14 10:08:20 +02:00
Gioele Barabucci
4a899c5a23
docs/NETWORK_ONLINE: Use until instead of while !
...
`until` is the standard POSIX shell builtin to be used when waiting for
a condition to appear.
2023-08-14 09:15:31 +02:00
Gioele Barabucci
3078ece8c4
docs/NETWORK_ONLINE: Move Type=, RemainAfterExit= to [Service]
...
`Type=` and `RemainAfterExit=` belong in `[Service]`, not `[Unit]`.
Fixes #28826
2023-08-14 09:15:21 +02:00
Susant Sahani
3912d49d0d
network: ndisc - Ignore route information if reserved (10) value is
...
received
RFC4191 – Section 2.3 Route Information Option's Prf field:
If the Reserved (10) value is received, the Route Information Option MUST be ignored.
2023-08-14 12:43:38 +09:00
Mike Yuan
031a399d87
sleep: clear EFI HibernateLocation if writing kernel config fails
...
Follow-up for f1f331a252
2023-08-13 22:12:32 +01:00
Yu Watanabe
57ffa99daa
core: drop redundant assignment of UNIT_MERGED in unit_load_fragment()
...
If the unit is merged into another unit, then the load state is already
set in merge_by_names() -> unit_merge(). Let's drop the redundant assignment.
2023-08-13 12:56:08 +01:00
Yu Watanabe
e3390a22dc
Merge pull request #28744 from YHNdnzj/battery-check-minor-followup
...
battery-util: minor follow-ups
2023-08-13 19:27:56 +09:00
Yu Watanabe
88321d5d77
Merge pull request #28809 from YHNdnzj/proc-cmdline-true-when-missing
...
proc-cmdline: introduce PROC_CMDLINE_TRUE_WHEN_MISSING and use it where appropriate
2023-08-13 19:25:22 +09:00
Sam James
0b4e0943a0
basic: add comment for LFS assert in dirent-util.h
...
Followup to eb29296937 as promised; requested
by lennart at https://github.com/systemd/systemd/pull/27599#discussion_r1192619263 .
2023-08-13 10:40:36 +01:00
Luca Boccassi
a0b0b670ab
test: skip test-path on Salsa CI
...
Salsa is the Debian git forge. In the package build environment test-path
always fails as we cannot set up cgroups and so the path unit fails to
start. Skip the test in that environment.
Unfortunately meson doesn't allow to skip individual tests by name.
2023-08-13 10:27:04 +01:00
Mike Yuan
46b0b7e24a
battery-util: log_notice when unsure about battery state
...
Follow-up for 02f7f8aa4f
This deserves some highlight.
Addresses https://github.com/systemd/systemd/pull/28597#discussion_r1288592726
2023-08-13 13:02:58 +08:00
Mike Yuan
60d83c3e86
battery-util: don't log duplicate message
...
Follow-up for 02f7f8aa4f
Addresses https://github.com/systemd/systemd/pull/28597#discussion_r1288591215
> this is pretty unnecessary, battery_read_capacity_percentage()
debug logs on its own about this already, in more detailed way?
2023-08-13 13:02:57 +08:00
Mike Yuan
022a19c9f6
reboot-util: cache the result of shall_restore_state
2023-08-13 12:54:56 +08:00
Mike Yuan
ca05933a1b
battery-check: use proc_cmdline_get_bool
2023-08-13 12:52:16 +08:00
Mike Yuan
9d7b189bf3
fstab-util: make use of PROC_CMDLINE_TRUE_WHEN_MISSING
2023-08-13 12:52:15 +08:00
Mike Yuan
60499ed1c8
proc-cmdline: do assert on flags earlier
2023-08-13 12:52:15 +08:00
Mike Yuan
97d5f09bd2
proc-cmdline: introduce PROC_CMDLINE_TRUE_WHEN_MISSING
2023-08-13 12:52:15 +08:00
Luca Boccassi
f7590e3cb4
mkosi: disable key check on Fedora Rawhide for now
...
There are key issues so jobs are failing, disable the check for now
2023-08-12 22:58:46 +02:00
Yu Watanabe
0d290cbcd6
test: disable TEST-08-INITRD on ubuntu CI
...
Currently, the test does not work on ubuntu CI, unfortunately.
Let's disable it at least tentatively.
2023-08-12 18:12:43 +01:00
Yu Watanabe
c208bf3324
test: fix expected result of systemd-repart
...
Follow-up for e1536d1fb0 .
Fixes #28807 .
Replaces #28802 .
2023-08-12 18:11:46 +01:00
Daan De Meyer
1d117b068f
mkfs-util: Pass sector size to mkfs.f2fs
...
Let's pass the sector size to mkfs.f2fs as well.
2023-08-12 13:29:50 +02:00
Daan De Meyer
89dfac6b8f
mkfs-util: Set sector size environment variables when invoking mkfs.ext4
...
Let's inform mkfs.ext4 about the sector size we're using.
2023-08-12 13:28:10 +02:00
Yu Watanabe
5cdcaf89be
meson: drop unnecessary dependency on libidn
2023-08-12 20:04:51 +09:00
Yu Watanabe
ba77e00659
Merge pull request #28801 from mrc0mmand/initrd-shutdown-test
...
test: introduce TEST-08-INITRD
2023-08-12 20:04:06 +09:00
Rahil Bhimjiani
f5263dd09e
man: kernel-install(8) add uki.conf in FILES & add ukify(1) in SEE ALSO
...
Signed-off-by: Rahil Bhimjiani <rahil3108@gmail.com >
2023-08-12 11:24:43 +01:00
Frantisek Sumsal
7294632c2c
test: introduce TEST-08-INITRD
...
And move the initrd related tests from TEST-01-BASIC there.
Additionally, this should provide coverage for recemt shutdown initrd
related issues, see:
- https://github.com/systemd/systemd/issues/28645
- https://github.com/systemd/systemd/pull/28648
- https://github.com/systemd/systemd/pull/28793
2023-08-12 10:13:56 +02:00
Yu Watanabe
353c8497b1
Merge pull request #28784 from yuwata/udev-vs-tmpfiles-take-3
...
Udev vs tmpfiles take 3
2023-08-12 13:12:10 +09:00
Luca Boccassi
3748aec575
Merge pull request #28799 from bluca/fixlets
...
core: some fixlets
2023-08-12 00:25:15 +01:00