Loading innobase/os/os0proc.c +10 −4 Original line number Diff line number Diff line Loading @@ -532,7 +532,7 @@ os_mem_alloc_large( ibool assert_on_error) /* in: if TRUE, we crash mysqld if the memory cannot be allocated */ { #ifdef UNIV_LINUX #ifdef HAVE_LARGE_PAGES ulint size; int shmid; void *ptr = NULL; Loading @@ -542,6 +542,7 @@ os_mem_alloc_large( goto skip; } #ifdef UNIV_LINUX /* Align block size to os_large_page_size */ size = ((n - 1) & ~(os_large_page_size - 1)) + os_large_page_size; Loading @@ -561,6 +562,7 @@ os_mem_alloc_large( */ shmctl(shmid, IPC_RMID, &buf); } #endif if (ptr) { if (set_to_zero) { Loading @@ -573,8 +575,8 @@ os_mem_alloc_large( } fprintf(stderr, "InnoDB HugeTLB: Warning: Using conventional memory pool\n"); #endif skip: #endif /* HAVE_LARGE_PAGES */ return(ut_malloc_low(n, set_to_zero, assert_on_error)); } Loading @@ -587,8 +589,12 @@ os_mem_free_large( /*=================*/ void *ptr) /* in: number of bytes */ { #ifdef HAVE_LARGE_PAGES if (os_use_large_pages && os_large_page_size #ifdef UNIV_LINUX if (os_use_large_pages && os_large_page_size && !shmdt(ptr)) { && !shmdt(ptr) #endif ) { return; } #endif Loading Loading
innobase/os/os0proc.c +10 −4 Original line number Diff line number Diff line Loading @@ -532,7 +532,7 @@ os_mem_alloc_large( ibool assert_on_error) /* in: if TRUE, we crash mysqld if the memory cannot be allocated */ { #ifdef UNIV_LINUX #ifdef HAVE_LARGE_PAGES ulint size; int shmid; void *ptr = NULL; Loading @@ -542,6 +542,7 @@ os_mem_alloc_large( goto skip; } #ifdef UNIV_LINUX /* Align block size to os_large_page_size */ size = ((n - 1) & ~(os_large_page_size - 1)) + os_large_page_size; Loading @@ -561,6 +562,7 @@ os_mem_alloc_large( */ shmctl(shmid, IPC_RMID, &buf); } #endif if (ptr) { if (set_to_zero) { Loading @@ -573,8 +575,8 @@ os_mem_alloc_large( } fprintf(stderr, "InnoDB HugeTLB: Warning: Using conventional memory pool\n"); #endif skip: #endif /* HAVE_LARGE_PAGES */ return(ut_malloc_low(n, set_to_zero, assert_on_error)); } Loading @@ -587,8 +589,12 @@ os_mem_free_large( /*=================*/ void *ptr) /* in: number of bytes */ { #ifdef HAVE_LARGE_PAGES if (os_use_large_pages && os_large_page_size #ifdef UNIV_LINUX if (os_use_large_pages && os_large_page_size && !shmdt(ptr)) { && !shmdt(ptr) #endif ) { return; } #endif Loading