I don't really understand the fingerprint idea.  Files with the
same content will point to the same physical disk blocks, so that
should be a much better indicator than a finger print?  Also how does
the fingerprint guarantee uniqueness?  Is it a cryptographically
secure hash?  In here it just seems like an opaque blob.

> +static inline int erofs_inode_set_aops(struct inode *inode,
> +                                    struct inode *realinode, bool no_fscache)

Factoring this out first would be a nice little prep patch.
Also it would probably be much cleaner using IS_ENABLED.

> +static int erofs_ishare_file_open(struct inode *inode, struct file *file)
> +{
> +     struct inode *sharedinode = EROFS_I(inode)->sharedinode;

Ok, it looks like this allocates a separate backing file and inode.


Reply via email to