[Barrelfish-users] Assertion failure on mapping large frame

Chothia Zaheer zchothia at student.ethz.ch
Fri Feb 8 22:18:07 CET 2013


SharedDB requires large chunks of memory to store its data [*]. I ran into
problems allocating 1 GB with malloc() and switched to frame_alloc(). That
initially seemed to solve the issue, but unfortunately also fails. Allocating
an 8 GB frame succeeds, but mapping it fails:

  [BEFORE] System memory: free: 135958609920 bytes, total: 137277911040 bytes
  Allocated frame of 8589934592 bytes.
  assertion "pmap->vregion_offset < vregion_get_base_addr(&pmap->vregion) + vregion_get_size(&pmap->vregion)" failed: file "../lib/barrelfish/target/x86_64/pmap_target.c", line 319, function: refill_slabs

Attached is a minimal example which demonstrates the problem. Any ideas?



[*] When running TPC-W on Linux, tcmalloc reports total memory usage as 10.2 GB.
    On IRC I mentioned a figure of 2.7 GB, but that appears incorrect as Massif
    doesn't seem to have accounted for everything.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: big_frame_alloc.c
Url: https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20130208/df7c5f98/attachment.c 

More information about the Barrelfish-users mailing list