函数逻辑报告 |
Source Code:kernel\bpf\cpumap.c |
Create Date:2022-07-27 14:41:44 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:cpu_map_kthread_run
函数原型:static int cpu_map_kthread_run(void *data)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
void * | data |
253 | set_current_state(睡眠态) |
269 | set_current_state(睡眠态) |
274 | 否则 |
277 | 否则 |
278 | sched等于cond_resched() |
286 | n等于ptr_ring_consume_batched( Queue with potential multi-producers, and single-consumer kthread , frames, CPUMAP_BATCH) |
299 | m等于kmem_cache_alloc_bulk(skbuff_head_cache, gfp, n, skbs) |
300 | 如果此条件成立可能性小(为编译器优化)(m == 0)则 |
306 | local_bh_disable() |
312 | skb等于cpu_map_build_skb(rcpu, xdpf, skb) |
313 | 如果非skb则 |
314 | xdp_return_frame(xdpf) |
315 | 继续下一循环 |
319 | ret等于netif_receive_skb_core(skb) |
320 | 如果ret恒等于packet dropped 则drops自加 |
324 | trace_xdp_cpumap_kthread( Back reference to map , n, drops, sched) |
326 | local_bh_enable() |
330 | put_cpu_map_entry(rcpu) |
331 | 返回:0 |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |