diff --git a/src/server.h b/src/server.h index 61cff37a53..e4b12f4ff0 100644 --- a/src/server.h +++ b/src/server.h @@ -91,6 +91,8 @@ typedef long long ustime_t; /* microsecond time type. */ #include "crc64.h" /* min/max */ +#undef min +#undef max #define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b)) diff --git a/src/zmalloc.c b/src/zmalloc.c index ba0368530f..d19d87b7df 100644 --- a/src/zmalloc.c +++ b/src/zmalloc.c @@ -492,6 +492,23 @@ size_t zmalloc_get_rss(void) { return 0L; } +#elif defined(__HAIKU__) +#include + +size_t zmalloc_get_rss(void) { + area_info info; + thread_info th; + size_t rss = 0; + ssize_t cookie = 0; + + if (get_thread_info(find_thread(0), &th) != B_OK) + return 0; + + while (get_next_area_info(th.team, &cookie, &info) == B_OK) + rss += info.ram_size; + + return rss; +} #elif defined(HAVE_PSINFO) #include #include