James Bottomley: > Yes, I know the problem. However, I believe most current linux > filesystems no longer guarantee stable, for the lifetime of the file, > inode numbers. The usual docker container root is overlayfs, which, > similarly doesn't support stable inode numbers. I see the odd > complaint about docker with overlayfs having unstable inode numbers, > but none seems to have any serious repercussions. I think it serious. Reusing the backend fs' inum is a good approach which Amir wrote. Based on this, I'd suggest you to support the hardlinks. bakend_dentry = lookup_one_len() if (d_inode->i_nlink != 1) shiftfs_inode = ilookup(); if (!shiftfs_inode) { shiftfs_inode = new_inode(); shiftfs_inode->i_ino = bakend_dentry->d_inode->i_ino; } J. R. Okajima