Messages in this thread | | | Date | Tue, 17 Jun 2014 11:54:17 +0200 | From | Florian Weimer <> | Subject | Re: [PATCH v3 0/7] File Sealing & memfd_create() |
| |
On 06/13/2014 05:33 PM, David Herrmann wrote: > On Fri, Jun 13, 2014 at 5:17 PM, Andy Lutomirski <luto@amacapital.net> wrote: >> Isn't the point of SEAL_SHRINK to allow servers to mmap and read >> safely without worrying about SIGBUS? > > No, I don't think so. > The point of SEAL_SHRINK is to prevent a file from shrinking. SIGBUS > is an effect, not a cause. It's only a coincidence that "OOM during > reads" and "reading beyond file-boundaries" has the same effect: > SIGBUS. > We only protect against reading beyond file-boundaries due to > shrinking. Therefore, OOM-SIGBUS is unrelated to SEAL_SHRINK. > > Anyone dealing with mmap() _has_ to use mlock() to protect against > OOM-SIGBUS. Making SEAL_SHRINK protect against OOM-SIGBUS would be > redundant, because you can achieve the same with SEAL_SHRINK+mlock().
I don't think this is what potential users expect because mlock requires capabilities which are not available to them.
A couple of weeks ago, sealing was to be applied to anonymous shared memory. Has this changed? Why should *reading* it trigger OOM?
-- Florian Weimer / Red Hat Product Security Team
| |