[Mesa-dev] RFC: Memory allocation on Mesa
Timur Kristóf
timur.kristof at gmail.com
Mon May 11 17:06:12 UTC 2020
On Mon, 2020-05-11 at 16:13 +0000, Jose Fonseca wrote:
> Some might retort: why not just play some tricks with the linker, and
> intercept all malloc/free calls, without actually having to modify
> any source code?
>
> Yes, that's indeed technically feasible. And is precisely the sort
> of trick I was planing to resort to satisfy VMware needs without
> having to further modify the source code. But for these tricks to
> work, it is absolutely imperative that one statically links C++
> library and STL. The problem being that if one doesn't then there's
> an imbalance: the malloc/free/new/delete calls done in inline code on
> C++ headers will be intercepted, where as malloc/free/new/delete
> calls done in code from the shared object which is not inlined will
> not, causing havoc.
Wouldn't you face the same issue if you chose to wrap all calls to
malloc and free in mesa, instead of relying on the linker? Any
dynamically linked or 3rd party library, including the C++ standard
library, will have no way of knowing about our wrapped malloc and free.
Timur
More information about the mesa-dev
mailing list