Skip to content

Unify partition layout: 2GB (EFI) + 4GB (rootfs)#5735

Merged
eriknordmark merged 1 commit intolf-edge:masterfrom
rene:increase-part-layout
Apr 15, 2026
Merged

Unify partition layout: 2GB (EFI) + 4GB (rootfs)#5735
eriknordmark merged 1 commit intolf-edge:masterfrom
rene:increase-part-layout

Conversation

@rene
Copy link
Copy Markdown
Contributor

@rene rene commented Apr 2, 2026

Description

In order to keep backward compatibility, the partition layout of non eve-k variants has been kept the same since version 10.2.0, where EFI and rootfs partitions (IMGA/IMGB) are partitioned as the following:

  • EFI - 36MB
  • IMGA - 512MB
  • IMGB - 512MB

Commit 5db29bd fixed partition layout for eve-k as the following:

  • EFI - 2GB
  • IMGA - 4GB
  • IMGB - 4GB

This new layout allows not only the growing of rootfs but also the growing of EFI space for new features, if required.

This commit unifies partition layout across all EVE variants, so all images should have the same scheme: EFI (2GB), IMGA/IMGB (4GB).

The 300MB limitation is not changed, so generic rootfs images can still be upgraded from the remote controller. However, for NVIDIA variants the maximum size is set to 4GB. This is a requirement for the Jetpack 7.1, which has exceeded the current size limit.

How to test and validate this PR

Run lsblk and verify the size of the partitions match:

  1. EFI: 2G
  2. IMGA: 4G
  3. IMBB: 4G

Changelog notes

Unify partition layout to a consistent 2GB (EFI) + 4GB (rootfs) scheme across all EVE variants, including eve-k and eve-kvm, eliminating per-variant differences. This applies to freshly installed devices - no impact on already deployed devices.

PR Backports

This is a "new feature", so no backports.

Checklist

  • I've provided a proper description
  • I've added the proper documentation
  • I've tested my PR on amd64 device
  • I've tested my PR on arm64 device
  • I've written the test verification instructions
  • I've set the proper labels to this PR
  • I've checked the boxes above, or I've provided a good reason why I didn't
    check them.

@github-actions github-actions Bot requested a review from jsfakian April 2, 2026 15:08
@rene rene force-pushed the increase-part-layout branch from 183a8df to 5e73a72 Compare April 2, 2026 15:59
@rucoder
Copy link
Copy Markdown
Contributor

rucoder commented Apr 2, 2026

@rene wy we need 2GB for EFI? even windows uses ~300Mb for dual boot

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 2, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 29.87%. Comparing base (2281599) to head (d5a4d19).
⚠️ Report is 488 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff             @@
##           master    #5735       +/-   ##
===========================================
+ Coverage   19.52%   29.87%   +10.34%     
===========================================
  Files          19       18        -1     
  Lines        3021     2417      -604     
===========================================
+ Hits          590      722      +132     
+ Misses       2310     1549      -761     
- Partials      121      146       +25     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Contributor

@eriknordmark eriknordmark left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@rene
Copy link
Copy Markdown
Contributor Author

rene commented Apr 7, 2026

@rene wy we need 2GB for EFI? even windows uses ~300Mb for dual boot

@rucoder , for now the only reason is solely to keep compatibility with eve-k, so both have the same size. There was a discussion in the past about change the boot mechanism to be more compatible with standard schemes, where kernel + initrd stays in the EFI partition and also put more dtbs and other firmware files required for Raspberry Pi and other arm64 devices. Open room for EVE 2.0 (if needed) was also considered. Is 2GB exaggerated? I think so, but TBH I wasn't involved in all these discussions and I don't recall all the details, I believe there were more plans to justify this size. I don't mind to reduce the EFI size, but at the same time, I don't see issues to just follow what is in eve-k and keep a very big room for feature changes that won't hit us with space issues again. So my final vote is just to keep it as it is (2GB)....

@rene rene force-pushed the increase-part-layout branch from 5e73a72 to c4b0827 Compare April 8, 2026 07:54
@github-actions github-actions Bot requested a review from eriknordmark April 8, 2026 07:54
@rene rene mentioned this pull request Apr 8, 2026
7 tasks
@rene rene force-pushed the increase-part-layout branch from c4b0827 to 66dc588 Compare April 13, 2026 08:58
@rene
Copy link
Copy Markdown
Contributor Author

rene commented Apr 13, 2026

Updates in this PR:

  • Rebase on top of master

@rene rene force-pushed the increase-part-layout branch from 66dc588 to d5a4d19 Compare April 13, 2026 09:01
Copy link
Copy Markdown
Contributor

@eriknordmark eriknordmark left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Run tests.

But does this imply that a test which does
make installer-raw run-installer-raw run-target
will use up lots more disk space compared to prior to the change?

Will this impact Eden runs?

@eriknordmark
Copy link
Copy Markdown
Contributor

Looks like all of the Eden steps fail. I didn't inspect why.

@rene
Copy link
Copy Markdown
Contributor Author

rene commented Apr 14, 2026

Eden must be updated. Default EVE image size is 8GB: https://github.com/lf-edge/eve/actions/runs/24349483474/job/71230058791#step:4:565

I will open a PR on Eden....

In order to keep backward compatibility, the partition layout of non eve-k
variants has been kept the same since version 10.2.0, where EFI and rootfs
partitions (IMGA/IMGB) are partitioned as the following:

* EFI  - 36MB
* IMGA - 512MB
* IMGB - 512MB

Commit 5db29bd fixed partition layout for
eve-k as the following:

* EFI  - 2GB
* IMGA - 4GB
* IMGB - 4GB

This new layout allows not only the growing of rootfs but also the growing
of EFI space for new features, if required.

This commit unifies partition layout across all EVE variants, so all images
should have the same scheme: EFI (2GB), IMGA/IMGB (4GB).

The 300MB limitation is not changed, so generic rootfs images can still
be upgraded from the remote controller. However, for NVIDIA variants the
maximum size is set to 4GB. This is a requirement for the Jetpack 7.1,
which has exceeded the current size limit.

Signed-off-by: Renê de Souza Pinto <rene@renesp.com.br>
@rene rene force-pushed the increase-part-layout branch from d5a4d19 to cad2729 Compare April 14, 2026 16:03
@github-actions github-actions Bot requested a review from eriknordmark April 14, 2026 16:04
@eriknordmark
Copy link
Copy Markdown
Contributor

FWIW 4/4 Eden smoke test failures in the known FAIL: TestHWInventory

@eriknordmark eriknordmark merged commit dec685f into lf-edge:master Apr 15, 2026
41 of 47 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants