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 |