我正在尝试挂载jffs2 rootfs。挂载 fs 时,会显示以下警告:
Jffs2: Node totlen on flash (0xffffffff) != totlen from node ref
当我使用ramfs作为 rootfs时没有出现此警告,并且手动挂载了jffs2 rootfs。
当jffs2尝试将节点标记为过时时会出现此警告。在任何其他意义上,fs 似乎是可操作的,我能够创建文件和删除文件。无论如何,每隔一段时间就会显示警告,除了对此感到恼火之外,我担心它最终会导致 fs 的损坏。
Buildroot configuration:
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_FLASH_64=y
BR2_TARGET_ROOTFS_JFFS2_EBSIZE=0x10000
BR2_TARGET_ROOTFS_JFFS2_PAD=y
BR2_TARGET_ROOTFS_JFFS2_PADSIZE=0x00B00000
BR2_TARGET_ROOTFS_JFFS2_LE=y
Linux configuration:
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_RTIME=y
我发现当我将分区大小减小到 0x450000 时,这个警告被取消了,但是 /etc/dropbear 没有足够的空间,我无法找到一个有足够空间的“最佳位置”并且没有警告。
我尝试了各种填充大小,并完全删除了填充,但无济于事。
我已经构建了一些具有不同配置的 rootfs.jffs2 图像,但没有一个解决了这个问题。
我查看了 rootfs.jffs2 映像的 hexdump、一个空的jffs2分区和创建的 /dev/mtdblock3——但没有发现任何异常。