Lines Matching refs:skb

102 #define META_COLLECTOR(FUNC) static void meta_##FUNC(struct sk_buff *skb, \
163 *err = int_dev(skb->dev, dst); in META_COLLECTOR()
168 *err = var_dev(skb->dev, dst); in META_COLLECTOR()
179 tag = skb_vlan_tag_get(skb); in META_COLLECTOR()
180 if (!tag && __vlan_get_tag(skb, &tag)) in META_COLLECTOR()
194 dst->value = skb->priority; in META_COLLECTOR()
200 dst->value = tc_skb_protocol(skb); in META_COLLECTOR()
205 dst->value = skb->pkt_type; in META_COLLECTOR()
210 dst->value = skb->len; in META_COLLECTOR()
215 dst->value = skb->data_len; in META_COLLECTOR()
220 dst->value = skb->mac_len; in META_COLLECTOR()
225 dst->value = skb_get_hash(skb); in META_COLLECTOR()
234 dst->value = skb->mark; in META_COLLECTOR()
243 dst->value = skb->tc_index; in META_COLLECTOR()
252 if (unlikely(skb_dst(skb) == NULL)) in META_COLLECTOR()
256 dst->value = skb_dst(skb)->tclassid; in META_COLLECTOR()
264 if (unlikely(skb_rtable(skb) == NULL)) in META_COLLECTOR()
267 dst->value = inet_iif(skb); in META_COLLECTOR()
274 #define skip_nonlocal(skb) \ argument
275 (unlikely(skb->sk == NULL))
279 if (skip_nonlocal(skb)) { in META_COLLECTOR()
283 dst->value = skb->sk->sk_family; in META_COLLECTOR()
288 if (skip_nonlocal(skb)) { in META_COLLECTOR()
292 dst->value = skb->sk->sk_state; in META_COLLECTOR()
297 if (skip_nonlocal(skb)) { in META_COLLECTOR()
301 dst->value = skb->sk->sk_reuse; in META_COLLECTOR()
306 if (skip_nonlocal(skb)) { in META_COLLECTOR()
311 dst->value = skb->sk->sk_bound_dev_if; in META_COLLECTOR()
316 if (skip_nonlocal(skb)) { in META_COLLECTOR()
321 if (skb->sk->sk_bound_dev_if == 0) { in META_COLLECTOR()
328 dev = dev_get_by_index_rcu(sock_net(skb->sk), in META_COLLECTOR()
329 skb->sk->sk_bound_dev_if); in META_COLLECTOR()
337 if (skip_nonlocal(skb)) { in META_COLLECTOR()
341 dst->value = atomic_read(&skb->sk->sk_refcnt); in META_COLLECTOR()
346 if (skip_nonlocal(skb)) { in META_COLLECTOR()
350 dst->value = skb->sk->sk_rcvbuf; in META_COLLECTOR()
355 if (skip_nonlocal(skb)) { in META_COLLECTOR()
359 dst->value = skb->sk->sk_shutdown; in META_COLLECTOR()
364 if (skip_nonlocal(skb)) { in META_COLLECTOR()
368 dst->value = skb->sk->sk_protocol; in META_COLLECTOR()
373 if (skip_nonlocal(skb)) { in META_COLLECTOR()
377 dst->value = skb->sk->sk_type; in META_COLLECTOR()
382 if (skip_nonlocal(skb)) { in META_COLLECTOR()
386 dst->value = sk_rmem_alloc_get(skb->sk); in META_COLLECTOR()
391 if (skip_nonlocal(skb)) { in META_COLLECTOR()
395 dst->value = sk_wmem_alloc_get(skb->sk); in META_COLLECTOR()
400 if (skip_nonlocal(skb)) { in META_COLLECTOR()
404 dst->value = atomic_read(&skb->sk->sk_omem_alloc); in META_COLLECTOR()
409 if (skip_nonlocal(skb)) { in META_COLLECTOR()
413 dst->value = skb->sk->sk_receive_queue.qlen; in META_COLLECTOR()
418 if (skip_nonlocal(skb)) { in META_COLLECTOR()
422 dst->value = skb->sk->sk_write_queue.qlen; in META_COLLECTOR()
427 if (skip_nonlocal(skb)) { in META_COLLECTOR()
431 dst->value = skb->sk->sk_wmem_queued; in META_COLLECTOR()
436 if (skip_nonlocal(skb)) { in META_COLLECTOR()
440 dst->value = skb->sk->sk_forward_alloc; in META_COLLECTOR()
445 if (skip_nonlocal(skb)) { in META_COLLECTOR()
449 dst->value = skb->sk->sk_sndbuf; in META_COLLECTOR()
454 if (skip_nonlocal(skb)) { in META_COLLECTOR()
458 dst->value = (__force int) skb->sk->sk_allocation; in META_COLLECTOR()
463 if (skip_nonlocal(skb)) { in META_COLLECTOR()
467 dst->value = skb->sk->sk_hash; in META_COLLECTOR()
472 if (skip_nonlocal(skb)) { in META_COLLECTOR()
476 dst->value = skb->sk->sk_lingertime / HZ; in META_COLLECTOR()
481 if (skip_nonlocal(skb)) { in META_COLLECTOR()
485 dst->value = skb->sk->sk_error_queue.qlen; in META_COLLECTOR()
490 if (skip_nonlocal(skb)) { in META_COLLECTOR()
494 dst->value = skb->sk->sk_ack_backlog; in META_COLLECTOR()
499 if (skip_nonlocal(skb)) { in META_COLLECTOR()
503 dst->value = skb->sk->sk_max_ack_backlog; in META_COLLECTOR()
508 if (skip_nonlocal(skb)) { in META_COLLECTOR()
512 dst->value = skb->sk->sk_priority; in META_COLLECTOR()
517 if (skip_nonlocal(skb)) { in META_COLLECTOR()
521 dst->value = skb->sk->sk_rcvlowat; in META_COLLECTOR()
526 if (skip_nonlocal(skb)) { in META_COLLECTOR()
530 dst->value = skb->sk->sk_rcvtimeo / HZ; in META_COLLECTOR()
535 if (skip_nonlocal(skb)) { in META_COLLECTOR()
539 dst->value = skb->sk->sk_sndtimeo / HZ; in META_COLLECTOR()
544 if (skip_nonlocal(skb)) { in META_COLLECTOR()
548 dst->value = skb->sk->sk_frag.offset; in META_COLLECTOR()
553 if (skip_nonlocal(skb)) { in META_COLLECTOR()
557 dst->value = skb->sk->sk_write_pending; in META_COLLECTOR()
673 static int meta_var_dump(struct sk_buff *skb, struct meta_value *v, int tlv) in meta_var_dump() argument
676 nla_put(skb, tlv, v->len, (void *) v->val)) in meta_var_dump()
725 static int meta_int_dump(struct sk_buff *skb, struct meta_value *v, int tlv) in meta_int_dump() argument
728 if (nla_put(skb, tlv, sizeof(unsigned long), &v->val)) in meta_int_dump()
731 if (nla_put_u32(skb, tlv, v->val)) in meta_int_dump()
778 static int meta_get(struct sk_buff *skb, struct tcf_pkt_info *info, in meta_get() argument
789 meta_ops(v)->get(skb, info, v, dst, &err); in meta_get()
799 static int em_meta_match(struct sk_buff *skb, struct tcf_ematch *m, in em_meta_match() argument
806 if (meta_get(skb, info, &meta->lvalue, &l_value) < 0 || in em_meta_match()
807 meta_get(skb, info, &meta->rvalue, &r_value) < 0) in em_meta_match()
917 static int em_meta_dump(struct sk_buff *skb, struct tcf_ematch *em) in em_meta_dump() argument
927 if (nla_put(skb, TCA_EM_META_HDR, sizeof(hdr), &hdr)) in em_meta_dump()
931 if (ops->dump(skb, &meta->lvalue, TCA_EM_META_LVALUE) < 0 || in em_meta_dump()
932 ops->dump(skb, &meta->rvalue, TCA_EM_META_RVALUE) < 0) in em_meta_dump()