[blobfs] Separate vmo from mapper in Blob.

Separate out the vmo from the data mapper in the BlobLoader. This is
required because the new pager uses a vmo managed by the PagedVnode base
class and has a separate mapper. This should have no behavior change.

This requires changing the blob loader to separate out the mapping,
buffer, and vmo in various places.

Add FreeVmo() function to Blob in the old pager case for source compat
with the new pager.

Change-Id: Ie58917c9e19c7a31b842e13706e606c9f2f9d6ea
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/511918
Commit-Queue: Brett Wilson <brettw@google.com>
Reviewed-by: Martin Lindsay <mlindsay@google.com>
6 files changed
tree: 68ac3b2f28c1b5dc70c53c898e60a872681e53a8
  1. boards/
  2. build/
  3. buildtools/
  4. bundles/
  5. docs/
  6. examples/
  7. garnet/
  8. products/
  9. scripts/
  10. sdk/
  11. src/
  12. third_party/
  13. tools/
  14. zircon/
  15. .clang-format
  16. .clang-tidy
  17. .git-blame-ignore-revs
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. .style.yapf
  22. AUTHORS
  23. BUILD.gn
  24. CODE_OF_CONDUCT.md
  25. CONTRIBUTING.md
  26. LICENSE
  27. OWNERS
  28. PATENTS
  29. README.md
  30. rustfmt.toml
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.