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

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


On Wed, 29 Jul 2020 11:21:26 -0400
Tom Rini <trini at konsulko.com> wrote:

> On Wed, Jul 29, 2020 at 02:54:56PM +0200, Joao Marcos Costa wrote:
> > 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.  
> 
> We should dynamically make the images, just like ext* and fat.  The
> tests should skip when the required tools aren't found, in the same
> manner we do for other fs tests.  Thanks!
> 

Ok, thank you!

Best regards,
Joao Marcos



More information about the U-Boot mailing list