[Bug 240061] MADV_FREE rewinds time to before fork()

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Sep 4 20:28:34 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240061

--- Comment #7 from commit-hook at freebsd.org ---
A commit references this bug:

Author: kib
Date: Wed Sep  4 20:28:16 UTC 2019
New revision: 351830
URL: https://svnweb.freebsd.org/changeset/base/351830

Log:
  madvise(MADV_FREE): Quick fix to time rewind.

  Don't free pages in a shadowing object.  While this degrades MADV_FREE
  to a no-op (and we could, instead, choose to fall back to
  MADV_DONTNEED, at the cost of changing pmap_madvise), this is
  presently considered a temporary fix. We may prefer to risk a little
  fragmentation of the map by creating a zero/OBJT_DEFAULT entry over
  top of the existing object and, simultaneously, revert to the existing
  marking any pages in the former shadowing object in the advised region
  as reclaimable.  At least one consumer of MADV_FREE (snmalloc) may use
  mmap() to construct zeroed pages "eventually" here anyway, so the
  fragmentation may be coming anyway.

  Submitted by: Nathaniel Filardo <nwf20 at cl.cam.ac.uk>
  PR:   240061
  Reviewed by:  markj
  MFC after:    1 week
  Differential revision:        https://reviews.freebsd.org/D21517

Changes:
  head/sys/vm/vm_map.c

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list