@pcmoritz Maybe here is the problem. In 
[`dlmalloc_set_footprint_limit`](https://github.com/apache/arrow/blob/master/cpp/src/plasma/thirdparty/dlmalloc.c#L5367),
 the input memory is changed by `granularity_align(bytes)` and save to 
`gm->footprint_limit`. In this case, 1000 bytes will be changed 131072 and 
1000000000 will be changed to 1000079360. Therefore, when we try to allocate an 
object which makes `footprint` between the input limit and the aligned limit, 
`dlmemalign` may return a normal pointer but [the eviction policy 
check](https://github.com/apache/arrow/blob/master/cpp/src/plasma/eviction_policy.cc#L73)
 fails and Plasma crashes.

[ Full content available at: https://github.com/apache/arrow/pull/2550 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to