[roll] Roll fuchsia [kernel][vm] Fix early loop termination in LookupReadableLocked

LookupReadableLocked on a CoW VMO clone could terminate early (with
success) when a parent VMO lookup segment was trimmed because of
committed pages in the child. The rest of the child VMO range would be
skipped in this case, but the overall function would return ZX_OK.

The only caller of LookupReadableLocked is VmObjectPaged::CacheOp, so
this could result in silently ignoring cache operations when invoked on
a CoW clone that could see parent pages, but had some forked pages
beyond the visible range in the parent.

Original-Original-Bug: 513654391
Test: Added vmo_lookup_readable_simple_test and
vmo_lookup_readable_clone_test (which is a regression test
for this bug).
Run-All-Tests: true

Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1620374
Original-Original-Revision: d0b9b69857f45d8db0b48adc1b6f36ff079b18da
GitOrigin-RevId: 0941b0ec21e831819eaf1126187bf432fdaf0c7d
Change-Id: Iabe78cd716fd88d992c6a2b1931ecb4deda13074
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1627697
Cr-Commit-Position: refs/heads/main@{#193456}
1 file changed
tree: 0ad22ddb69975c4b4303153bea36d6908dbbd051
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.