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)
Fri, Jun 20, 3:39 AM
Unknown Object (File)
Wed, Jun 18, 6:54 AM
Unknown Object (File)
Tue, Jun 17, 5:34 PM
Unknown Object (File)
Mon, Jun 16, 5:40 PM
Unknown Object (File)
Mon, Jun 16, 1:19 AM
Unknown Object (File)
May 16 2025, 6:06 PM
Unknown Object (File)
May 16 2025, 5:04 PM
Unknown Object (File)
May 14 2025, 5:02 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().