Details
-
Improvement
-
Resolution: Fixed
-
Major
Description
ThFabba and I were able to determine that RtlpFindAndCommitPages performs a busy loop (its inner loop) that determines the last segment entry LastEntryInSegment of the heap:
while (!(LastEntry->Flags & HEAP_ENTRY_LAST_ENTRY)) { LastEntry += LastEntry->Size } |
It may be possible, as seems to be done on Windows, to avoid that inner loop by computing the position and storing that LastEntryInSegment (in addition to the segment's first entry) everytime a heap operation is performed.
Note: It needs to be implemented/fixed up in a bunch of places (potentially anywhere that HEAP_ENTRY_LAST_ENTRY is modified).
Attachments
Issue Links
- is blocked by
-
CORE-17199 Automatic undue toggling of Time/date format during installation
- Resolved
- relates to
-
CORE-15793 RosBE2.1.6 configure step takes very long
- Resolved