* Matthew Dillon <[EMAIL PROTECTED]> [000216 16:05] wrote:
>
> It is possible to fix the problem. We can add a new mmap() flag which
> we call MAP_GUARDED which would basically be an anonymous mmap() which
> implements a special case in vm_fault. This pager is designed to always
> return a failure for the first and last page. The size of the mmap()
> determines where the guard pages are and would be stored as part of
> the vm_map_entry (only for the MAP_GUARDED case).
>
> Adjacent vm_map_entry structures with the same guard size would be
> coalesced.
>
> Thus any threaded program will still only require a single vm_map_entry
> field yet still be completely flexible in regards to the guard pages.
>
> Is anyone interested in me doing this for the 4.0 release? It would
> help both our current threads model and the linux threads model a lot.
> I can do it in a day and it should be trivial to test, the modifications
> are actually quite minor.
I'd love to see it happen for 4.0. Toss some diffs
up and we'll see if Jordan gives it an ok.
--
-Alfred Perlstein - [[EMAIL PROTECTED]|[EMAIL PROTECTED]]
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message