The UVM code has two assertions in uvm_map_findspace:

      KASSERTMSG( topdown || hint >= orig_hint, "hint: %jx, orig_hint: %jx",
          (uintmax_t)hint, (uintmax_t)orig_hint);
      KASSERTMSG(!topdown || hint <= orig_hint, "hint: %jx, orig_hint: %jx",
          (uintmax_t)hint, (uintmax_t)orig_hint);

that assure that mappings (with a given hint address) are always
done in the direction of heap growth.

Is there any rationale behind that assertion, or does it just check
if the current allocation algorithm works as is (e.g. to check
against pointer wrap-around errors) ?

-- 
-- 
                                Michael van Elst
Internet: [email protected]
                                "A potential Snark may lurk in every tree."

Reply via email to