commit | 50e6065359a71f9bd8dcf735db0e21c570bfcbb5 | [log] [tgz] |
---|---|---|
author | Rasha Eqbal <rashaeqbal@google.com> | Wed Feb 08 19:35:15 2023 +0000 |
committer | CQ Bot <fuchsia-internal-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Feb 08 19:35:15 2023 +0000 |
tree | 92a7947787b96c94c86e16f13cee506466863be5 | |
parent | 5999d377d622525cc3e97f2bdaff7cd4536f7339 [diff] |
[kernel][vm] Simplify traversal return code handling The ForEveryPageAndContiguousRunInRange helper in turn calls ForEveryPageAndGapInRange, supplying it with a per-page function and a gap function. ForEveryPageAndGapInRange is capable of handling ZX_ERR_STOP in these functions correctly, so we do not need to handle it in the page and gap functions used here. Also fixes a bug where contiguous_run_len would not get reset to 0 in the case of early termination due to ZX_ERR_STOP, invoking contiguous_run_func on the last range twice. The added test case covers this. Test: vmpl_unittest Run-All-Tests: true Change-Id: I704339ebed24ce50265c294620d992048b7c3540 Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/799047 Commit-Queue: Rasha Eqbal <rashaeqbal@google.com> Reviewed-by: Adrian Danis <adanis@google.com>
Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.
We expect everyone interacting with our project to respect our code of conduct.
Read more about Fuchsia's principles.
See Getting Started.
See fuchsia.dev.