Changeset b0c2075 in mainline for kernel/generic/src/mm/km.c


Ignore:
Timestamp:
2013-09-10T17:48:57Z (11 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
85147f3
Parents:
86733f3
Message:

new physical memory allocator supporting physical address constrains
the buddy allocator framework is retired and replaced by a two-level bitmap
the allocator can allocate an arbitrary number of frames, not only a power-of-two count

Caution: Change of semantics
The physical memory allocator no longer allocates naturally aligned blocks. If you require an aligned block, specify it as the constraint.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/mm/km.c

    r86733f3 rb0c2075  
    247247         */
    248248        uintptr_t page;
    249         uintptr_t frame = frame_alloc(ONE_FRAME,
    250             FRAME_HIGHMEM | FRAME_ATOMIC | flags, 0);
     249        uintptr_t frame =
     250            frame_alloc(1, FRAME_HIGHMEM | FRAME_ATOMIC | flags, 0);
    251251        if (frame) {
    252252                page = km_map(frame, PAGE_SIZE,
     
    256256                ASSERT(page);
    257257        } else {
    258                 frame = frame_alloc(ONE_FRAME, FRAME_LOWMEM | flags, 0);
     258                frame = frame_alloc(1, FRAME_LOWMEM | flags, 0);
    259259                if (!frame)
    260260                        return (uintptr_t) NULL;
Note: See TracChangeset for help on using the changeset viewer.