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

mendersoftware / mender / 1054468625
58%
master: 80%

Build:
Build:
LAST BUILD BRANCH: 5.0.x
DEFAULT BRANCH: master
Ran 30 Oct 2023 09:23AM UTC
Jobs 7
Files 58
Run time 11s
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

30 Oct 2023 08:04AM UTC coverage: 58.179%. First build
1054468625

Pull #1452

gitlab-ci

kacf
fix: Fix possible missing `Sync` call at the very end of the update.

We need to override the `Close` method so that we call `Sync` as the
final thing before closing. Most boards are not affected by this,
because the flushing interval is set to the native sector size of the
board, which, AFAIK, is 512 for all normal block devices except raw
Flash storage. I consider it very unlikely that a filesystem would not
be a multiple of 512 (maybe squashfs?), which means that by the time
we get to `Close()`, `Sync()` will usually have been called already
because the last write was 512 bytes or bigger.

But on raw Flash filesystems it can potentially happen, if the native
sector size is big, and the filesystem is not a multiple of this
number.

Changelog: Fix a rare bug which could corrupt the very end of a
rootfs-image update on a sudden powerloss. The circumstances where it
could happen are quite specific: The filesystem size in the update
need to *not* be a multiple of the native sector size, which is very
uncommon. The sector size is typically 512 bytes almost everywhere,
and hence filesystem also follow this block size, if not bigger. The
exception is raw Flash/UBI devices, where the sector size can be much
larger, and not a power of two, and hence these platforms may be more
susceptible.

Ticket: None

Signed-off-by: Kristian Amlie <kristian.amlie@northern.tech>
(cherry picked from commit ff0db6042)
Pull Request #1452: fix: Fix possible missing `Sync` call at the very end of the update.

7 of 8 new or added lines in 1 file covered. (87.5%)

6359 of 10930 relevant lines covered (58.18%)

30.99 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
78.9
installer/block_device.go
Jobs
ID Job ID Ran Files Coverage
1 acceptance-vexpress_qemu_flash - 1054468625.1 30 Oct 2023 09:34AM UTC 58
17.58
2 acceptance-vexpress_qemu - 1054468625.2 30 Oct 2023 09:59AM UTC 58
18.49
3 acceptance-qemux86_64_uefi_grub - 1054468625.3 30 Oct 2023 09:29AM UTC 58
17.34
4 acceptance-qemux86_64_bios_grub_gpt - 1054468625.4 30 Oct 2023 09:23AM UTC 58
17.88
5 acceptance-qemux86_64_bios_grub - 1054468625.5 30 Oct 2023 09:24AM UTC 58
17.88
6 acceptance-vexpress_qemu_uboot_uefi_grub - 1054468625.6 30 Oct 2023 09:56AM UTC 58
17.88
7 acceptance-qemux86_64_uefi_grub-cross-platform - 1054468625.7 30 Oct 2023 10:09AM UTC 58
57.25
Source Files on build 1054468625
  • Tree
  • List 58
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • GitLab CI Build #1054468625
  • Pull Request #1452
  • PR Base - 3.5.x (#945584827)
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

© 2025 Coveralls, Inc