Lines Matching refs:rule
372 struct flow_rule *rule = flow_cls_offload_flow_rule(tc_flow_cmd);
374 struct flow_dissector *dissector = rule->match.dissector;
384 if (flow_rule_match_has_control_flags(rule, extack))
387 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
390 flow_rule_match_basic(rule, &match);
401 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
404 flow_rule_match_eth_addrs(rule, &match);
412 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
415 flow_rule_match_vlan(rule, &match);
427 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS)) {
430 flow_rule_match_ipv4_addrs(rule, &match);
436 } else if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS)) {
439 flow_rule_match_ipv6_addrs(rule, &match);
447 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
450 flow_rule_match_ports(rule, &match);
458 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ICMP)) {
461 flow_rule_match_icmp(rule, &match);
469 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS)) {
472 flow_rule_match_enc_ipv4_addrs(rule, &match);
478 } else if (flow_rule_match_key(rule,
483 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
486 flow_rule_match_enc_keyid(rule, &match);
492 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_PORTS)) {
495 flow_rule_match_enc_ports(rule, &match);
503 return bnxt_tc_parse_actions(bp, &flow->actions, &rule->action,