Lines Matching refs:fnew

1855 				struct cls_fl_filter *fnew,  in fl_check_assign_mask()  argument
1868 fnew->mask = rhashtable_lookup_get_insert_fast(&head->ht, in fl_check_assign_mask()
1871 if (!fnew->mask) { in fl_check_assign_mask()
1885 fnew->mask = newmask; in fl_check_assign_mask()
1887 } else if (IS_ERR(fnew->mask)) { in fl_check_assign_mask()
1888 ret = PTR_ERR(fnew->mask); in fl_check_assign_mask()
1889 } else if (fold && fold->mask != fnew->mask) { in fl_check_assign_mask()
1891 } else if (!refcount_inc_not_zero(&fnew->mask->refcnt)) { in fl_check_assign_mask()
1942 static int fl_ht_insert_unique(struct cls_fl_filter *fnew, in fl_ht_insert_unique() argument
1946 struct fl_flow_mask *mask = fnew->mask; in fl_ht_insert_unique()
1950 &fnew->ht_node, in fl_ht_insert_unique()
1972 struct cls_fl_filter *fnew; in fl_change() local
2005 fnew = kzalloc(sizeof(*fnew), GFP_KERNEL); in fl_change()
2006 if (!fnew) { in fl_change()
2010 INIT_LIST_HEAD(&fnew->hw_list); in fl_change()
2011 refcount_set(&fnew->refcnt, 1); in fl_change()
2013 err = tcf_exts_init(&fnew->exts, net, TCA_FLOWER_ACT, 0); in fl_change()
2018 fnew->flags = nla_get_u32(tb[TCA_FLOWER_FLAGS]); in fl_change()
2020 if (!tc_flags_valid(fnew->flags)) { in fl_change()
2026 err = fl_set_parms(net, tp, fnew, mask, base, tb, tca[TCA_RATE], ovr, in fl_change()
2031 err = fl_check_assign_mask(head, fnew, fold, mask); in fl_change()
2035 err = fl_ht_insert_unique(fnew, fold, &in_ht); in fl_change()
2039 if (!tc_skip_hw(fnew->flags)) { in fl_change()
2040 err = fl_hw_replace_filter(tp, fnew, rtnl_held, extack); in fl_change()
2045 if (!tc_in_hw(fnew->flags)) in fl_change()
2046 fnew->flags |= TCA_CLS_FLAGS_NOT_IN_HW; in fl_change()
2065 fnew->handle = handle; in fl_change()
2069 fnew->mask->filter_ht_params; in fl_change()
2071 err = rhashtable_insert_fast(&fnew->mask->ht, in fl_change()
2072 &fnew->ht_node, in fl_change()
2079 refcount_inc(&fnew->refcnt); in fl_change()
2083 idr_replace(&head->handle_idr, fnew, fnew->handle); in fl_change()
2084 list_replace_rcu(&fold->list, &fnew->list); in fl_change()
2101 err = idr_alloc_u32(&head->handle_idr, fnew, &handle, in fl_change()
2114 err = idr_alloc_u32(&head->handle_idr, fnew, &handle, in fl_change()
2120 refcount_inc(&fnew->refcnt); in fl_change()
2121 fnew->handle = handle; in fl_change()
2122 list_add_tail_rcu(&fnew->list, &fnew->mask->filters); in fl_change()
2126 *arg = fnew; in fl_change()
2135 fnew->deleted = true; in fl_change()
2137 if (!tc_skip_hw(fnew->flags)) in fl_change()
2138 fl_hw_destroy_filter(tp, fnew, rtnl_held, NULL); in fl_change()
2140 rhashtable_remove_fast(&fnew->mask->ht, &fnew->ht_node, in fl_change()
2141 fnew->mask->filter_ht_params); in fl_change()
2143 fl_mask_put(head, fnew->mask); in fl_change()
2145 __fl_put(fnew); in fl_change()