Trying to work with the tests

Gao Xiang hsiangkao at linux.alibaba.com
Mon Apr 22 19:12:39 AEST 2024


Hi Ian,

(+Cc Jingbo here).

On 2024/4/22 16:31, Ian Kent wrote:
> I'm new to the list so Hi to all,
> 
> 
> I'm working with a heavily patched 5.14 kernel and I've gathered together patches to bring erofs
> 
> up to 5.19 and I'm trying to run the erofs and fscache tests from a checkout of the 1.7.1 repo.
> 
> (branch experimental-tests-fscache) and I have a couple of fails I can't quite work out so I'm
> 
> hoping for a little halp.

Thanks for your interest and provide the detailed infos.

I guess a modified 5.14 kernel may be originated from RHEL 9?

I have a plan to backport the latest EROFS to CentOS stream 9, but
currently I'm busy in internal stuffs, so it's still a bit delayed...

> 
> 
> For those familiar with erofs development and history it may look like some patches are missing
> 
> but they may have already been present in the source tree I'm working with ... so just ask if
> 
> you spot anything ...
> 
> 
> Current set of patches I have is (the patch name corresponds to commit title, more or less):
> 
> + erofs-clear-compacted_2b-if-compacted_4b_initial-gt-totalidx.patch
> + erofs-add-support-for-the-full-decompressed-length.patch
> + erofs-add-fiemap-support-with-iomap.patch
> + erofs-remove-the-mapping-parameter-from-erofs_try_to_free_cached_page.patch
> + erofs-directly-use-wrapper-erofs_page_is_managed-when-shrinking.patch
> + erofs-dax-support-for-non-tailpacking-regular-file.patch
> + erofs-fix-deadlock-when-shrink-erofs-slab.patch
> + erofs-remove-useless-cache-strategy-of-DELAYEDALLOC.patch
> + erofs-fix-unsafe-pagevec-reuse-of-hooked-pclusters.patch
> + erofs-remove-the-fast-path-of-per-CPU-buffer-decompression.patch
> + erofs-decouple-basic-mount-options-from-fs_context.patch
> + erofs-add-multiple-device-support.patch
> + erofs-get-compression-algorithms-directly-on-mapping.patch
> + erofs-introduce-the-secondary-compression-head.patch
> + erofs-introduce-readmore-decompression-strategy.patch
> + erofs-rename-some-generic-methods-in-decompressor.patch
> + libxz-Avoid-overlapping-memcpy-with-invalid-input-with-in-place-decompression.patch
> + libxz-Add-MicroLZMA-decoder.patch
> + erofs-lzma-compression-support.patch
> + erofs-get-rid-of-lru-usage.patch
> + erofs-dont-trigger-WARN-when-decompression-fails.patch
> + erofs-rename-lz4_0pading-to-zero_padding.patch
> + erofs-add-sysfs-interface.patch
> + erofs-add-sysfs-node-to-control-sync-decompression-strategy.patch
> + erofs-Replace-zero-length-array-with-flexible-array-member.patch
> + erofs-clean-up-erofs_map_blocks-tracepoints.patch
> + erofs-tidy-up-z_erofs_lz4_decompress.patch
> + erofs-introduce-z_erofs_fixup_insize.patch
> + erofs-support-unaligned-data-decompression.patch
> + erofs-support-inline-data-decompression.patch
> + erofs-add-on-disk-compressed-tail-packing-inline-support.patch
> + erofs-introduce-meta-buffer-operations.patch
> + erofs-use-meta-buffers-for-inode-operations.patch
> + erofs-use-meta-buffers-for-super-operations.patch
> + erofs-use-meta-buffers-for-xattr-operations.patch
> + erofs-use-meta-buffers-for-zmap-operations.patch
> + erofs-fix-fsdax-partition-offset-handling.patch
> + erofs-avoid-unnecessary-z_erofs-decompressqueue_work-declaration.patch
> + erofs-fix-small-compressed-files-inlining.patch
> + erofs-fix-ztailpacking-on-gt-4GiB-filesystems.patch
> + erofs-use-meta-buffers-for-erofs_read_superblock.patch
> + erofs-get-rid-of-struct-z_erofs_collector.patch
> + erofs-clean-up-preload_compressed_pages.patch
> + erofs-silence-warnings-related-to-impossible-m_plen.patch
> + erofs-clean-up-z_erofs_extent_lookback.patch
> + erofs-refine-managed-inode-stuffs.patch
> + erofs-add-sanity-check-0for-kobject-in-erofs_unregister_sysfs.patch
> + erofs-use-meta-buffers-for-reading-directories.patch
> + erofs-use-meta-buffers-for-inode-lookup.patch
> + erofs-rename-ctime-to-mtime.patch
> + erofs-Convert-from-invalidatepage-to-invalidate_folio.patch
> + erofs-fix-use-after-free-of-on-stack-io.patch
> + erofs-Convert-erofs-zdata-to-read_folio.patch
> + erofs-Convert-to-release_folio.patch
> + erofs-do-not-prompt-for-risk-any-more-when-using-big-pcluster.patch
> + erofs-remove-obsoleted-comments.patch
> + erofs-refine-on-disk-definition-comments.patch
> + erofs-fix-buffer-copy-overflow-of-ztailpacking-feature.patch
> + erofs-make-filesystem-exportable.patch
> + erofs-support-idmapped-mounts.patch
> + cachefiles-document-on-demand-read-mode.patch
> + erofs-make-erofs_map_blocks-generally-available.patch
> + erofs-add-fscache-mode-check-helper.patch
> + erofs-register-fscache-volume.patch
> + erofs-add-fscache-context-helper-functions.patch
> + erofs-add-anonymous-inode-caching-metadata-for-data-blobs.patch
> + erofs-add-erofs_fscache_read_folios-helper.patch
> + erofs-register-fscache-context-for-primary-data-blob.patch
> + erofs-register-fscache-context-for-extra-data-blobs.patch
> + erofs-implement-fscache-based-metadata-read.patch
> + erofs-implement-fscache-based-data-read-for-non-inline-layout.patch
> + erofs-implement-fscache-based-data-read-for-inline-layout.patch
> + erofs-implement-fscache-based-data-readahead.patch
> + erofs-add-fsid-mount-option.patch
> + erofs-change-to-use-asynchronous-io-for-fscache-readpage_readahead.patch
> + erofs-scan-devices-from-device-table.patch
> + erofs-leave-compressed-inodes-unsupported-in-fscache-mode-for-now.patch
> + erofs-fix-crash-when-enable-tracepoint-cachefiles_prep_read.patch
> + erofs-get-rid-of-struct-z_erofs_collection.patch
> + erofs-get-rid-of-label-restart_now.patch
> + erofs-simplify-z_erofs_pcluster_readmore.patch
> + erofs-fix-backmost-member-of-z_erofs_decompress_frontend.patch
> + erofs-missing-hunks.patch
> 
> 
> The last patch consists of what looks like a few hunks added by Linus to complete a folio pull
> 
> request that came in at the same time as the 5.19 erofs merge request. I know the list of
> 
> patches isn't very useful but it should give some idea of what I have and maybe someone can
> 
> spot a missing patch or so.
> 
> 
> Anyway, my failing tests are erofs/021, erofs/022, erofs/024 and fscache/005.

I guess the following failure fails as expected:
erofs/021  -- uncompressed sub-page block sizes (esp. 512-byte block sizes, since v6.4)
erofs/022  -- long xattr prefix (since v6.4)
erofs/024  -- deflate algorithm support (since v6.6)

So these failures can be skipped on your side, I think I need to modify
these tests for gracefully skipping ... That is also why all testcases
are marked as "experimental" :-)

I'm not quite sure why "fscache/005" fails, hopefully Jingbo could
help you on this.

Thanks!
Gao Xiang

> 
> erofs/018 does not run due to "lzma compression is disabled, skipped." message which I think
> 
> is too old a version of xz.
> 
> 
> Any insight into cases that could cause these tests to fail would be much appreciated.
> 
> 
> Ian
> 
> 


More information about the Linux-erofs mailing list