Page MenuHomeFreeBSD

Use helper functions to reduce code duplication in merging vm_entry neighbors
ClosedPublic

Authored by dougm on Oct 18 2018, 3:36 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, May 19, 9:46 AM
Unknown Object (File)
Apr 3 2024, 7:39 AM
Unknown Object (File)
Mar 19 2024, 4:10 AM
Unknown Object (File)
Mar 19 2024, 3:01 AM
Unknown Object (File)
Dec 21 2023, 7:46 PM
Unknown Object (File)
Dec 20 2023, 2:54 AM
Unknown Object (File)
Dec 11 2023, 6:21 AM
Unknown Object (File)
Nov 15 2023, 9:40 PM
Subscribers

Details

Summary

Use helper functions to reduce code duplication in merging vm_entry neighbors.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

dougm added a reviewer: kib.
kib added inline comments.
sys/vm/vm_map.c
1654

prev->object.vm_object == NULL

1655

No need to indent.

This revision is now accepted and ready to land.Oct 18 2018, 7:11 PM

Accept reviewer style suggestions.

This revision now requires review to proceed.Oct 18 2018, 7:39 PM
This revision is now accepted and ready to land.Oct 18 2018, 10:11 PM
This revision was automatically updated to reflect the committed changes.
head/sys/vm/vm_map.c
1648 ↗(On Diff #49373)

This function does not by itself prove that two entries are mergeable. Hence, its name is misleading. It's necessary that, for example, the entry is not a submap or in transition. I would like to see those conditions asserted here.

Alternatively, and contradicting my initial comment, giving this function a name like vm_map_simplify_test() would discourage the reuse of this function elsewhere, where the necessary conditions on eflags have not been established.

1651 ↗(On Diff #49373)

Now that this code is deindented, this variable is pointless. It's is used once, and computing this value before we know that end == start and the objects match is wasted effort.

1665 ↗(On Diff #49373)

vm_map_simplify_deallocate(). Historically, "dispose" functions were simple free operations.

1669–1680 ↗(On Diff #49373)

Now that this comment is deindented, the text should be "reflowed".

dougm added inline comments.
head/sys/vm/vm_map.c
1648 ↗(On Diff #49373)

I'll rename to vm_map_neighbor_test, since 'neighbor' is a term introduced in the comment that describes the 'simplify_entry' function, and 'simplify_test' sounds like we're simplifying some sort of test, which sounds pretty generic.

1665 ↗(On Diff #49373)

vm_map_neighbor_deallocate().