cvs commit: src/sys/vm vm_kern.c vm_map.c vm_map.h

Andrew Gallatin gallatin at cs.duke.edu
Mon Aug 9 13:52:21 PDT 2004


Brian Feldman [green at FreeBSD.org] wrote:

>   * Require all mappings to be unwired before they are deleted.
>     When VM space is still wired upon deletion, it will be waited
>     upon for the following unwire.  This makes vslock(9) work
>     rather than allowing kernel-locked memory to be deleted
>     out from underneath of its consumer as it would before.

Can you explain in a little more detail what would happen now in the
following scenario:

An application running in userspace allocates SIZE bytes at "addr",
either with an mmap or via sbrk.  Then something in the kernel calls:
vm_map_wire(map, addr, addr + SIZE, TRUE) on its behalf.
Then the application frees (or munmaps) "addr".

Does the application sleep waiting for something to unwire addr+SIZE?

Thanks,

Drew


More information about the cvs-all mailing list