diff --git a/configure.d/1_global_page_state.conf b/configure.d/1_get_free_memory.conf similarity index 50% rename from configure.d/1_global_page_state.conf rename to configure.d/1_get_free_memory.conf index 1584e34..89acc10 100644 --- a/configure.d/1_global_page_state.conf +++ b/configure.d/1_get_free_memory.conf @@ -9,12 +9,15 @@ check() { cur_name=$(basename $2) config_file_path=$1 - if compile_module $cur_name "global_zone_page_state(1);" "linux/mm.h" + if compile_module $cur_name "si_mem_available();" "linux/mm.h" then echo $cur_name "1" >> $config_file_path - elif compile_module $cur_name "global_page_state(1);" "linux/mm.h" + elif compile_module $cur_name "global_zone_page_state(1);" "linux/mm.h" then echo $cur_name "2" >> $config_file_path + elif compile_module $cur_name "global_page_state(1);" "linux/mm.h" + then + echo $cur_name "3" >> $config_file_path else echo $cur_name "X" >> $config_file_path fi @@ -24,15 +27,21 @@ apply() { case "$1" in "1") add_function " - static inline unsigned long cas_global_zone_page_state(enum zone_stat_item item) + static inline unsigned long cas_get_free_memory(void) { - return global_zone_page_state(item); + return si_mem_available() << PAGE_SHIFT; }" ;; "2") add_function " - static inline unsigned long cas_global_zone_page_state(enum zone_stat_item item) + static inline unsigned long cas_get_free_memory(void) { - return global_page_state(item); + return global_zone_page_state(NR_FREE_PAGES) << PAGE_SHIFT; + }" ;; + "3") + add_function " + static inline unsigned long cas_get_free_memory(void) + { + return global_page_state(NR_FREE_PAGES) << PAGE_SHIFT; }" ;; *) exit 1 diff --git a/modules/cas_cache/ocf_env.h b/modules/cas_cache/ocf_env.h index 5040085..a532a3f 100644 --- a/modules/cas_cache/ocf_env.h +++ b/modules/cas_cache/ocf_env.h @@ -1,5 +1,5 @@ /* -* Copyright(c) 2012-2021 Intel Corporation +* Copyright(c) 2012-2022 Intel Corporation * SPDX-License-Identifier: BSD-3-Clause */ @@ -22,7 +22,7 @@ static inline uint64_t env_get_free_memory(void) { - return cas_global_zone_page_state(NR_FREE_PAGES) << PAGE_SHIFT; + return cas_get_free_memory(); } static inline void *env_malloc(size_t size, int flags)