On Tue, Jan 25, 2022 at 09:57:05PM +0300, Kirill A. Shutemov wrote: > On Tue, Jan 25, 2022 at 02:09:47PM +0000, Matthew Wilcox wrote: > > > I think zero-API approach (plus madvise() hints to tweak it) is worth > > > considering. > > > > I think the zero-API approach actually misses out on a lot of > > possibilities that the mshare() approach offers. For example, mshare() > > allows you to mmap() many small files in the shared region -- you > > can't do that with zeroAPI. > > Do you consider a use-case for many small files to be common? I would > think that the main consumer of the feature to be mmap of huge files. > And in this case zero enabling burden on userspace side sounds like a > sweet deal. mmap() of huge files is certainly the Oracle use-case. With occasional funny business like mprotect() of a single page in the middle of a 1GB hugepage. The approach of designating ranges of a process's address space as sharable with other processes felt like the cleaner & frankly more interesting approach that opens up use-cases other than "hurr, durr, we are Oracle, we like big files, kernel get out of way now, transactions to perform".