updated create_same_memory() inside lib/mem.c
v2 cover updated create_same_memory() inside lib/mem.c
changed in v2:
- modified '_function_name' as 'function_name'
- added 'static' key word for internal function
- updated a little commit log
Zhouping Liu (2):
mm/lib: rewrote create_same_memory()
mm/include: removed the global var 'memory'
testcases/kernel/mem/include/_private.h | 2 +- testcases/kernel/mem/include/mem.h | 5 - testcases/kernel/mem/lib/mem.c | 425 +++++++++++++------------------- 3 files changed, 170 insertions(+), 262 deletions(-)
Signature · 13 lines
1.7.11.7 ------------------------------------------------------------------------------ Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
PATCH v2 1/2 mm/lib: rewrote create_same_memory()
create_same_memory() was too large and contained lots of duplicated codes, and it's a little hard-coding, so that it's not easy to read and extend it for new case.
I splited it for five sub-functions:
ksm_child_memset(); create_ksm_child(); stop_ksm_children(); resume_ksm_children(); create_smae_memory();
Also I intruduced a data struct to control the mergeable data:
struct ksm_merge_data {
char data;
int mergeable_size;
};--- testcases/kernel/mem/include/_private.h | 2 +- testcases/kernel/mem/lib/mem.c | 425 +++++++++++++------------------- 2 files changed, 170 insertions(+), 257 deletions(-)
testcases/kernel/mem/include/_private.h +1 -1
@@ -11,7 +11,7 @@ static void _check(char *path, long int value);static void _group_check (int run,int pages_shared,int pages_sharing,int pages_volatile,int pages_unshared,int sleep_millisecs,int pages_to_scan); -static void _verify (char value,int proc,int start,int end, +static void _verify (char **memory_new,char value,int proc,int start,int end,int start2,int end2);/* cpuset/memcg */
testcases/kernel/mem/lib/mem.c +169 -256
490 lines not on this page · raw message
Signature · 13 lines
1.7.11.7 ------------------------------------------------------------------------------ Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
PATCH v3 2/2 mm/include: removed the global var 'memory'
we don't use the global var 'memory' any more,
so removed it, and changed local var 'memory_new'
as 'memory'.
--- testcases/kernel/mem/include/_private.h | 2 +- testcases/kernel/mem/include/mem.h | 5 ----- testcases/kernel/mem/lib/mem.c | 34 ++++++++++++++++----------------- 3 files changed, 18 insertions(+), 23 deletions(-)
testcases/kernel/mem/include/_private.h +1 -1
@@ -11,7 +11,7 @@ static void _check(char *path, long int value);static void _group_check (int run,int pages_shared,int pages_sharing,int pages_volatile,int pages_unshared,int sleep_millisecs,int pages_to_scan); -static void _verify (char **memory_new,char value,int proc,int start,int end, +static void _verify (char **memory,char value,int proc,int start,int end,int start2,int end2);/* cpuset/memcg */
testcases/kernel/mem/include/mem.h +0 -5
@@ -36,11 +36,6 @@ void testoom(int mempolicy, int lite, int numa);#define PATH_SHMMAX "/proc/sys/kernel/shmmax" -/* -* memory pointer to identify per process, MB unit, and byte like -* memory[process No.][MB unit No.][byte No.]. -*/ -char ***memory;void write_memcg (void );void create_same_memory (int size,int num,int unit);int opt_num, opt_size, opt_unit;
testcases/kernel/mem/lib/mem.c +17 -17
@@ -200,7 +200,7 @@ static void _group_check(int run, int pages_shared, int pages_sharing,_check ("pages_to_scan" , pages_to_scan); } -static void _verify (char **memory_new,char value,int proc, +static void _verify (char **memory,char value,int proc,int start,int end,int start2,int end2) {int i, j;
@@ -212,14 +212,14 @@ static void _verify(char **memory_new, char value, int proc,tst_resm (TINFO ,"child %d verifies memory content." , proc);memset (s, value, (end - start) * (end2 - start2)); -if (memcmp (memory_new[start], s, (end - start) * (end2 - start2)) +if (memcmp (memory[start], s, (end - start) * (end2 - start2)) !=0 )for (j = start; j < end; j++)for (i = start2; i < end2; i++) -if (memory_new[j][i] != value) +if (memory[j][i] != value)tst_resm (TFAIL ,"child %d has %c at " "%d,%d,%d." , - proc, memory_new[j][i], proc, + proc, memory[j][i], proc, j, i);free (s); }
@@ -241,7 +241,7 @@ static struct ksm_merge_data { };static void ksm_child_memset (int child_num,int size,int total_unit, -struct ksm_merge_data ksm_merge_data,char **memory_new) +struct ksm_merge_data ksm_merge_data,char **memory) {int i, j;int unit = size / total_unit;
@@ -260,34 +260,34 @@ static void ksm_child_memset(int child_num, int size, int total_unit,for (j =0 ; j < total_unit; j++) {for (i =0 ; i < unit *MB ; i++) - memory_new[j][i] = ksm_merge_data.data; + memory[j][i] = ksm_merge_data.data; }/* if it contains unshared page, then set 'e' char * at the end of the last page */ if (ksm_merge_data.mergeable_size < size *MB ) - memory_new[j-1 ][i-1 ] ='e' ; + memory[j-1 ][i-1 ] ='e' ; }static void create_ksm_child (int child_num,int size,int unit,struct ksm_merge_data *ksm_merge_data) {int j, total_unit; -char **memory_new; +char **memory;/* The total units in all */ total_unit = size / unit; -/* Apply for the space for memory_new */ - memory_new = (char **)malloc (total_unit *sizeof (char *)); +/* Apply for the space for memory */ + memory = (char **)malloc (total_unit *sizeof (char *));for (j =0 ; j < total_unit; j++) { - memory_new[j] =mmap (NULL , unit *MB ,PROT_READ |PROT_WRITE , + memory[j] =mmap (NULL , unit *MB ,PROT_READ |PROT_WRITE ,MAP_ANONYMOUS |MAP_PRIVATE ,-1 ,0 ); -if (memory_new[j] ==MAP_FAILED ) +if (memory[j] ==MAP_FAILED )tst_brkm (TBROK |TERRNO , tst_exit,"mmap" );#ifdef HAVE_MADV_MERGEABLE -if (madvise (memory_new[j], unit *MB ,MADV_MERGEABLE ) ==-1 ) +if (madvise (memory[j], unit *MB ,MADV_MERGEABLE ) ==-1 )tst_brkm (TBROK |TERRNO , tst_exit,"madvise" );#endif }
@@ -300,7 +300,7 @@ static void create_ksm_child(int child_num, int size, int unit,for (j =0 ; j <4 ; j++) {ksm_child_memset (child_num, size, total_unit, - ksm_merge_data[j], memory_new); + ksm_merge_data[j], memory);fflush (stdout);
@@ -309,12 +309,12 @@ static void create_ksm_child(int child_num, int size, int unit,tst_brkm (TBROK |TERRNO , tst_exit,"kill" );if (ksm_merge_data[j].mergeable_size < size *MB ) { -_verify (memory_new,'e' , child_num, total_unit -1 , +_verify (memory,'e' , child_num, total_unit -1 , total_unit, unit *MB -1 , unit *MB ); -_verify (memory_new, ksm_merge_data[j].data, child_num, +_verify (memory, ksm_merge_data[j].data, child_num,0 , total_unit,0 , unit *MB -1 ); }else { -_verify (memory_new, ksm_merge_data[j].data, child_num, +_verify (memory, ksm_merge_data[j].data, child_num,0 , total_unit,0 , unit *MB ); } }
Signature · 13 lines
1.7.11.7 ------------------------------------------------------------------------------ Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812 _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
Quoted 5 lines · Zhouping Liu
changed in v2:
- modified '_function_name' as 'function_name'
- added 'static' key word for internal function
- updated a little commit log
Quoted 9 lines
Zhouping Liu (2):
mm/lib: rewrotecreate_same_memory()
mm/include: removed the global var 'memory'testcases/kernel/mem/include/_private.h | 2 +- testcases/kernel/mem/include/mem.h | 5 - testcases/kernel/mem/lib/mem.c | 425 +++++++++++++------------------- 3 files changed, 170 insertions(+), 262 deletions(-)
Since there is no function updated in the patch, I'm OK to apply it if a unit-test is executed (better testing in a wide range of systems) and get ACKs from other reviewers. Zhouping, would you mind pasting some test details against your patch before we apply it?
Caspar
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Quoted 17 lines · Caspar Zhang
Quoted 9 lines · Zhouping Liu
changed in v2:
- modified '_function_name' as 'function_name'
- added 'static' key word for internal function
- updated a little commit logZhouping Liu (2):
mm/lib: rewrotecreate_same_memory()
mm/include: removed the global var 'memory'Quoted 6 lines
testcases/kernel/mem/include/_private.h | 2 +- testcases/kernel/mem/include/mem.h | 5 - testcases/kernel/mem/lib/mem.c | 425 +++++++++++++------------------- 3 files changed, 170 insertions(+), 262 deletions(-)
Quoted 4 lines
Since there is no function updated in the patch, I'm OK to apply it if a unit-test is executed (better testing in a wide range of systems) and get ACKs from other reviewers. Zhouping, would you mind pasting some test details against your patch before we apply it?
This is an example of output log with the patch on Fedora 17:
[root@ZhoupingLiu ksm]# ./ksm01 -s 1 -n 6
ksm01 0 TINFO : child 0 stops. ksm01 0 TINFO : child 1 stops. ksm01 0 TINFO : child 2 stops. ksm01 0 TINFO : child 3 stops. ksm01 0 TINFO : wait for all children to stop. ksm01 0 TINFO : child 4 stops. ksm01 0 TINFO : child 5 stops. ksm01 0 TINFO : KSM merging... ksm01 0 TINFO : resume all children. ksm01 0 TINFO : child 0 continues... ksm01 0 TINFO : child 1 continues... ksm01 0 TINFO : child 0 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 1 allocates 1 MB filled with 'a' ksm01 0 TINFO : child 4 continues... ksm01 0 TINFO : child 4 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 2 continues... ksm01 0 TINFO : child 2 allocates 1 MB filled with 'a' ksm01 0 TINFO : child 3 continues... ksm01 0 TINFO : child 3 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 0 stops. ksm01 0 TINFO : child 2 stops. ksm01 0 TINFO : child 3 stops. ksm01 0 TINFO : child 5 continues... ksm01 0 TINFO : child 5 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 4 stops. ksm01 0 TINFO : child 1 stops. ksm01 0 TINFO : child 5 stops. ksm01 0 TINFO : ksm daemon takes 20s to scan all mergeable pages ksm01 0 TINFO : check! ksm01 0 TINFO : run is 1. ksm01 0 TINFO : pages_shared is 2. ksm01 0 TINFO : pages_sharing is 1534. ksm01 0 TINFO : pages_volatile is 0. ksm01 0 TINFO : pages_unshared is 0. ksm01 0 TINFO : sleep_millisecs is 0. ksm01 0 TINFO : pages_to_scan is 1536. ksm01 0 TINFO : wait for all children to stop. ksm01 0 TINFO : resume all children. ksm01 0 TINFO : child 1 verifies memory content. ksm01 0 TINFO : child 0 verifies memory content. ksm01 0 TINFO : child 2 verifies memory content. ksm01 0 TINFO : child 1 continues... ksm01 0 TINFO : child 0 continues... ksm01 0 TINFO : child 2 continues... ksm01 0 TINFO : child 1 allocates 1 MB filled with 'b' ksm01 0 TINFO : child 0 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 2 allocates 1 MB filled with 'a' ksm01 0 TINFO : child 2 stops. ksm01 0 TINFO : child 4 verifies memory content. ksm01 0 TINFO : child 5 verifies memory content. ksm01 0 TINFO : child 0 stops. ksm01 0 TINFO : child 1 stops. ksm01 0 TINFO : child 3 verifies memory content. ksm01 0 TINFO : child 4 continues... ksm01 0 TINFO : child 5 continues... ksm01 0 TINFO : child 5 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 4 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 3 continues... ksm01 0 TINFO : child 3 allocates 1 MB filled with 'c' ksm01 0 TINFO : child 5 stops. ksm01 0 TINFO : child 3 stops. ksm01 0 TINFO : child 4 stops. ksm01 0 TINFO : ksm daemon takes 20s to scan all mergeable pages ksm01 0 TINFO : check! ksm01 0 TINFO : run is 1. ksm01 0 TINFO : pages_shared is 3. ksm01 0 TINFO : pages_sharing is 1533. ksm01 0 TINFO : pages_volatile is 0. ksm01 0 TINFO : pages_unshared is 0. ksm01 0 TINFO : sleep_millisecs is 0. ksm01 0 TINFO : pages_to_scan is 1536. ksm01 0 TINFO : wait for all children to stop. ksm01 0 TINFO : resume all children. ksm01 0 TINFO : child 1 verifies memory content. ksm01 0 TINFO : child 0 verifies memory content. ksm01 0 TINFO : child 2 verifies memory content. ksm01 0 TINFO : child 1 continues... ksm01 0 TINFO : child 1 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 0 continues... ksm01 0 TINFO : child 2 continues... ksm01 0 TINFO : child 0 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 2 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 3 verifies memory content. ksm01 0 TINFO : child 3 continues... ksm01 0 TINFO : child 3 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 1 stops. ksm01 0 TINFO : child 0 stops. ksm01 0 TINFO : child 2 stops. ksm01 0 TINFO : child 5 verifies memory content. ksm01 0 TINFO : child 4 verifies memory content. ksm01 0 TINFO : child 5 continues... ksm01 0 TINFO : child 5 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 3 stops. ksm01 0 TINFO : child 4 continues... ksm01 0 TINFO : child 4 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 5 stops. ksm01 0 TINFO : child 4 stops. ksm01 0 TINFO : ksm daemon takes 20s to scan all mergeable pages ksm01 0 TINFO : check! ksm01 0 TINFO : run is 1. ksm01 0 TINFO : pages_shared is 1. ksm01 0 TINFO : pages_sharing is 1535. ksm01 0 TINFO : pages_volatile is 0. ksm01 0 TINFO : pages_unshared is 0. ksm01 0 TINFO : sleep_millisecs is 0. ksm01 0 TINFO : pages_to_scan is 1536. ksm01 0 TINFO : wait for all children to stop. ksm01 0 TINFO : resume all children. ksm01 0 TINFO : child 1 verifies memory content. ksm01 0 TINFO : child 0 verifies memory content. ksm01 0 TINFO : child 2 verifies memory content. ksm01 0 TINFO : child 4 verifies memory content. ksm01 0 TINFO : child 1 continues... ksm01 0 TINFO : child 1 allocates 1 MB filled with 'd' except one page with 'e' ksm01 0 TINFO : child 0 continues... ksm01 0 TINFO : child 2 continues... ksm01 0 TINFO : child 0 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 2 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 4 continues... ksm01 0 TINFO : child 4 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 1 stops. ksm01 0 TINFO : child 0 stops. ksm01 0 TINFO : child 2 stops. ksm01 0 TINFO : child 3 verifies memory content. ksm01 0 TINFO : child 5 verifies memory content. ksm01 0 TINFO : child 3 continues... ksm01 0 TINFO : child 3 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 4 stops. ksm01 0 TINFO : child 5 continues... ksm01 0 TINFO : child 5 allocates 1 MB filled with 'd' ksm01 0 TINFO : child 3 stops. ksm01 0 TINFO : child 5 stops. ksm01 0 TINFO : ksm daemon takes 20s to scan all mergeable pages ksm01 0 TINFO : check! ksm01 0 TINFO : run is 1. ksm01 0 TINFO : pages_shared is 1. ksm01 0 TINFO : pages_sharing is 1534. ksm01 0 TINFO : pages_volatile is 0. ksm01 0 TINFO : pages_unshared is 1. ksm01 0 TINFO : sleep_millisecs is 0. ksm01 0 TINFO : pages_to_scan is 1536. ksm01 0 TINFO : wait for all children to stop. ksm01 0 TINFO : KSM unmerging... ksm01 0 TINFO : resume all children. ksm01 0 TINFO : child 1 verifies memory content. ksm01 0 TINFO : child 1 verifies memory content. ksm01 0 TINFO : child 0 verifies memory content. ksm01 0 TINFO : child 4 verifies memory content. ksm01 0 TINFO : child 4 finished. ksm01 0 TINFO : child 1 finished. ksm01 0 TINFO : child 0 finished. ksm01 0 TINFO : child 5 verifies memory content. ksm01 0 TINFO : child 5 finished. ksm01 0 TINFO : child 2 verifies memory content. ksm01 0 TINFO : child 3 verifies memory content. ksm01 0 TINFO : child 2 finished. ksm01 0 TINFO : child 3 finished. ksm01 0 TINFO : ksm daemon takes 10s to scan all mergeable pages ksm01 0 TINFO : check! ksm01 0 TINFO : run is 2. ksm01 0 TINFO : pages_shared is 0. ksm01 0 TINFO : pages_sharing is 0. ksm01 0 TINFO : pages_volatile is 0. ksm01 0 TINFO : pages_unshared is 0. ksm01 0 TINFO : sleep_millisecs is 0. ksm01 0 TINFO : pages_to_scan is 1536. ksm01 0 TINFO : stop KSM. ksm01 0 TINFO : ksm daemon takes 10s to scan all mergeable pages ksm01 0 TINFO : check! ksm01 0 TINFO : run is 0. ksm01 0 TINFO : pages_shared is 0. ksm01 0 TINFO : pages_sharing is 0. ksm01 0 TINFO : pages_volatile is 0. ksm01 0 TINFO : pages_unshared is 0. ksm01 0 TINFO : sleep_millisecs is 0. ksm01 0 TINFO : pages_to_scan is 1536.
Thanks,
Zhouping
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Quoted 1 line · Zhouping Liu
This is an example of output log with the patch on Fedora 17:
Nice.
Is there a higher coverage of test result (ksm01-05 and on NUMA system / large system / small system, etc)?
Caspar
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Quoted 7 lines · Caspar Zhang
Quoted 1 line · Zhouping Liu
This is an example of output log with the patch on Fedora 17:
Nice.
Is there a higher coverage of test result (ksm01-05 and on NUMA system / large system / small system, etc)?
yes, I tested it on i386/x86_64/ppc64 arch, also did it on NUMA system, ksm0[1-5] all PASSed.
Thanks,
Zhouping
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Re: [LTP] [PATCH v2 1/2] mm/lib: rewrote create_same_memory()
In reply to Zhouping LiuQuoted 12 lines · Zhouping Liu
create_same_memory()was too large and contained lots of duplicated codes, and it's a little hard-coding, so that it's not easy to read and extend it for new case.I splited it for five sub-functions:
ksm_child_memset(); create_ksm_child(); stop_ksm_children(); resume_ksm_children(); create_smae_memory();
Quoted 8 lines
Also I intruduced a data struct to control the mergeable data:
struct ksm_merge_data { char data; int mergeable_size; };Signed-off-by Zhouping Liu <[email protected]>
I have no objection.
Thanks,
Wanlong Gao
------------------------------------------------------------------------------
Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS and more. Get SQL Server skills now (including 2012) with LearnDevNow - 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only - learn more at:
http://p.sf.net/sfu/learnmore_122512
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Re: [LTP] [PATCH v3 2/2] mm/include: removed the global var 'memory'
In reply to Zhouping LiuQuoted 5 lines · Zhouping Liu
we don't use the global var 'memory' any more,
so removed it, and changed local var 'memory_new'
as 'memory'.Signed-off-by Zhouping Liu <[email protected]>
------------------------------------------------------------------------------
Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS and more. Get SQL Server skills now (including 2012) with LearnDevNow - 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only - learn more at:
http://p.sf.net/sfu/learnmore_122512
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Wanlong Gao
AppliedRe: [LTP] [PATCH v2 1/2] mm/lib: rewrote create_same_memory()
In reply to Zhouping LiuQuoted 12 lines · Zhouping Liu
create_same_memory()was too large and contained lots of duplicated codes, and it's a little hard-coding, so that it's not easy to read and extend it for new case.I splited it for five sub-functions:
ksm_child_memset(); create_ksm_child(); stop_ksm_children(); resume_ksm_children(); create_smae_memory();
Quoted 8 lines
Also I intruduced a data struct to control the mergeable data:
struct ksm_merge_data { char data; int mergeable_size; };Signed-off-by Zhouping Liu <[email protected]>
Applied, thank you.
Wanlong Gao
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122412
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list
Wanlong Gao
AppliedRe: [LTP] [PATCH v3 2/2] mm/include: removed the global var 'memory'
In reply to Zhouping LiuQuoted 5 lines · Zhouping Liu
we don't use the global var 'memory' any more,
so removed it, and changed local var 'memory_new'
as 'memory'.Signed-off-by Zhouping Liu <[email protected]>
Applied, thank you.
Wanlong Gao
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122412
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list