From: "Pratyush Yadav (Google)" <[email protected]> Hi,
This series adds some tests for memfd preservation across a live update. Currently memfd is only tested indirectly via luo_kexec_simple or luo_multi_session. Add a dedicated test suite for it. Patches 1 and 2 are preparatory, adding base framework and helpers, and the other patches each add a test. Some of the code is taken from the libluo patches [0] I sent a while ago. [0] https://lore.kernel.org/linux-mm/[email protected]/ Changes in v2: - Drop LIVEUPDATE_DEV since it isn't used. - Split luo_fd and stage declaration on separate lines. - Split all 2-stage tests into helper function for each test. - Fix wording and argument order when LUO_DEVICE fails to open. - Rename verify_fd_content() to verify_fd_content_read(). - Advance buffer pointer in {read,write}_size(). - Add a check to make sure current working directory is not on a tmpfs mount. If so, skip the tests since saved data files will be lost. - Rename RANDOM_DATA_FILE and RANDOM_DATA_FILE_FALLOCATE to MEMFD_DATA_FS_COPY and FALLOCATE_DATA_FS_COPY respectively. Also update the file names to reflect this naming convention. - Collect R-bys. Regards, Pratyush Yadav Pratyush Yadav (Google) (6): selftests/liveupdate: add framework for memfd tests selftests/liveupdate: add helper functions for memfd tests selftests/liveupdate: add test for memfd content preservation selftests/liveupdate: add test for zero-size memfd preservation selftests/liveupdate: add test for operations on a preserved memfd selftests/liveupdate: add fallocate test for memfd tools/testing/selftests/liveupdate/Makefile | 2 + .../testing/selftests/liveupdate/luo_memfd.c | 355 ++++++++++++++++++ .../selftests/liveupdate/luo_test_utils.c | 189 +++++++++- .../selftests/liveupdate/luo_test_utils.h | 10 + 4 files changed, 555 insertions(+), 1 deletion(-) create mode 100644 tools/testing/selftests/liveupdate/luo_memfd.c base-commit: 98ddd87f9704ef2fc837ec2ca38877c364d8dada -- 2.53.0.1213.gd9a14994de-goog

