diff options
author | Max Romanov <max.romanov@nginx.com> | 2020-09-29 22:58:04 +0300 |
---|---|---|
committer | Max Romanov <max.romanov@nginx.com> | 2020-09-29 22:58:04 +0300 |
commit | 61eba6eef1558ed741d2bf5f1f3f5bc0481e587a (patch) | |
tree | 07b3c9dc16872261158624a6d1d0594d1eca05c2 /src/nxt_malloc.c | |
parent | c721a5378dd467054f672a40e677be56bad53c4d (diff) | |
download | unit-61eba6eef1558ed741d2bf5f1f3f5bc0481e587a.tar.gz unit-61eba6eef1558ed741d2bf5f1f3f5bc0481e587a.tar.bz2 |
Wrapping libunit's malloc() and free() calls for logging purposes.
This change aids heap usage analysis in applications.
The alloc and free functions are also required for lvlhash due to the upcoming
threading support, because using main nxt_memalign() and nxt_free() isn't safe
in a multithreaded app environment. The reason is that these functions may use
thread-local structures which aren't initialized properly in applications.
Diffstat (limited to 'src/nxt_malloc.c')
-rw-r--r-- | src/nxt_malloc.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/nxt_malloc.c b/src/nxt_malloc.c index 910ef7cd..fed58e96 100644 --- a/src/nxt_malloc.c +++ b/src/nxt_malloc.c @@ -81,6 +81,22 @@ nxt_realloc(void *p, size_t size) } +/* nxt_lvlhsh_* functions moved here to avoid references from nxt_lvlhsh.c. */ + +void * +nxt_lvlhsh_alloc(void *data, size_t size) +{ + return nxt_memalign(size, size); +} + + +void +nxt_lvlhsh_free(void *data, void *p) +{ + nxt_free(p); +} + + #if (NXT_DEBUG) void |