[PATCH v3 0/5] Add support for the SquashFS filesystem

Joao Marcos Costa joaomarcos.costa at bootlin.com
Wed Jul 29 14:54:56 CEST 2020


On Tue, 21 Jul 2020 11:22:54 +0200
Joao Marcos Costa <joaomarcos.costa at bootlin.com> wrote:

> Hello!
> 
> This series adds support for the SquashFS filesystem. For now, zlib
> is the only supported compression type. This is my first contribution
> to U-Boot as well as to a major Open Source project.
> 
> Changes in v3:
> 	- Replace CONFIG_IS_ENABLED by IS_ENABLED in fs/fs.c
> Changes in v2:
> 	- Replace sqfs_ls() by U-Boot's fs_ls_generic()
> 	- Add info. to MAINTAINERS
> 	- Fix build failures
> 	- Fix style problems
> 
> Best regards,
> Joao Marcos Costa
> 
> Joao Marcos Costa (5):
>   fs/squashfs: new filesystem
>   fs/squashfs: add filesystem commands
>   include/u-boot, lib/zlib: add sources for zlib decompression
>   fs/squashfs: add support for zlib decompression
>   fs/fs.c: add symbolic link case to fs_ls_generic()
> 
>  MAINTAINERS                     |    7 +
>  cmd/Kconfig                     |    6 +
>  cmd/Makefile                    |    1 +
>  cmd/sqfs.c                      |   42 +
>  common/spl/Kconfig              |    9 +
>  fs/Kconfig                      |    2 +
>  fs/Makefile                     |    2 +
>  fs/fs.c                         |   18 +
>  fs/squashfs/Kconfig             |   10 +
>  fs/squashfs/Makefile            |    7 +
>  fs/squashfs/sqfs.c              | 1521
> +++++++++++++++++++++++++++++++ fs/squashfs/sqfs_decompressor.c |
> 53 ++ fs/squashfs/sqfs_decompressor.h |   58 ++
>  fs/squashfs/sqfs_dir.c          |  107 +++
>  fs/squashfs/sqfs_filesystem.h   |  300 ++++++
>  fs/squashfs/sqfs_inode.c        |  142 +++
>  fs/squashfs/sqfs_utils.h        |   49 +
>  include/fs.h                    |    1 +
>  include/squashfs.h              |   25 +
>  include/u-boot/zlib.h           |   32 +
>  lib/zlib/uncompr.c              |   97 ++
>  lib/zlib/zlib.c                 |    1 +
>  22 files changed, 2490 insertions(+)
>  create mode 100644 cmd/sqfs.c
>  create mode 100644 fs/squashfs/Kconfig
>  create mode 100644 fs/squashfs/Makefile
>  create mode 100644 fs/squashfs/sqfs.c
>  create mode 100644 fs/squashfs/sqfs_decompressor.c
>  create mode 100644 fs/squashfs/sqfs_decompressor.h
>  create mode 100644 fs/squashfs/sqfs_dir.c
>  create mode 100644 fs/squashfs/sqfs_filesystem.h
>  create mode 100644 fs/squashfs/sqfs_inode.c
>  create mode 100644 fs/squashfs/sqfs_utils.h
>  create mode 100644 include/squashfs.h
>  create mode 100644 lib/zlib/uncompr.c
> 

Hello again, 

I am currently writing tests for the SquashFS support. I wrote two
Python scripts to test 'ls' and 'load' commands, but I need a SquashFS
image to do so, and I would like to know what is the better approach
for this:
- Add a compiled SquashFS image into the same directory as the tests,
i.e.: test/py/tests/test_fs/test_squashfs. This is a +-7MB sized binary
file.
- Use the scripts to generate an image, with mksquashfs. However,
mksquashfs becomes a dependency.

Best regards,
Joao Marcos






More information about the U-Boot mailing list