Hi again, Just reporting back my results... >> I read the source code of sem_open() in glibc and found that >> sem_open() fails if there is no tmpfs (former shm fs) mount in the >> system. >> >> According to your strace log, your /dev/shm is mounted with "ramfs" >> whose magic number is 0x858458f6. This looks the cause of the error. >> >>> statfs("/dev/shm", {f_type=0x858458f6, f_bsize=4096, f_blocks=0, >>> f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, >>> f_namelen=255, f_frsize=4096}) = 0 >> >> Try following kernel configs to enable tmpfs and mount it to >> /dev/shm instead of using ramfs. >> >> - CONFIG_SHMEM >> Generic setup -> >> Configure standard kernel features (expert users) -> >> Use full shmem filesystem >> >> - CONFIG_TMPFS >> File systems -> >> Pseudo filesystems -> >> Tmpfs virtual memory file system support (former shm fs) > > You are right. I was using ramfs and when I tried with CONFIG_SHMEM > I still used ramfs, so right now I am compiling a new kernel with > both CONFIG_SHMEM and CONFIG_TMPFS. I will report my results when > I have tried the new kernel. That did it! Both CONFIG_SHMEM _and_ CONFIG_TMPFS are needed. I now have a new firmware image for my project and nilfs is working as expected. Due to the nature of the project, nilfs_cleanerd is not started when the FS is mounted (in the initramfs). Instead it is supervised with runsv(dir), so I start nilfs_cleanerd with -n to keep it from forking. I hope this is the proper way of running nilfs_cleanerd under a supervisor?!? Thanks again! /S-G -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html