X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fdefaults.c;fp=src%2Fcommon%2Fdefaults.c;h=2550784cf1b01cf834f695e51e16c3cadf58d7a7;hp=4a5fef8689bc776e7aaa68be161f4e8ceeae4505;hb=81663f073dbfb4b61c06a0ceb8ca33c4fc41b1c5;hpb=1cbd136b2479ef142bfb339b13d3d25aa772dda5 diff --git a/src/common/defaults.c b/src/common/defaults.c index 4a5fef868..2550784cf 100644 --- a/src/common/defaults.c +++ b/src/common/defaults.c @@ -14,35 +14,49 @@ #include "defaults.h" #include "macros.h" -#include "align.h" #include "error.h" static int pthread_attr_init_done; static pthread_attr_t tattr; +static size_t get_page_size(void) +{ + const long ret = sysconf(_SC_PAGE_SIZE); + + if (ret < 0) { + /* + * Fatal error since there is no safe way to recover from this. + */ + PERROR("Failed to get system page size using sysconf(_SC_PAGE_SIZE)"); + abort(); + } + + return (size_t) ret; +} + size_t default_get_channel_subbuf_size(void) { - return max(_DEFAULT_CHANNEL_SUBBUF_SIZE, PAGE_SIZE); + return max(_DEFAULT_CHANNEL_SUBBUF_SIZE, get_page_size()); } size_t default_get_metadata_subbuf_size(void) { - return max(DEFAULT_METADATA_SUBBUF_SIZE, PAGE_SIZE); + return max(DEFAULT_METADATA_SUBBUF_SIZE, get_page_size()); } size_t default_get_kernel_channel_subbuf_size(void) { - return max(DEFAULT_KERNEL_CHANNEL_SUBBUF_SIZE, PAGE_SIZE); + return max(DEFAULT_KERNEL_CHANNEL_SUBBUF_SIZE, get_page_size()); } size_t default_get_ust_pid_channel_subbuf_size(void) { - return max(DEFAULT_UST_PID_CHANNEL_SUBBUF_SIZE, PAGE_SIZE); + return max(DEFAULT_UST_PID_CHANNEL_SUBBUF_SIZE, get_page_size()); } size_t default_get_ust_uid_channel_subbuf_size(void) { - return max(DEFAULT_UST_UID_CHANNEL_SUBBUF_SIZE, PAGE_SIZE); + return max(DEFAULT_UST_UID_CHANNEL_SUBBUF_SIZE, get_page_size()); } pthread_attr_t *default_pthread_attr(void)