On Thu, Apr 18, 2019 at 03:10:33PM -0700, Andrew Morton wrote: > On Thu, 18 Apr 2019 21:39:25 +0200 "Uladzislau Rezki (Sony)" <urezki@xxxxxxxxx> wrote: > > > On my "Intel(R) Xeon(R) W-2135 CPU @ 3.70GHz" system(12 CPUs) > > i get the warning from the compiler about frame size: > > > > <snip> > > warning: the frame size of 1096 bytes is larger than 1024 bytes > > [-Wframe-larger-than=] > > <snip> > > > > the size of cpumask_t depends on number of CPUs, therefore just > > make use of cpumask_of() in set_cpus_allowed_ptr() as a second > > argument. > > > > ... > L > > --- a/lib/test_vmalloc.c > > +++ b/lib/test_vmalloc.c > > @@ -383,14 +383,14 @@ static void shuffle_array(int *arr, int n) > > static int test_func(void *private) > > { > > struct test_driver *t = private; > > - cpumask_t newmask = CPU_MASK_NONE; > > int random_array[ARRAY_SIZE(test_case_array)]; > > int index, i, j, ret; > > ktime_t kt; > > u64 delta; > > > > - cpumask_set_cpu(t->cpu, &newmask); > > - set_cpus_allowed_ptr(current, &newmask); > > + ret = set_cpus_allowed_ptr(current, cpumask_of(t->cpu)); > > + if (ret < 0) > > + pr_err("Failed to set affinity to %d CPU\n", t->cpu); > > > > for (i = 0; i < ARRAY_SIZE(test_case_array); i++) > > random_array[i] = i; > > lgtm. > > While we're in there... > > > From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Subject: lib/test_vmalloc.c:test_func(): eliminate local `ret' > > Local 'ret' is unneeded and was poorly named: the variable `ret' generally > means the "the value which this function will return". > > Cc: Roman Gushchin <guro@xxxxxx> > Cc: Uladzislau Rezki <urezki@xxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxxx> > Cc: Matthew Wilcox <willy@xxxxxxxxxxxxx> > Cc: Thomas Garnier <thgarnie@xxxxxxxxxx> > Cc: Oleksiy Avramchenko <oleksiy.avramchenko@xxxxxxxxxxxxxx> > Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> > Cc: Joel Fernandes <joelaf@xxxxxxxxxx> > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Cc: Ingo Molnar <mingo@xxxxxxx> > Cc: Tejun Heo <tj@xxxxxxxxxx> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > --- > > lib/test_vmalloc.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > --- a/lib/test_vmalloc.c~a > +++ a/lib/test_vmalloc.c > @@ -384,12 +384,11 @@ static int test_func(void *private) > { > struct test_driver *t = private; > int random_array[ARRAY_SIZE(test_case_array)]; > - int index, i, j, ret; > + int index, i, j; > ktime_t kt; > u64 delta; > > - ret = set_cpus_allowed_ptr(current, cpumask_of(t->cpu)); > - if (ret < 0) > + if (set_cpus_allowed_ptr(current, cpumask_of(t->cpu)) < 0) > pr_err("Failed to set affinity to %d CPU\n", t->cpu); > > for (i = 0; i < ARRAY_SIZE(test_case_array); i++) > @@ -415,8 +414,7 @@ static int test_func(void *private) > > kt = ktime_get(); > for (j = 0; j < test_repeat_count; j++) { > - ret = test_case_array[index].test_func(); > - if (!ret) > + if (!test_case_array[index].test_func()) > per_cpu_test_data[t->cpu][index].test_passed++; > else > per_cpu_test_data[t->cpu][index].test_failed++; > _ > Agree with your slight update. Thank you! -- Vlad Rezki