On Wed, Jun 30, 2021 at 07:36:01AM +0200, Christoph Hellwig wrote: > 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 :) Agreed. It probably is better to make such changes incrementally. Given third patch is nice to have cleanup kind of thing, can we first just merge first two patches to support non-block device filesystems as rootfs. We will really like to have a method to properly boot virtiofs as rootfs. Thanks Vivek