tests: support mkfs.ext4 without metadata_csum

Modify various test/py filesystem creation routines to support systems
that don't implement the metadata_csum ext4 feature.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
This commit is contained in:
Stephen Warren 2020-08-04 11:28:33 -06:00 committed by Tom Rini
parent edca8edd79
commit cc88625370
2 changed files with 8 additions and 3 deletions

View File

@ -416,7 +416,10 @@ def mk_env_ext4(state_test_env):
else:
try:
u_boot_utils.run_and_log(c, 'dd if=/dev/zero of=%s bs=1M count=16' % persistent)
u_boot_utils.run_and_log(c, 'mkfs.ext4 -O ^metadata_csum %s' % persistent)
u_boot_utils.run_and_log(c, 'mkfs.ext4 %s' % persistent)
sb_content = u_boot_utils.run_and_log(c, 'tune2fs -l %s' % persistent)
if 'metadata_csum' in sb_content:
u_boot_utils.run_and_log(c, 'tune2fs -O ^metadata_csum %s' % persistent)
except CalledProcessError:
call('rm -f %s' % persistent, shell=True)
raise

View File

@ -149,8 +149,6 @@ def mk_fs(config, fs_type, size, id):
mkfs_opt = '-F 16'
elif fs_type == 'fat32':
mkfs_opt = '-F 32'
elif fs_type == 'ext4':
mkfs_opt = '-O ^metadata_csum'
else:
mkfs_opt = ''
@ -167,6 +165,10 @@ def mk_fs(config, fs_type, size, id):
% (fs_img, count), shell=True)
check_call('mkfs.%s %s %s'
% (fs_lnxtype, mkfs_opt, fs_img), shell=True)
if fs_type == 'ext4':
sb_content = check_output('tune2fs -l %s' % fs_img, shell=True).decode()
if 'metadata_csum' in sb_content:
check_call('tune2fs -O ^metadata_csum %s' % fs_img, shell=True)
return fs_img
except CalledProcessError:
call('rm -f %s' % fs_img, shell=True)