Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Alter glibc override to work with RTL_DEEPBIND #598

Merged
merged 1 commit into from
Feb 27, 2023

Conversation

mjp41
Copy link
Member

@mjp41 mjp41 commented Feb 27, 2023

When using dlopen with RTL_DEEPBIND the LD_PRELOAD used by the majority of allocators does not work as both libc and snmallocs allocators can be called by various dso.

This patch uses GLIBC's __malloc_hook to override the allocator as well as LD_PRELOAD. This means that all libraries will call snmalloc when performing allocation.

@mjp41
Copy link
Member Author

mjp41 commented Feb 27, 2023

Fixes #595.

@mjp41 mjp41 force-pushed the rtl_deepbind branch 2 times, most recently from ac4b28b to 0504be7 Compare February 27, 2023 11:32
When using dlopen with RTL_DEEPBIND the LD_PRELOAD used
by the majority of allocators does not work as both libc
and snmallocs allocators can be called by various dso.

This patch uses GLIBC's __malloc_hook to override the allocator
as well as LD_PRELOAD.  This means that all libraries will
call snmalloc when performing allocation.
@mjp41 mjp41 merged commit 6066cba into microsoft:main Feb 27, 2023
@mjp41 mjp41 deleted the rtl_deepbind branch February 28, 2023 11:18
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants