git: 5105623711 - main - Status/2023Q3/squashfs.adoc: Add report
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 05 Oct 2023 09:01:13 UTC
The branch main has been updated by salvadore: URL: https://cgit.FreeBSD.org/doc/commit/?id=51056237110751b4662a4ba9a61b5a50059043ad commit 51056237110751b4662a4ba9a61b5a50059043ad Author: Raghav Sharma <raghav@FreeBSD.org> AuthorDate: 2023-10-05 08:43:22 +0000 Commit: Lorenzo Salvadore <salvadore@FreeBSD.org> CommitDate: 2023-10-05 09:01:05 +0000 Status/2023Q3/squashfs.adoc: Add report Reviewed by: Graham Perrin <grahamperrin@gmail.com> Pull Request: https://github.com/freebsd/freebsd-doc/pull/274 --- .../en/status/report-2023-07-2023-09/squashfs.adoc | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/website/content/en/status/report-2023-07-2023-09/squashfs.adoc b/website/content/en/status/report-2023-07-2023-09/squashfs.adoc new file mode 100644 index 0000000000..70fd1484a4 --- /dev/null +++ b/website/content/en/status/report-2023-07-2023-09/squashfs.adoc @@ -0,0 +1,29 @@ +=== SquashFS driver for FreeBSD kernel + +Links: + +link:https://wiki.freebsd.org/SummerOfCode2023Projects/PortSquashFuseToTheFreeBSDKernel[Wiki page] URL: link:https://wiki.freebsd.org/SummerOfCode2023Projects/PortSquashFuseToTheFreeBSDKernel[] + +link:https://github.com/Mashijams/freebsd-src/tree/gsoc/testing[Source code] URL: link:https://github.com/Mashijams/freebsd-src/tree/gsoc/testing[] + +Contact: Raghav Sharma <raghav@FreeBSD.org> + +This quarter we finished SquashFS driver work for the kernel. +We now can mount SquashFS archives on FreeBSD 13.2-RELEASE or greater, and perform all basic read-only filesystem operations. + +Code work includes: + +* Implementing vop_lookup() and vop_readdir() hooks for directory read support. +* Implementing vop_read() and vop_strategy() hooks for files read support. +* Implementing vop_readlink() hook for symlinks read support. + +We also implemented extended attributes interface functions for SquashFS. +All that remains is to implement their kernel interface hooks. + +There were a lot of bug fixes as well. +One major issue was to find out why we can not list the first entry of the root directory, it transpires that SquashFS could have `inode_number` as zero, which the kernel, for some reason, skips while listing dirents. +For now, we fixed it by passing dummy `inode_number`, instead of zero, to dirent. + +The code review is currently ongoing with my mentor mailto:chuck@FreeBSD.org[Chuck Tuffli]. + +I am happy to say that SquashFS will find its place in upcoming FreeBSD releases. + +Sponsor: The Google Summer of Code 2023 program