Remove from vm_page_object_remove the responsibility for removing a page from its radix tree, and pass that responsibility on to its callers.
For one of those callers, vm_page_rename, pass the responsibility along to its two callers.
For one of them, vm_object_split, use a pctrie_iter to walk over the pages of orig_object, and use vm_radix_iter_remove to remove the page from the orig_object tree without searching for its location.
Because vm_radix_iter_remove isn't defined yet, define it in vm_radix.h.
Because this code modifies the pindex of a page while it's in one tree, and inserts it into another, before removing it from the first, relax the conditions in pctrie_iter_remove so that the leaf removed doesn't have to match the index associated with the iterator.