Skip to content

Steps to Enable Async-SFS + SwornDisk as the RootFS #333

@liqinggd

Description

@liqinggd
  • Modify the UnionFS
    We can modify the unionfs to accept async-sfs as the RW layer and the integrity-protected SEFS as the RO layer. By doing this, we can take the advantage of sefs-cli tool and the read-performance of SEFS. Thanks to the write-performance of async-sfs, the I/O throughout will meet our expectations.

  • Improve functionality of Async-SFS
    Currently, the max file size is 4GB and the max fs size is 16TB in async-sfs , which is at the same level as EXT2. We should support bigger file size and bigger fs size to be equal to EXT4. The max file size is 16TB and the max fs size is 1EB in EXT4.

  • Improve the Usability
    The total size of async-sfs should be configured in Occlum.json(or Occlum.yaml in the future), which is a bother for users.
    Can we just calculate the size according to the remaining disk size of Host OS? If the configuration is too big, just return an error to tell the users.
    The page cache size should be configurable for users, and the kernel_space_heap_size can be expanded from the page cache size automatically.

  • Improve the Stability
    Test the stability of Async-SFS + SwornDisk for all the demos

  • (Optional)Remove the as_sync_inode workaround used in vm
    If the executable binary may be stored in async-sfs, the vm subsystem should load it from async Inode instead of sync Inode. So the workaround should be fixed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions