Function report |
Source Code:mm\huge_memory.c |
Create Date:2022-07-28 16:03:26 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:deferred_split_scan
Proto:static unsigned long deferred_split_scan(struct shrinker *shrink, struct shrink_control *sc)
Type:unsigned long
Parameter:
Type | Parameter | Name |
---|---|---|
struct shrinker * | shrink | |
struct shrink_control * | sc |
2906 | ds_queue = deferred_split_queue |
2910 | split = 0 |
2917 | spin_lock_irqsave( & split_queue_lock, flags) |
2921 | page = compound_head(page) |
2924 | Else |
2927 | split_queue_len-- |
2929 | If Not --How many objects scan_objects should scan and try to reclaim.* This is reset before every call, so it is safe for callees* to modify. Then Break |
2932 | spin_unlock_irqrestore( & split_queue_lock, flags) |
2936 | If Not Return true if the page was successfully locked Then Go to next |
2939 | If Not split_huge_page(page) Then split++ |
2942 | next : |
2946 | spin_lock_irqsave( & split_queue_lock, flags) |
2948 | spin_unlock_irqrestore( & split_queue_lock, flags) |
2954 | If Not split && list_empty - tests whether a list is empty*@head: the list to test. Then Return SHRINK_STOP |
2956 | Return split |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |