Function report |
Source Code:kernel\bpf\bpf_lru_list.c |
Create Date:2022-07-28 13:12:44 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:bpf_common_lru_pop_free
Proto:static struct bpf_lru_node *bpf_common_lru_pop_free(struct bpf_lru *lru, u32 hash)
Type:struct bpf_lru_node
Parameter:
Type | Parameter | Name |
---|---|---|
struct bpf_lru * | lru | |
u32 | hash |
435 | clru = common_lru |
441 | loc_l = per_cpu_ptr(local_list, cpu) |
443 | raw_spin_lock_irqsave( & lock, flags) |
445 | node = __local_list_pop_free(loc_l) |
446 | If Not node Then |
448 | node = __local_list_pop_free(loc_l) |
454 | raw_spin_unlock_irqrestore( & lock, flags) |
467 | first_steal = next_steal |
468 | steal = first_steal |
469 | Do |
470 | steal_loc_l = per_cpu_ptr(local_list, steal) |
472 | raw_spin_lock_irqsave( & lock, flags) |
474 | node = __local_list_pop_free(steal_loc_l) |
475 | If Not node Then node = __local_list_pop_pending(lru, steal_loc_l) |
478 | raw_spin_unlock_irqrestore( & lock, flags) |
480 | steal = get_next_cpu(steal) |
481 | When Not node && steal != first_steal cycle |
483 | next_steal = steal |
485 | If node Then |
486 | raw_spin_lock_irqsave( & lock, flags) |
488 | raw_spin_unlock_irqrestore( & lock, flags) |
491 | Return node |
Name | Describe |
---|---|
bpf_lru_pop_free |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |