madvise: tolerate EINVAL and ENOSYS when minherit fails
commit0891a31ad32d0567fbc8f73a0598925cb543d699
authorNick Mathewson <nickm@torproject.org>
Wed, 11 Sep 2019 13:13:50 +0000 (11 09:13 -0400)
committerNick Mathewson <nickm@torproject.org>
Wed, 11 Sep 2019 13:13:50 +0000 (11 09:13 -0400)
tree5ac10a3540a4a931ddc9b3f29aefcbab39d5f040
parent4596ead2fc88e4b1482b0f3bc8ff356daea2337b
madvise: tolerate EINVAL and ENOSYS when minherit fails

These errors can occur if we are built on a system with support for
madvise(MADV_NOFORK) but then we are run on a system whose kernel
does not support that flag.

If the error is something that we don't tolerate at all, we now log
it before crashing.

Fixes bug 31696.  I am calling this a bugfix on 0.4.1.1-alpha, where
we actually started using the map_anon code.

This is similar to, but not the same as, the fix for #31570.
changes/bug31696 [new file with mode: 0644]
src/lib/malloc/map_anon.c