Re: [Virtio-fs] [PATCH 3/2] fs: simplify get_filesystem_list / get_all_fs_names

From: Christoph Hellwig
Date: Wed Jun 30 2021 - 01:36:45 EST


On Tue, Jun 29, 2021 at 04:50:48PM -0400, Vivek Goyal wrote:
> May be we should modify mount_block_root() code so that it does not
> require that extra "\0". Possibly zero initialize page and that should
> make sure list_bdev_fs_names() does not have to worry about it.
>
> It is possible that a page gets full from the list of filesystems, and
> last byte on page is terminating null. In that case just zeroing page
> will not help. We can keep track of some sort of end pointer and make
> sure we are not searching beyond that for valid filesystem types.
>
> end = page + PAGE_SIZE - 1;
>
> mount_block_root()
> {
> for (p = fs_names; p < end && *p; p += strlen(p)+1) {
> }
> }

Maybe. To honest I'd prefer to not even touch this unrelated code given
how full of landmines it is :)