On Sat, Apr 15, 2000 at 08:18:01PM -0700, Matthew Dillon wrote:
> :Is there a good reason for not having the vm_object_clear_flag() in
> :vm_object_reference()?
>
> Well, yes... vm_object's are referenced for all sorts of things
> temporarily. Everything from a process looking one up temporarily
> to the swap code issuing I/O. None of these references have anything
> to do with OBJ_ONEMAPPING.
>
I agree. Easy examples to appreciate are vm_map_clip_start and
vm_map_clip_end.
vm_map_clip_start takes a vm_map_entry and an address X as parameters. If X
falls in the middle of the vm_map_entry, it splits the entry into
two entries: one mapping everything up to X and one mapping everything
after X. This can't possibly create two mappings to the same physical
page, so clearing OBJ_ONEMAPPING isn't necessary but incrementing the
underlying object's ref count is.
Alan
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message