HomeFreeBSD

Use 64-bit math when processing the lists of physical and excluded memory

Description

Use 64-bit math when processing the lists of physical and excluded memory
to generate the phys_avail and dump_avail arrays.

This is a partial fix for the kernel side of the problem mentioned in the
PR. This part handles the cases where comparing start and end addresses of
a block would fail because 32-bit wrap caused the end address to come out
zero if the end of the region is the end of the address space (0xffffffff
with 32-bit vm_paddr_t, but now the code should also work right if we ever
support LPAE with 36-bit addresses).

More work is necessary to make systems with ram at the end of the physical
address space usable, but at least initially it's going to be more like a
workaround than a fix, so this non-hacky part is being committed first.

PR: 201614

Details

Provenance
ianAuthored on
Parents
rS293060: Fix the arm64 build by adding an all-important '&' to get a pointer.
Branches
Unknown
Tags
Unknown