pmb: increase inode count for rootfs and use a more accurate size (!1743)

This drops the --apparent-size parameter when calculating the size
required for rootfs, which seemed to return a size that was too small
for some devices. This also includes specifying the number of inodes to
support when formatting rootfs.

Fixes #1717
This commit is contained in:
Clayton Craft 2019-01-20 15:40:50 -08:00 committed by Oliver Smith
parent 200cc80a9d
commit 24a565a59b
No known key found for this signature in database
GPG Key ID: 5AE7F5513E0885CB
3 changed files with 4 additions and 4 deletions

View File

@ -34,7 +34,6 @@ def folder_size(args, path):
:returns: folder size in bytes
"""
output = pmb.helpers.run.root(args, ["du", "--summarize",
"--apparent-size",
"--block-size=1",
path], output_return=True)
ret = int(output.split("\t")[0])

View File

@ -69,7 +69,8 @@ def format_and_mount_pm_crypt(args):
# When changing the options of mkfs.ext4, also change them in the
# recovery zip code (see 'grep -r mkfs\.ext4')!
pmb.chroot.root(args, ["mkfs.ext4", "-O", "^metadata_csum", "-F",
"-q", "-L", "pmOS_root", device])
"-q", "-L", "pmOS_root", "-N", "100000",
device])
# Mount
mountpoint = "/mnt/install"

View File

@ -49,8 +49,8 @@ def test_get_folder_size(args, tmpdir):
# Check if the size is correct. Unfortunately, the `du` call
# in pmb.helpers.other.folder_size is not very accurate, so we
# allow 10kb of tolerance (good enough for our use case): #760
tolerance = 10240
# allow 30kb of tolerance (good enough for our use case): #760 #1717
tolerance = 30 * 1024
size = 204800 * files
result = pmb.helpers.other.folder_size(args, tmpdir)
assert (result < size + tolerance and result > size - tolerance)