lowmem-controller: Split up lowmem-controller feature from lowmem module
[platform/core/system/resourced.git] / src / resource-limiter / memory / lowmem-controller.h
1 /**
2  * resourced
3  *
4  * Copyright (c) 2023 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either excontroller or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19
20 /**
21  * @file lowmem-controller.h
22  * @desc Functions for controller features.
23  */
24
25 #ifndef __LOWMEM_CONTROLLER_H__
26 #define __LOWMEM_CONTROLLER_H__
27
28 int lowmem_controller_kill_candidates(GArray *candidates,
29                         unsigned should_be_freed, unsigned int threshold,
30                         int max_victims, int flags,
31                         int *status, unsigned int *total_victim_size,
32                         unsigned lmk_start_threshold_mb,
33                         void(*oom_popup)(void));
34
35 #endif /* __LOWMEM_CONTROLLER_H__ */