Page MenuHomeFreeBSD

Stop using next, prev pointers to update max_free in map entries
AbandonedPublic

Authored by dougm on May 25 2019, 4:10 AM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 2 2024, 2:56 PM
Unknown Object (File)
Sep 21 2023, 5:39 PM
Unknown Object (File)
Sep 11 2023, 4:55 AM
Unknown Object (File)
Jul 10 2023, 9:56 PM
Unknown Object (File)
Jun 11 2023, 4:48 AM
Unknown Object (File)
May 30 2023, 10:31 PM
Unknown Object (File)
May 17 2023, 3:12 PM
Unknown Object (File)
Jan 17 2023, 7:43 AM
Subscribers
None

Details

Reviewers
None
Summary

vm_map_entry_set_max_free depends on using the next and prev fields of vm_map_entries to find neighbors and compute gap sizes. There's no need to use these fields, since their values are already present in one of the local variables of vm_map_splay_split. Change splay_split to use this information and to update max_free values on the search path so that splay_merge can update max_free values without looking at entries not on the search path.

In splay_split, build the left and right reverse-branches beginning with the map->header field, to avoid some special cases that arose with the previous NULL terminator, and more that would arise after the elimination of vm_map_entry_set_max_free.

Test Plan

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped