Hi Yu,

[auto build test ERROR on mmotm/master]
[also build test ERROR on v4.12-rc3 next-20170602]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/Yu-Zhao/memcg-refactor-mem_cgroup_resize_limit/20170605-041444
base:   git://git.cmpxchg.org/linux-mmotm.git master
config: x86_64-randconfig-x019-201723 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All error/warnings (new ones prefixed by >>):

   mm/memcontrol.c: In function 'mem_cgroup_resize_limit':
>> mm/memcontrol.c:2453:3: warning: this 'if' clause does not guard... 
>> [-Wmisleading-indentation]
      if (inverted)
      ^~
   mm/memcontrol.c:2455:4: note: ...this statement, but the latter is 
misleadingly indented as if it is guarded by the 'if'
       ret = -EINVAL;
       ^~~
>> mm/memcontrol.c:2458:3: error: expected 'while' before 'if'
      if (limit > counter->limit)
      ^~
>> mm/memcontrol.c:2464:4: error: break statement not within loop or switch
       break;
       ^~~~~
   mm/memcontrol.c:2428:7: warning: unused variable 'enlarge' 
[-Wunused-variable]
     bool enlarge = false;
          ^~~~~~~
>> mm/memcontrol.c:2474:2: warning: no return statement in function returning 
>> non-void [-Wreturn-type]
     } while (retry_count);
     ^
   mm/memcontrol.c: At top level:
>> mm/memcontrol.c:2474:4: error: expected identifier or '(' before 'while'
     } while (retry_count);
       ^~~~~
>> mm/memcontrol.c:2476:2: error: expected identifier or '(' before 'if'
     if (!ret && enlarge)
     ^~
>> mm/memcontrol.c:2479:2: error: expected identifier or '(' before 'return'
     return ret;
     ^~~~~~
>> mm/memcontrol.c:2480:1: error: expected identifier or '(' before '}' token
    }
    ^

vim +2458 mm/memcontrol.c

  2422  
  2423  static int mem_cgroup_resize_limit(struct mem_cgroup *memcg,
  2424                                     unsigned long limit, bool memsw)
  2425  {
  2426          unsigned long curusage;
  2427          unsigned long oldusage;
> 2428          bool enlarge = false;
  2429          int retry_count;
  2430          int ret;
  2431          bool inverted;
  2432          struct page_counter *counter = memsw ? &memcg->memsw : 
&memcg->memory;
  2433  
  2434          /*
  2435           * For keeping hierarchical_reclaim simple, how long we should 
retry
  2436           * is depends on callers. We set our retry-count to be function
  2437           * of # of children which we should visit in this loop.
  2438           */
  2439          retry_count = MEM_CGROUP_RECLAIM_RETRIES *
  2440                        mem_cgroup_count_children(memcg);
  2441  
  2442          oldusage = page_counter_read(counter);
  2443  
  2444          do {
  2445                  if (signal_pending(current)) {
  2446                          ret = -EINTR;
  2447                          break;
  2448                  }
  2449  
  2450                  mutex_lock(&memcg_limit_mutex);
  2451                  inverted = memsw ? limit < memcg->memory.limit :
  2452                                     limit > memcg->memsw.limit;
> 2453                  if (inverted)
  2454                          mutex_unlock(&memcg_limit_mutex);
  2455                          ret = -EINVAL;
  2456                          break;
  2457                  }
> 2458                  if (limit > counter->limit)
  2459                          enlarge = true;
  2460                  ret = page_counter_limit(counter, limit);
  2461                  mutex_unlock(&memcg_limit_mutex);
  2462  
  2463                  if (!ret)
> 2464                          break;
  2465  
  2466                  try_to_free_mem_cgroup_pages(memcg, 1, GFP_KERNEL, 
!memsw);
  2467  
  2468                  curusage = page_counter_read(counter);
  2469                  /* Usage is reduced ? */
  2470                  if (curusage >= oldusage)
  2471                          retry_count--;
  2472                  else
  2473                          oldusage = curusage;
> 2474          } while (retry_count);
  2475  
> 2476          if (!ret && enlarge)
  2477                  memcg_oom_recover(memcg);
  2478  
> 2479          return ret;
> 2480  }
  2481  
  2482  unsigned long mem_cgroup_soft_limit_reclaim(pg_data_t *pgdat, int order,
  2483                                              gfp_t gfp_mask,

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to