Merge pull request #1380 from robertbaldyga/available-memory-check
Use available memory statistic when possible
This commit is contained in:
commit
cefaa3b415
@ -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
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user