History log of /seL4-camkes-master/tools/rumprun/lib/libbmk_core/pgalloc.c
Revision Date Author Comments
# 303031ba 17-Nov-2015 Antti Kantee <pooka@iki.fi>

pgalloc_align: make page size min alignment

Fix callers and tighten assert.


# aba477d3 03-Nov-2015 Antti Kantee <pooka@iki.fi>

pgalloc: fix comment

no fuctional change


# 9e6d5bc2 03-Nov-2015 Antti Kantee <pooka@iki.fi>

carveandlink_freechunk -> freechunk_link

more descriptional name
no functional change


# 931f63d4 03-Nov-2015 Antti Kantee <pooka@iki.fi>

pgalloc: use builtin_ctz/clz instead of for loops.


# 22c4e7ea 03-Nov-2015 Antti Kantee <pooka@iki.fi>

Add bmk_pgalloc_align()

Can be used to allocate chunks with alignment > size.


# f838c0bb 06-Oct-2015 Antti Kantee <pooka@iki.fi>

ctassert that PAGES_PER_MAPWORD is a power of two


# 2a6639d9 05-Oct-2015 Antti Kantee <pooka@iki.fi>

assert that allocations are allocated in map


# 69372ff6 05-Oct-2015 Antti Kantee <pooka@iki.fi>

control debug print spam with a variable


# 253a73f2 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Add bmk_pgalloc_dumpstats()

dumps pgalloc stats (in case someone didn't guess from the name)


# 1fabb829 05-Oct-2015 Antti Kantee <pooka@iki.fi>

chunk_head -> chunk (simple)

no functional change intended


# 13a56465 05-Oct-2015 Antti Kantee <pooka@iki.fi>

use queue.h instead of homegrown linked list


# 968ccc38 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Don't overload variable

plus other cosmetic nits


# 04569095 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Use same indexes everywhere.


# e7094fd4 04-Oct-2015 Antti Kantee <pooka@iki.fi>

fold common code into a subroutine


# 8576b9d2 04-Oct-2015 Antti Kantee <pooka@iki.fi>

add comment on why FREELISTS_LEVELS is like it is


# bc639611 04-Oct-2015 Antti Kantee <pooka@iki.fi>

print_chunks() is a bit too silly to be kept alive


# fcb87f94 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Bring back chuck magic checks.

Problem they caught should be fixed now.


# 0e851949 04-Oct-2015 Antti Kantee <pooka@iki.fi>

prevent integer truncation in allocated_in_map()


# 8c6c2ff6 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Revert "Put a magic number into the allocator chunks."

Breaks Travis CI tests. No idea why, so revert so that the
situation can be investigated.

This reverts commit 7dfdbb170ed8fffff11b2ad12a288e976b55a89d.


# 67bbd10b 04-Oct-2015 Antti Kantee <pooka@iki.fi>

don't overallow bitmap if memory starts from high up


# 607ab820 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Bunch of misc improvements

* misnamed FREELIST_SIZE
* misused FREELIST_EMPTY
* debug prints
* comments


# f38c63f0 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Allocate freelist head/tail at compile-time.


# 7dfdbb17 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Put a magic number into the allocator chunks.

Use that as an internal invariant. Free chunks must contain
the magic number.


# 51759cec 04-Oct-2015 Antti Kantee <pooka@iki.fi>

chunk_tail is not used in pgalloc => g/c


# c1593b84 04-Oct-2015 Antti Kantee <pooka@iki.fi>

introduce order2size() for common calculation


# 08624268 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Get rid of stupid_t and hide pointer arith in macros.


# ffe8e2f0 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Actually fix the "is address managed?" check

No, for real this time.


# dc1220c9 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Make sanity_check() compile again.

Run it after every allocation and deallocation if BMK_PGALLOC_DEBUG
is turned on.


# 41f6b70f 04-Oct-2015 Antti Kantee <pooka@iki.fi>

Record min/max addresses as pages instead of bytes

They're always used as pages...


# f71a451e 04-Oct-2015 Antti Kantee <pooka@iki.fi>

g/c no longer valid comment


# 092c9538 02-Oct-2015 Antti Kantee <pooka@iki.fi>

Make sure we don't under/overflow our chunk merges.


# 9fada7cb 02-Oct-2015 Antti Kantee <pooka@iki.fi>

Make sure we don't access alloc_bitmap[] beyond its bounds.


# fe9db73b 02-Oct-2015 Antti Kantee <pooka@iki.fi>

no casting for void *


# 0cafd7b8 02-Oct-2015 Antti Kantee <pooka@iki.fi>

Print alloc/free when BMK_PGALLOC_DEBUGging


# ade1e3f2 02-Oct-2015 Antti Kantee <pooka@iki.fi>

make BMK_PGALLOC_DEBUG code compile


# ee2ccb13 09-Sep-2015 Antti Kantee <pooka@iki.fi>

Retire bmk_page{size,shift}, use BMK_PCPU_PAGE_{SIZE,SHIFT}.

Latter are compile-time constants.


# 945b0992 22-Jun-2015 Antti Kantee <pooka@iki.fi>

Provide page allocator as part of bmk-core.

Platforms now share common page allocator code.