Lines Matching refs:rule
2541 struct ixgbe_fdir_filter *rule = NULL;
2543 /* report total rule count */
2546 hlist_for_each_entry_safe(rule, node2,
2548 if (fsp->location <= rule->sw_idx)
2552 if (!rule || fsp->location != rule->sw_idx)
2558 switch (rule->filter.formatted.flow_type) {
2578 fsp->h_u.tcp_ip4_spec.psrc = rule->filter.formatted.src_port;
2580 fsp->h_u.tcp_ip4_spec.pdst = rule->filter.formatted.dst_port;
2582 fsp->h_u.tcp_ip4_spec.ip4src = rule->filter.formatted.src_ip[0];
2584 fsp->h_u.tcp_ip4_spec.ip4dst = rule->filter.formatted.dst_ip[0];
2586 fsp->h_ext.vlan_tci = rule->filter.formatted.vlan_id;
2588 fsp->h_ext.vlan_etype = rule->filter.formatted.flex_bytes;
2590 fsp->h_ext.data[1] = htonl(rule->filter.formatted.vm_pool);
2595 if (rule->action == IXGBE_FDIR_DROP_QUEUE)
2598 fsp->ring_cookie = rule->action;
2608 struct ixgbe_fdir_filter *rule;
2611 /* report total rule count */
2614 hlist_for_each_entry_safe(rule, node2,
2618 rule_locs[cnt] = rule->sw_idx;
2715 struct ixgbe_fdir_filter *rule, *parent;
2719 rule = NULL;
2721 hlist_for_each_entry_safe(rule, node2,
2724 if (rule->sw_idx >= sw_idx)
2726 parent = rule;
2729 /* if there is an old rule occupying our place remove it */
2730 if (rule && (rule->sw_idx == sw_idx)) {
2731 if (!input || (rule->filter.formatted.bkt_hash !=
2734 &rule->filter,
2738 hlist_del(&rule->fdir_node);
2739 kfree(rule);
2744 * If no input this was a delete, err should be 0 if a rule was