Interpretation of bit patters in arena_chunk_map_bits_s
yasaswinig7 at gmail.com
Tue Mar 8 11:33:40 PST 2016
What does the three patterns signify under each one of the allocation type
(unallocated(dirty/clean), small, large) in "arena_chunk_map_bits_s"
I understand the allocation types (unallocated, small, large), but I am
not sure why there are three different patters under each allocation type.
For example under Unallocated (clean), we have following bit patterns:
* ssssssss ssssssss sss+++++ +++dum-a - pattern1
* xxxxxxxx xxxxxxxx xxxxxxxx xxx-Uxxx - pattern2
* ssssssss ssssssss sss+++++ +++dUm-a - pattern3
According to pattern2, if bit3 is set (U) then remaining bits are don't
care, but according to pattern3, when bit3 is set (U), bit 13 - bit 31
(s....s) is still valid as run_size.
The comments inside struct are elaborate, but I am still confused. May be I
am missing something. I am trying to understand the logical interpretation
of each one of those patterns! Appreciate, if someone could explain with
an example/direct me to a reference point.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the jemalloc-discuss