Thread (12 messages) flat view 12 messages, 4 authors, 2017-10-14

Re: [net-next V7 PATCH 1/5] bpf: introduce new bpf cpu map type BPF_MAP_TYPE_CPUMAP

From: kbuild test robot <hidden>
Date: 2017-10-14 00:26:20

Hi Jesper,

[auto build test ERROR on net-next/master]

url:    https://github.com/0day-ci/linux/commits/Jesper-Dangaard-Brouer/New-bpf-cpumap-type-for-XDP_REDIRECT/20171014-061849
config: blackfin-allyesconfig (attached as .config)
compiler: bfin-uclinux-gcc (GCC) 6.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=blackfin 

Note: the linux-review/Jesper-Dangaard-Brouer/New-bpf-cpumap-type-for-XDP_REDIRECT/20171014-061849 HEAD 000080e4de4026e29bcabecba678bc91f4a9688c builds fine.
      It only hurts bisectibility.

All errors (new ones prefixed by >>):

   kernel//bpf/cpumap.c: In function '__cpu_map_entry_alloc':
quoted
kernel//bpf/cpumap.c:242:2: error: expected ';' before 'rcpu'
     rcpu->kthread = kthread_create_on_node(cpu_map_kthread_run, rcpu, numa,
     ^~~~
   At top level:
   kernel//bpf/cpumap.c:184:12: warning: 'cpu_map_kthread_run' defined but not used [-Wunused-function]
    static int cpu_map_kthread_run(void *data)
               ^~~~~~~~~~~~~~~~~~~

vim +242 kernel//bpf/cpumap.c

   211	
   212	struct bpf_cpu_map_entry *__cpu_map_entry_alloc(u32 qsize, u32 cpu, int map_id)
   213	{
   214		gfp_t gfp = GFP_ATOMIC|__GFP_NOWARN;
   215		struct bpf_cpu_map_entry *rcpu;
   216		int numa, err;
   217	
   218		/* Have map->numa_node, but choose node of redirect target CPU */
   219		numa = cpu_to_node(cpu);
   220	
   221		rcpu = kzalloc_node(sizeof(*rcpu), gfp, numa);
   222		if (!rcpu)
   223			return NULL;
   224	
   225		/* Alloc percpu bulkq */
   226		rcpu->bulkq = __alloc_percpu_gfp(sizeof(*rcpu->bulkq),
   227						 sizeof(void *), gfp);
   228		if (!rcpu->bulkq)
   229			goto free_rcu;
   230	
   231		/* Alloc queue */
   232		rcpu->queue = kzalloc_node(sizeof(*rcpu->queue), gfp, numa);
   233		if (!rcpu->queue)
   234			goto free_bulkq;
   235	
   236		err = ptr_ring_init(rcpu->queue, qsize, gfp);
   237		if (err)
   238			goto free_queue;
   239		rcpu->qsize = qsize
   240	
   241		/* Setup kthread */
 > 242		rcpu->kthread = kthread_create_on_node(cpu_map_kthread_run, rcpu, numa,
   243						       "cpumap/%d/map:%d", cpu, map_id);
   244		if (IS_ERR(rcpu->kthread))
   245			goto free_ptr_ring;
   246	
   247		get_cpu_map_entry(rcpu); /* 1-refcnt for being in cmap->cpu_map[] */
   248		get_cpu_map_entry(rcpu); /* 1-refcnt for kthread */
   249	
   250		/* Make sure kthread runs on a single CPU */
   251		kthread_bind(rcpu->kthread, cpu);
   252		wake_up_process(rcpu->kthread);
   253	
   254		return rcpu;
   255	
   256	free_ptr_ring:
   257		ptr_ring_cleanup(rcpu->queue, NULL);
   258	free_queue:
   259		kfree(rcpu->queue);
   260	free_bulkq:
   261		free_percpu(rcpu->bulkq);
   262	free_rcu:
   263		kfree(rcpu);
   264		return NULL;
   265	}
   266	

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

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help