subsys: fs: Implementation of ext2 file system by fzdobylak · Pull Request #55152 · zephyrproject-rtos/zephyr

nordicjm

nordicjm

nordicjm

Make test_fs_dirops test common.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Use test_fs_dirops in ext2 tests.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Introduce fs_sync function

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Make test_fs_basic test common.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Use test_fs_basic test in ext2 tests.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Changes:
  - Add fs::sync function
  - Make correct file system in mkfs
  - Add few assertions to ensure that all assumptions are correct

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Remove 'lost+found' dir in test that expects empty layout of directory.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Changes:
  - Added few assertions to check if some assumptions are correct
  - Fix removing blocks during trucate and inode removal
  - Clear entry in inode table after inode has been removed

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Create tests specific for ext2 implementation.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Added funtion that takes specified action when file system corruption is
detected. Possible actions are: do nothing, make mount point read-only,
panic.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Fix the behavior when data should be written to storage device. Now all
writes are done directly to disk_access layer (where it might possibly
be cached).

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
Sample for FAT fs is reworked to run also with Ext2 file system

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
- `ext2_file` and `ext2_dir` merged into one struct and allocated from
  dedicated slab
- `ext2_inode` allocated from dedicated slab
- `ext2_disk_dentry` allocated from heap (because their size is not
  constant)
- `ext2_bgroup` and `ext2_disk_superblock` statically allocated

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>
This commits changes how data on the disk is accessed. There are disk
structures which are packed and their fields are stored in little endian
byte order. To use data in the program structures it has to be translated
from little endian to cpu endianness.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>

@fzdobylak

Add information about new support for ext2 and modified fs sample.

Signed-off-by: Franciszek Zdobylak <fzdobylak@antmicro.com>

de-nordic

peter-mitsis