您好,我已经完成了一些工具链升级,当我尝试启动设备时,它无法启动 Webkit,因为当 directfb 探测共享内存挂载的文件系统时,它会查看该/proc/mount
文件,如下所示:
# more /proc/mount
tmpfs /var/run/dbus tmpfs rw,relatime 0 0
fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
shmfs /dev/shm tmpfs rw,relatime 0 0
dsmccfs /mnt/dsmcc fuse.dsmccfs rw,nosuid,nodev,noexec,relatime,user_id=0,group_id=0,allow_other 0 0
我进一步查了一下,在/fusion/shm/shm.c
函数中发现了fusion_find_tmpfs
。当该函数尝试访问mount_fs
fusefilesystem 时,它会挂起。
我删除了此处 mount_point 为 /mnt/dsmcc 的检查access( mount_point, W_OK )
,并尝试启动设备。我的系统将启动,但在这种情况下,当我启动ls /mnt/
或df
我的系统挂起时。
当我从提示符中显式启动该进程时,出现以下错误:
# ./dsmcc_proc
fuse: writing device: Invalid argument
我试过:
strace ./dsmcc_proc 在 rt_sigtimedwait 处中断。
strace ls /mnt/dummy 在 stat64 处中断。
有人可以建议我是否有任何需要在内核升级时应用的保险丝补丁?