Lines Matching refs:head
55 struct fw_head *head = rcu_dereference_bh(tp->root);
60 if (head != NULL) {
61 id &= head->mask;
63 for (f = rcu_dereference_bh(head->ht[fw_hash(id)]); f;
93 struct fw_head *head = rtnl_dereference(tp->root);
96 if (head == NULL)
99 f = rtnl_dereference(head->ht[fw_hash(handle)]);
135 struct fw_head *head = rtnl_dereference(tp->root);
139 if (head == NULL)
143 while ((f = rtnl_dereference(head->ht[h])) != NULL) {
144 RCU_INIT_POINTER(head->ht[h],
153 kfree_rcu(head, rcu);
159 struct fw_head *head = rtnl_dereference(tp->root);
166 if (head == NULL || f == NULL)
169 fp = &head->ht[fw_hash(f->id)];
185 if (rcu_access_pointer(head->ht[h])) {
206 struct fw_head *head = rtnl_dereference(tp->root);
226 if (mask != head->mask)
228 } else if (head->mask != 0xFFFFFFFF)
244 struct fw_head *head = rtnl_dereference(tp->root);
287 fp = &head->ht[fw_hash(fnew->id)];
306 if (!head) {
311 head = kzalloc(sizeof(*head), GFP_KERNEL);
312 if (!head)
314 head->mask = mask;
316 rcu_assign_pointer(tp->root, head);
333 RCU_INIT_POINTER(f->next, head->ht[fw_hash(handle)]);
334 rcu_assign_pointer(head->ht[fw_hash(handle)], f);
348 struct fw_head *head = rtnl_dereference(tp->root);
351 if (head == NULL)
360 for (f = rtnl_dereference(head->ht[h]); f;
371 struct fw_head *head = rtnl_dereference(tp->root);
396 if (head->mask != 0xFFFFFFFF &&
397 nla_put_u32(skb, TCA_FW_MASK, head->mask))