On Tue, May 4, 2021 at 2:29 AM Simon Ser <contact@xxxxxxxxxxx> wrote: > > The remaining 10% is when the compositor needs a writable mapping for > things like screen capture. It doesn't seem like a SIGBUS handler can > be avoided in this case then… Oh well. So as Peter Xu mentioned, if we made it a "per inode" thing, we probably could make such an inode do the zero page fill on its own, and it might be ok for certain cases even for shared mappings. However, realistically I think it's a horrible idea for the generic situation, because I think that basically requires the filesystem itself to buy into it. And we have something like 60+ different filesystems. Is there some very specific and targeted pattern for that "shared mapping" case? For example, if it's always a shared anonymous mapping with no filesystem backing, then that would possibly be a simpler case than the "random arbitrary shared file descriptor". But maybe that simpler (if untested) VM patch is fine if 90% of the time it's a plain normal non-shared mapping, and you have to have the SIGBUS case for backwards compatibility anyway, but at least some _benign_ cases are now handled without pain... Linus