Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-16155

allow importing inode/block allocation maps to new ldisks filesystem

Details

    • 9223372036854775807

    Description

      In order to more efficiently test mballoc performance in the face of full and fragmented filesystems, it would be useful to be able to efficiently fill a newly-formatted filesystem with a realistic block and inode allocation pattern, without having to write a large amount of data, or create millions of files. This should be done using an actual allocation pattern quickly, rather than just using a synthetic ratio of free blocks.

      It should be possible to take the output from "dumpe2fs <dev>" as the input to "debugfs --import-bitmaps <input_file>" to have it set the block and inode bitmaps in the new target filesystem that are set in the source filesystem. This process shouldn't clear any bits in the bitmap, to avoid corrupting existing files and directories by double-allocating the blocks and inodes during testing. The kernel would skip those blocks and inodes for allocation until e2fsck is run on the filesystem. This would normally be used only for test filesystems.

      For source filesystems smaller than the target filesystem, it can repeat the allocation pattern for the block groups as needed until all of the groups in the target filesystem has been "filled".

      Rather than setting each bit in the bitmap separately, which would be billions of operations for a large filesystem, the code should use the free bitmap ranges provided by debugfs to set contiguous ranges of bits in the bitmap.

      Attachments

        Issue Links

          Activity

            [LU-16155] allow importing inode/block allocation maps to new ldisks filesystem
            adilger Andreas Dilger made changes -
            Labels Original: e2fsprogs ldiskfs performance New: e2fsprogs ldiskfs performance test_script_improvements
            emoly.liu Emoly Liu made changes -
            Link Original: This issue is related to LU-16954 [ LU-16954 ]
            emoly.liu Emoly Liu made changes -
            Link New: This issue is related to LU-16954 [ LU-16954 ]
            emoly.liu Emoly Liu made changes -
            Link New: This issue is related to EX-7676 [ EX-7676 ]
            adilger Andreas Dilger made changes -
            Assignee Original: Artem Blagodarenko [ ablagodarenko ] New: Emoly Liu [ emoly.liu ]
            lixi_wc Li Xi made changes -
            Link New: This issue is related to EX-7628 [ EX-7628 ]
            adilger Andreas Dilger made changes -
            Link New: This issue is related to LU-13014 [ LU-13014 ]
            adilger Andreas Dilger made changes -
            Labels Original: e2fsprogs ldiskfs performance tes New: e2fsprogs ldiskfs performance
            adilger Andreas Dilger made changes -
            Labels Original: e2fsprogs ldiskfs performance New: e2fsprogs ldiskfs performance tes
            adilger Andreas Dilger made changes -
            Labels New: e2fsprogs ldiskfs performance

            People

              emoly.liu Emoly Liu
              adilger Andreas Dilger
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated: