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() {
|
check() {
|
||||||
cur_name=$(basename $2)
|
cur_name=$(basename $2)
|
||||||
config_file_path=$1
|
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
|
then
|
||||||
echo $cur_name "1" >> $config_file_path
|
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
|
then
|
||||||
echo $cur_name "2" >> $config_file_path
|
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
|
else
|
||||||
echo $cur_name "X" >> $config_file_path
|
echo $cur_name "X" >> $config_file_path
|
||||||
fi
|
fi
|
||||||
@ -24,15 +27,21 @@ apply() {
|
|||||||
case "$1" in
|
case "$1" in
|
||||||
"1")
|
"1")
|
||||||
add_function "
|
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")
|
"2")
|
||||||
add_function "
|
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
|
exit 1
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright(c) 2012-2021 Intel Corporation
|
* Copyright(c) 2012-2022 Intel Corporation
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
* SPDX-License-Identifier: BSD-3-Clause
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
static inline uint64_t env_get_free_memory(void)
|
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)
|
static inline void *env_malloc(size_t size, int flags)
|
||||||
|
Loading…
Reference in New Issue
Block a user