• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

systemd / systemd / 27586153657
73%

Build:
DEFAULT BRANCH: main
Ran 16 Jun 2026 03:43AM UTC
Jobs 1
Files 2130
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

15 Jun 2026 11:16PM UTC coverage: 72.874% (-0.05%) from 72.921%
27586153657

push

github

bluca
loop-util: shortcut block device fd when it carries no partition table

663f0bf5cb stopped reusing the original block device fd whenever
partition scanning was requested (LO_FLAGS_PARTSCAN) but couldn't be
enabled on the device, so that nested partition tables on devices the
kernel won't scan (e.g. the pmOS/android case) get exposed via a real
loop device.

However that also forced a pointless loop device for any partition that
carries a file system directly, e.g. a btrfs subvolume mounted via
MountImages=. For multi-device btrfs this is fatal: the kernel rejects
seeing the same member via both the original partition and the loop
device, and the mount fails.

A loop device is only ever needed here to expose a nested partition
table. So only refuse the shortcut when the device actually carries one,
probed via gpt_probe(), instead of whenever partition scanning is
disabled. Devices carrying a file system directly (or nothing) take the
shortcut as before.

Add an integration test to cover the failure scenario of the original
issue.

Fixes: https://github.com/systemd/systemd/issues/42520
Replaces: https://github.com/systemd/systemd/pull/42576
Follow-up for 663f0bf5c

Co-Authored-By: Luca Boccassi <luca.boccassi@gmail.com>
Co-developed-by: Claude Opus 4.8 <noreply@anthropic.com>

79 of 128 new or added lines in 4 files covered. (61.72%)

1429 existing lines in 45 files now uncovered.

337157 of 462659 relevant lines covered (72.87%)

1301936.47 hits per line

Uncovered Changes

Lines Coverage ∆ File
38
28.83
2.04% src/test/test-loop-util.c
8
80.38
-0.06% src/shared/dissect-image.c
3
67.74
2.51% src/shared/loop-util.c

Coverage Regressions

Lines Coverage ∆ File
975
65.04
-10.47% src/repart/repart.c
203
74.77
-3.61% src/bootctl/bootctl-install.c
52
58.96
0.4% src/portable/portabled-image-bus.c
33
69.21
-0.88% src/udev/udev-builtin-blkid.c
29
70.77
-0.42% src/core/service.c
25
48.01
-8.28% src/login/logind-inhibit.c
11
80.93
-5.12% src/udev/udevadm-wait.c
11
85.36
-1.19% src/udev/udev-manager.c
10
72.71
-0.67% src/bootctl/bootctl-link.c
8
78.05
-0.45% src/network/networkd-ndisc.c
7
82.27
-1.39% src/shared/bus-polkit.c
5
81.0
-0.92% src/core/timer.c
4
69.9
-0.13% src/core/exec-invoke.c
4
79.85
-0.76% src/journal-remote/journal-upload-journal.c
4
39.81
0.0% src/login/logind-dbus.c
4
83.11
0.49% src/resolve/resolved-link.c
3
75.0
-2.68% src/coredump/coredump-vacuum.c
3
81.59
-1.08% src/libsystemd-network/sd-lldp-rx.c
3
56.0
-0.23% src/login/logind-session.c
3
53.47
-0.87% src/tty-ask-password-agent/tty-ask-password-agent.c
3
82.95
1.55% src/udev/udevadm-monitor.c
2
80.28
-0.12% src/core/execute.c
2
79.25
0.13% src/core/job.c
2
92.64
-0.05% src/libsystemd/sd-journal/journal-file.c
2
88.62
-0.16% src/network/networkd-address.c
2
61.01
-0.19% src/shared/pkcs11-util.c
1
97.65
-0.1% src/basic/hashmap.c
1
43.77
-0.07% src/basic/terminal-util.c
1
78.17
-0.18% src/core/dbus.c
1
82.93
0.0% src/core/manager.c
1
65.49
-0.05% src/core/socket.c
1
68.59
0.52% src/import/import-fs.c
1
77.14
-1.43% src/login/logind-utmp.c
1
33.86
0.9% src/login/logind-varlink.c
1
71.04
-0.12% src/machine/machine.c
1
73.22
-0.09% src/network/networkd-dhcp4.c
1
74.27
18.26% src/oom/oomd-manager.c
1
77.36
-0.16% src/resolve/resolved-dns-server.c
1
81.46
-0.23% src/resolve/resolved-hook.c
1
67.6
-0.35% src/resolve/resolved-llmnr.c
1
44.72
-0.27% src/resolve/resolved-mdns.c
1
96.67
-0.13% src/shared/calendarspec.c
1
84.21
-5.26% src/shared/dissect-image.h
1
81.18
-1.18% src/shared/journal-util.c
1
94.09
-0.1% src/test/test-time-util.c
Jobs
ID Job ID Ran Files Coverage
1 27586153657.1 16 Jun 2026 03:43AM UTC 2130
72.87
GitHub Action Run
Source Files on build 27586153657
  • Tree
  • List 2130
  • Changed 89
  • Source Changed 12
  • Coverage Changed 87
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #27586153657
  • 3978b076 on github
  • Prev Build on main (#27517269012)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc