u-boot/test/py
Tom Rini e2a9edc0ce Merge patch series "fs: fat: calculate FAT type based on cluster count"
To quote the author:

This series fixes an issue where the FAT type (FAT12, FAT16) is not
correctly detected, e.g. when the BPB field BS_FilSysType contains the
valid value "FAT     ".

This issue occures, for example, if a partition is formatted by
swupdate using its diskformat handler. swupdate uses the FAT library
from http://elm-chan.org/fsw/ff/ internally.

See https://groups.google.com/g/swupdate/c/7Yc3NupjXx8 for a
discussion in the swupdate mailing list.

Please refer to the commit messages for more details.

1. Added bootsector checks

Most tests from https://www.win.tue.nl/~aeb/linux/fs/fat/fat-2.html
are added in the commit 'fs: fat: add bootsector validity check'.
Only the tests VIII, IX and X are not implemented.

I also checked the Linux kernel code (v6.6) and did not find any
checks on 'vistart->fs_type'. This is the reason why is skipped them
here.

See section '2. Size comparisons' for the impact on the binary size.

2. Size comparisons

I executed bloat-o-meter from the Linux kernel for an arm64
target (config xilinx_zynqmp_mini_emmc0_defconfig):

Comparison of the binary spl/u-boot-spl between master (rev
e17d174773) and this patch
series (including the added validity checks of the boot sector):

add/remove: 0/0 grow/shrink: 1/1 up/down: 100/-12 (88)
Function                                     old     new   delta
read_bootsectandvi                           308     408    +100
fat_itr_root                                 444     432     -12
Total: Before=67977, After=68065, chg +0.13%

When compare the size of the binary spl/u-boot-spl between master this
series without the the validity checks of the boot sector:

add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-24 (-24)
Function                                     old     new   delta
read_bootsectandvi                           308     296     -12
fat_itr_root                                 444     432     -12
Total: Before=67977, After=67953, chg -0.04%

So the size of the spl on this arm64 target increases by 88 bytes for
this series. When i remove the validity check the size decreases by 24 bytes.
2023-11-28 20:10:36 -05:00
..
tests Merge patch series "fs: fat: calculate FAT type based on cluster count" 2023-11-28 20:10:36 -05:00
.gitignore test/py: Implement pytest infrastructure 2016-01-20 19:06:23 -07:00
conftest.py test: Support tests which can only be run manually 2022-10-31 11:02:44 -04:00
multiplexed_log.css SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
multiplexed_log.py test: Add a way to set the environment for a pytest 2023-02-14 09:43:27 -07:00
pytest.ini test/py: Allow tests to be marked single-threaded only 2022-09-12 18:06:36 -04:00
requirements.txt python: Update requirements.txt for security issues 2023-06-20 16:08:13 -04:00
test.py pytest: Shorten traceback length by default 2021-10-14 19:45:07 -04:00
u_boot_console_base.py test/py: Reset the console timeout value 2022-05-26 10:27:14 -04:00
u_boot_console_exec_attach.py test: fix pylint error in u_boot_console_exec_attach.py 2021-11-26 22:02:37 +01:00
u_boot_console_sandbox.py test/py: Add a way to start sandbox without a device tree 2022-05-05 09:28:48 -04:00
u_boot_spawn.py test: fix pylint errors in u_boot_spawn.py 2021-11-26 22:02:37 +01:00
u_boot_utils.py test: Add a way to set the environment for a pytest 2023-02-14 09:43:27 -07:00