> +enum rule_dpif_lookup_verdict
> +rule_dpif_lookup_from_table(struct ofproto_dpif *ofproto,
> +                            const struct flow *flow, struct flow_wildcards 
> *wc,
> +                            uint8_t *table_id, struct rule_dpif **rule)
> +{
> +    enum ofp_table_config config = OFPTC_TABLE_MISS_MAX;
> +    uint8_t id = *table_id;
> +
> +    while (1) {
> +        bool is_empty;
> +
> +        if (rule_dpif_lookup_in_table__(ofproto, flow, wc, id,
> +                                        &is_empty, rule)) {
> +            return RULE_DPIF_LOOKUP_VERDICT_MATCH;
> +        }
> +
> +        if (!is_empty) {
> +            *table_id = id;
> +        }
> +
> +        if (config >= OFPTC_TABLE_MISS_MAX) {
> +            config = table_get_config(&ofproto->up, id);
> +            config &= OFPTC_TABLE_MISS_MASK;
> +        }

does this mean, call table_get_config only for the first table?

YAMAMOTO Takashi
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to