Lines Matching full:block

14 static int prestera_mall_prio_check(struct prestera_flow_block *block,  in prestera_mall_prio_check()  argument
21 err = prestera_flower_prio_get(block, f->common.chain_index, in prestera_mall_prio_check()
32 if (f->common.prio <= flower_prio_max && !block->ingress) { in prestera_mall_prio_check()
36 if (f->common.prio >= flower_prio_min && block->ingress) { in prestera_mall_prio_check()
44 int prestera_mall_prio_get(struct prestera_flow_block *block, in prestera_mall_prio_get() argument
47 if (!block->mall.bound) in prestera_mall_prio_get()
50 *prio_min = block->mall.prio_min; in prestera_mall_prio_get()
51 *prio_max = block->mall.prio_max; in prestera_mall_prio_get()
55 static void prestera_mall_prio_update(struct prestera_flow_block *block, in prestera_mall_prio_update() argument
58 block->mall.prio_min = min(block->mall.prio_min, f->common.prio); in prestera_mall_prio_update()
59 block->mall.prio_max = max(block->mall.prio_max, f->common.prio); in prestera_mall_prio_update()
62 int prestera_mall_replace(struct prestera_flow_block *block, in prestera_mall_replace() argument
91 err = prestera_mall_prio_check(block, f); in prestera_mall_replace()
97 list_for_each_entry(binding, &block->binding_list, list) { in prestera_mall_replace()
98 err = prestera_span_rule_add(binding, port, block->ingress); in prestera_mall_replace()
105 prestera_mall_prio_update(block, f); in prestera_mall_replace()
107 block->mall.bound = true; in prestera_mall_replace()
112 &block->binding_list, list) in prestera_mall_replace()
113 prestera_span_rule_del(binding, block->ingress); in prestera_mall_replace()
117 void prestera_mall_destroy(struct prestera_flow_block *block) in prestera_mall_destroy() argument
121 list_for_each_entry(binding, &block->binding_list, list) in prestera_mall_destroy()
122 prestera_span_rule_del(binding, block->ingress); in prestera_mall_destroy()
124 block->mall.prio_min = UINT_MAX; in prestera_mall_destroy()
125 block->mall.prio_max = 0; in prestera_mall_destroy()
126 block->mall.bound = false; in prestera_mall_destroy()