Hi, In his session about "reflink" in LSF/MM 2016 [1], Darrick Wong brought up the subject of sharing pages between cloned files and the general vibe in room was that it could be done. In his talk about XFS subvolumes and snapshots [2], Dave Chinner said that Matthew Willcox was "working on that problem". I have started working on a new overlayfs address space implementation that could also benefit from being able to share pages even for filesystems that do not support clones (for copy up anticipation state). To simplify the problem, we can start with sharing only uptodate clean pages that map the same offset in respected files. While the same offset requirement somewhat limits the use cases that benefit from shared file pages, there is still a vast majority of use cases (i.e. clone full image), where sharing pages of similar offset will bring a lot of benefit. At first glance, this requires dropping the assumption that a for an uptodate clean page, vmf->vma->vm_file->f_inode == page->mapping->host. Is there really such an assumption in common vfs/mm code? and what will it take to drop it? I would like to discuss where do we stand on this effort and what are the steps we need to take to move this forward, as well as to collaborate the efforts between the interested parties (e.g. xfs, btrfs, overlayfs, anyone?). Thanks, Amir. [1] https://lwn.net/Articles/684826/ [2] https://lwn.net/Articles/747633/