• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/net/sched/

Lines Matching refs:meta

13  * 	The metadata ematch compares two meta objects where each object
14 * represents either a meta value stored in the kernel or a static
20 * The definition of a objects conists of the type (meta type), a
21 * identifier (meta id) and additional type specific information.
22 * The meta id is either TCF_META_TYPE_VALUE for values provided by
23 * userspace or a index to the meta operations table consisting of
24 * function pointers to type specific meta data collectors returning
25 * the value of the requested meta value.
47 * on the meta type. Obviously, the length of the data must also
57 * NOTE: Certain meta values depend on other subsystems and are
470 /* Meta value operations table listing all meta value collectors and
471 * assigns them to a type and meta id. */
699 struct meta_match *meta = (struct meta_match *) m->data;
702 if (meta_get(skb, info, &meta->lvalue, &l_value) < 0 ||
703 meta_get(skb, info, &meta->rvalue, &r_value) < 0)
706 r = meta_type_ops(&meta->lvalue)->compare(&l_value, &r_value);
708 switch (meta->lvalue.hdr.op) {
720 static inline void meta_delete(struct meta_match *meta)
722 struct meta_type_ops *ops = meta_type_ops(&meta->lvalue);
725 ops->destroy(&meta->lvalue);
726 ops->destroy(&meta->rvalue);
729 kfree(meta);
755 struct meta_match *meta = NULL;
771 meta = kzalloc(sizeof(*meta), GFP_KERNEL);
772 if (meta == NULL)
775 memcpy(&meta->lvalue.hdr, &hdr->left, sizeof(hdr->left));
776 memcpy(&meta->rvalue.hdr, &hdr->right, sizeof(hdr->right));
778 if (!meta_is_supported(&meta->lvalue) ||
779 !meta_is_supported(&meta->rvalue)) {
784 if (meta_change_data(&meta->lvalue, tb[TCA_EM_META_LVALUE-1]) < 0 ||
785 meta_change_data(&meta->rvalue, tb[TCA_EM_META_RVALUE-1]) < 0)
788 m->datalen = sizeof(*meta);
789 m->data = (unsigned long) meta;
793 if (err && meta)
794 meta_delete(meta);
806 struct meta_match *meta = (struct meta_match *) em->data;
811 memcpy(&hdr.left, &meta->lvalue.hdr, sizeof(hdr.left));
812 memcpy(&hdr.right, &meta->rvalue.hdr, sizeof(hdr.right));
816 ops = meta_type_ops(&meta->lvalue);
817 if (ops->dump(skb, &meta->lvalue, TCA_EM_META_LVALUE) < 0 ||
818 ops->dump(skb, &meta->rvalue, TCA_EM_META_RVALUE) < 0)