History log of /fuchsia/zircon/kernel/vm/pmm_node.cpp
Revision Date Author Comments
# f0441ea7 01-Oct-2018 Travis Geiselbrecht <travisg@google.com>

[kernel][formatting] Formatting pass on core kernel code

Also ran through 'astyle -j -A2' prior to running through clang-fmt,
which adds braces to one line conditionals.

Tested: build and runtests on arm and x86

Change-Id: I888c1ce43dbe12a936a3f13d89c5f8dc16ccab6a


# 8fcba2f4 25-Sep-2018 Travis Geiselbrecht <travisg@google.com>

[kernel][pmm] convert pmm_alloc_contiguous to returning status instead of page count

Tested: runtests on both x86 and arm

Change-Id: Ib8cddb85a676115bace55d992f82518024e3a193


# afb4c092 25-Sep-2018 Travis Geiselbrecht <travisg@google.com>

[kernel][pmm] convert pmm_alloc_range() to returning a status instead of count

Tested: runtests on x86 and arm

Change-Id: Id3b550ee9affa742707b2c98ec4c543f1cca7c85


# 46a7c5a8 24-Jul-2018 Travis Geiselbrecht <travisg@google.com>

[kernel][pmm] change pmm single page alloc routines to return status

Move from returning a status and the page pointer and/or physical
address in an argument.

Tested: build and runtests on both x86 and arm

Change-Id: If10d877f152d355bfa1359338cd71f5aefbccfb4


# 6294efd0 23-Jul-2018 Travis Geiselbrecht <travisg@google.com>

[kernel][pmm] remove the count return from pmm_free routines

Was never used anyway, clean up the api.

Tested: build and runtests on both x86 and arm

Change-Id: I6880cace4ee20a89f6f4d50f1192eb3bcb56cead


# f2aaaf4c 19-Jul-2018 Corey Tabaka <eieio@google.com>

[kernel] Lockdep instrument the vm and thread_lock.

- Instrument the locks used by the vm.
- Instrument the thread lock and remainning core kernel code.
- Leaving remaining arch/lib/driver code for a later CL.

Bug: ZX-23
Test: k ut all and system/test/* pass + manual testing.

Change-Id: Ie3f6a27e81bcd1890d63f2fafda3ee233f7969ef


# cdea48c8 18-Jul-2017 Travis Geiselbrecht <travisg@google.com>

[kernel][pmm] first pass overhaul of the PMM

-Add a new PmmNode class that represents a pmm for a single NUMA node.
-Move main free queues into PmmNode.
-Make PmmArena be a child of PmmNode.
-Refactor the vm_page structure a bit to change how queues work. Make
the main queue node be intrinsic to the page, instead of per state.
-Move some per page helper routines into the page struct.
-Remove the KMAP flags, since they're not used on 64bit machines.

TODO:
-Make use of the LO_MEM flag for <4GB allocations
-Make use of the new active/inactive/wired queues in PmmNode
-Add support for multiple nodes in a NUMA system
-Keep page state count in PmmNode class to make page state counting less
expensive

Change-Id: I0ca5e55aad0bb2f393d2dc590b02f160e4740398