Lines Matching refs:is_mask

96 			 size_t offset, size_t size, bool is_mask)  in update_range()  argument
102 if (!is_mask) in update_range()
120 #define SW_FLOW_KEY_PUT(match, field, value, is_mask) \ argument
123 sizeof((match)->key->field), is_mask); \
124 if (is_mask) \
130 #define SW_FLOW_KEY_MEMCPY_OFFSET(match, offset, value_p, len, is_mask) \ argument
132 update_range(match, offset, len, is_mask); \
133 if (is_mask) \
140 #define SW_FLOW_KEY_MEMCPY(match, field, value_p, len, is_mask) \ argument
142 value_p, len, is_mask)
144 #define SW_FLOW_KEY_MEMSET_FIELD(match, field, value, is_mask) \ argument
147 sizeof((match)->key->field), is_mask); \
148 if (is_mask) \
156 #define SW_FLOW_KEY_BITMAP_COPY(match, field, value_p, nbits, is_mask) ({ \ argument
158 bitmap_size(nbits), is_mask); \
159 bitmap_copy(is_mask ? (match)->mask->key.field : (match)->key->field, \
543 struct sw_flow_match *match, bool is_mask, in genev_tun_opt_from_nlattr() argument
564 if (!is_mask) { in genev_tun_opt_from_nlattr()
589 nla_len(a), is_mask); in genev_tun_opt_from_nlattr()
594 struct sw_flow_match *match, bool is_mask, in vxlan_tun_opt_from_nlattr() argument
638 if (!is_mask) in vxlan_tun_opt_from_nlattr()
645 is_mask); in vxlan_tun_opt_from_nlattr()
650 struct sw_flow_match *match, bool is_mask, in erspan_tun_opt_from_nlattr() argument
664 if (!is_mask) in erspan_tun_opt_from_nlattr()
672 nla_len(a), is_mask); in erspan_tun_opt_from_nlattr()
677 struct sw_flow_match *match, bool is_mask, in ip_tun_from_nlattr() argument
707 nla_get_be64(a), is_mask); in ip_tun_from_nlattr()
712 nla_get_in_addr(a), is_mask); in ip_tun_from_nlattr()
717 nla_get_in_addr(a), is_mask); in ip_tun_from_nlattr()
722 nla_get_in6_addr(a), is_mask); in ip_tun_from_nlattr()
727 nla_get_in6_addr(a), is_mask); in ip_tun_from_nlattr()
732 nla_get_u8(a), is_mask); in ip_tun_from_nlattr()
736 nla_get_u8(a), is_mask); in ip_tun_from_nlattr()
747 nla_get_be16(a), is_mask); in ip_tun_from_nlattr()
751 nla_get_be16(a), is_mask); in ip_tun_from_nlattr()
762 err = genev_tun_opt_from_nlattr(a, match, is_mask, log); in ip_tun_from_nlattr()
775 err = vxlan_tun_opt_from_nlattr(a, match, is_mask, log); in ip_tun_from_nlattr()
790 err = erspan_tun_opt_from_nlattr(a, match, is_mask, in ip_tun_from_nlattr()
810 __IP_TUNNEL_FLAG_NUM, is_mask); in ip_tun_from_nlattr()
811 if (is_mask) in ip_tun_from_nlattr()
828 if (!is_mask) { in ip_tun_from_nlattr()
990 bool is_mask, bool inner) in encode_vlan_from_nlattrs() argument
1002 SW_FLOW_KEY_PUT(match, eth.vlan.tpid, tpid, is_mask); in encode_vlan_from_nlattrs()
1003 SW_FLOW_KEY_PUT(match, eth.vlan.tci, tci, is_mask); in encode_vlan_from_nlattrs()
1005 SW_FLOW_KEY_PUT(match, eth.cvlan.tpid, tpid, is_mask); in encode_vlan_from_nlattrs()
1006 SW_FLOW_KEY_PUT(match, eth.cvlan.tci, tci, is_mask); in encode_vlan_from_nlattrs()
1093 const struct nlattr **a, bool is_mask, in __parse_vlan_from_nlattrs() argument
1099 if (!is_mask) in __parse_vlan_from_nlattrs()
1108 err = encode_vlan_from_nlattrs(match, a, is_mask, inner); in __parse_vlan_from_nlattrs()
1118 if (!is_mask) in __parse_vlan_from_nlattrs()
1128 bool is_mask, bool log) in parse_vlan_from_nlattrs() argument
1134 is_mask, log); in parse_vlan_from_nlattrs()
1141 is_mask, log); in parse_vlan_from_nlattrs()
1151 bool is_mask, bool log) in parse_eth_type_from_nlattrs() argument
1156 if (is_mask) { in parse_eth_type_from_nlattrs()
1165 SW_FLOW_KEY_PUT(match, eth.type, eth_type, is_mask); in parse_eth_type_from_nlattrs()
1172 bool is_mask, bool log) in metadata_from_nlattrs() argument
1179 SW_FLOW_KEY_PUT(match, ovs_flow_hash, hash_val, is_mask); in metadata_from_nlattrs()
1186 SW_FLOW_KEY_PUT(match, recirc_id, recirc_id, is_mask); in metadata_from_nlattrs()
1192 nla_get_u32(a[OVS_KEY_ATTR_PRIORITY]), is_mask); in metadata_from_nlattrs()
1199 if (is_mask) { in metadata_from_nlattrs()
1207 SW_FLOW_KEY_PUT(match, phy.in_port, in_port, is_mask); in metadata_from_nlattrs()
1209 } else if (!is_mask) { in metadata_from_nlattrs()
1210 SW_FLOW_KEY_PUT(match, phy.in_port, DP_MAX_PORTS, is_mask); in metadata_from_nlattrs()
1216 SW_FLOW_KEY_PUT(match, phy.skb_mark, mark, is_mask); in metadata_from_nlattrs()
1221 is_mask, log) < 0) in metadata_from_nlattrs()
1236 SW_FLOW_KEY_PUT(match, ct_state, ct_state, is_mask); in metadata_from_nlattrs()
1243 SW_FLOW_KEY_PUT(match, ct_zone, ct_zone, is_mask); in metadata_from_nlattrs()
1250 SW_FLOW_KEY_PUT(match, ct.mark, mark, is_mask); in metadata_from_nlattrs()
1259 sizeof(*cl), is_mask); in metadata_from_nlattrs()
1267 SW_FLOW_KEY_PUT(match, ipv4.ct_orig.src, ct->ipv4_src, is_mask); in metadata_from_nlattrs()
1268 SW_FLOW_KEY_PUT(match, ipv4.ct_orig.dst, ct->ipv4_dst, is_mask); in metadata_from_nlattrs()
1269 SW_FLOW_KEY_PUT(match, ct.orig_tp.src, ct->src_port, is_mask); in metadata_from_nlattrs()
1270 SW_FLOW_KEY_PUT(match, ct.orig_tp.dst, ct->dst_port, is_mask); in metadata_from_nlattrs()
1271 SW_FLOW_KEY_PUT(match, ct_orig_proto, ct->ipv4_proto, is_mask); in metadata_from_nlattrs()
1281 is_mask); in metadata_from_nlattrs()
1284 is_mask); in metadata_from_nlattrs()
1285 SW_FLOW_KEY_PUT(match, ct.orig_tp.src, ct->src_port, is_mask); in metadata_from_nlattrs()
1286 SW_FLOW_KEY_PUT(match, ct.orig_tp.dst, ct->dst_port, is_mask); in metadata_from_nlattrs()
1287 SW_FLOW_KEY_PUT(match, ct_orig_proto, ct->ipv6_proto, is_mask); in metadata_from_nlattrs()
1299 SW_FLOW_KEY_PUT(match, mac_proto, is_mask ? 0xff : mac_proto, is_mask); in metadata_from_nlattrs()
1302 return parse_eth_type_from_nlattrs(match, attrs, a, is_mask, in metadata_from_nlattrs()
1403 struct sw_flow_match *match, bool is_mask, in nsh_key_put_from_nlattr() argument
1414 if (WARN_ON(is_push_nsh && is_mask)) in nsh_key_put_from_nlattr()
1446 base->flags, is_mask); in nsh_key_put_from_nlattr()
1448 base->ttl, is_mask); in nsh_key_put_from_nlattr()
1450 base->mdtype, is_mask); in nsh_key_put_from_nlattr()
1452 base->np, is_mask); in nsh_key_put_from_nlattr()
1454 base->path_hdr, is_mask); in nsh_key_put_from_nlattr()
1463 md1->context[i], is_mask); in nsh_key_put_from_nlattr()
1502 if (!is_mask) { in nsh_key_put_from_nlattr()
1525 bool is_mask, bool log) in ovs_key_from_nlattrs() argument
1529 err = metadata_from_nlattrs(net, match, &attrs, a, is_mask, log); in ovs_key_from_nlattrs()
1538 eth_key->eth_src, ETH_ALEN, is_mask); in ovs_key_from_nlattrs()
1540 eth_key->eth_dst, ETH_ALEN, is_mask); in ovs_key_from_nlattrs()
1552 err = parse_eth_type_from_nlattrs(match, &attrs, a, is_mask, in ovs_key_from_nlattrs()
1556 } else if (!is_mask) { in ovs_key_from_nlattrs()
1557 SW_FLOW_KEY_PUT(match, eth.type, htons(ETH_P_802_2), is_mask); in ovs_key_from_nlattrs()
1568 if (!is_mask && ipv4_key->ipv4_frag > OVS_FRAG_TYPE_MAX) { in ovs_key_from_nlattrs()
1574 ipv4_key->ipv4_proto, is_mask); in ovs_key_from_nlattrs()
1576 ipv4_key->ipv4_tos, is_mask); in ovs_key_from_nlattrs()
1578 ipv4_key->ipv4_ttl, is_mask); in ovs_key_from_nlattrs()
1580 ipv4_key->ipv4_frag, is_mask); in ovs_key_from_nlattrs()
1582 ipv4_key->ipv4_src, is_mask); in ovs_key_from_nlattrs()
1584 ipv4_key->ipv4_dst, is_mask); in ovs_key_from_nlattrs()
1592 if (!is_mask && ipv6_key->ipv6_frag > OVS_FRAG_TYPE_MAX) { in ovs_key_from_nlattrs()
1598 if (!is_mask && ipv6_key->ipv6_label & htonl(0xFFF00000)) { in ovs_key_from_nlattrs()
1605 ipv6_key->ipv6_label, is_mask); in ovs_key_from_nlattrs()
1607 ipv6_key->ipv6_proto, is_mask); in ovs_key_from_nlattrs()
1609 ipv6_key->ipv6_tclass, is_mask); in ovs_key_from_nlattrs()
1611 ipv6_key->ipv6_hlimit, is_mask); in ovs_key_from_nlattrs()
1613 ipv6_key->ipv6_frag, is_mask); in ovs_key_from_nlattrs()
1617 is_mask); in ovs_key_from_nlattrs()
1621 is_mask); in ovs_key_from_nlattrs()
1632 ipv6_exthdrs_key->hdrs, is_mask); in ovs_key_from_nlattrs()
1641 if (!is_mask && (arp_key->arp_op & htons(0xff00))) { in ovs_key_from_nlattrs()
1648 arp_key->arp_sip, is_mask); in ovs_key_from_nlattrs()
1650 arp_key->arp_tip, is_mask); in ovs_key_from_nlattrs()
1652 ntohs(arp_key->arp_op), is_mask); in ovs_key_from_nlattrs()
1654 arp_key->arp_sha, ETH_ALEN, is_mask); in ovs_key_from_nlattrs()
1656 arp_key->arp_tha, ETH_ALEN, is_mask); in ovs_key_from_nlattrs()
1663 is_mask, false, log) < 0) in ovs_key_from_nlattrs()
1685 mpls_key[i].mpls_lse, is_mask); in ovs_key_from_nlattrs()
1688 label_count_mask, is_mask); in ovs_key_from_nlattrs()
1697 SW_FLOW_KEY_PUT(match, tp.src, tcp_key->tcp_src, is_mask); in ovs_key_from_nlattrs()
1698 SW_FLOW_KEY_PUT(match, tp.dst, tcp_key->tcp_dst, is_mask); in ovs_key_from_nlattrs()
1705 is_mask); in ovs_key_from_nlattrs()
1713 SW_FLOW_KEY_PUT(match, tp.src, udp_key->udp_src, is_mask); in ovs_key_from_nlattrs()
1714 SW_FLOW_KEY_PUT(match, tp.dst, udp_key->udp_dst, is_mask); in ovs_key_from_nlattrs()
1722 SW_FLOW_KEY_PUT(match, tp.src, sctp_key->sctp_src, is_mask); in ovs_key_from_nlattrs()
1723 SW_FLOW_KEY_PUT(match, tp.dst, sctp_key->sctp_dst, is_mask); in ovs_key_from_nlattrs()
1732 htons(icmp_key->icmp_type), is_mask); in ovs_key_from_nlattrs()
1734 htons(icmp_key->icmp_code), is_mask); in ovs_key_from_nlattrs()
1743 htons(icmpv6_key->icmpv6_type), is_mask); in ovs_key_from_nlattrs()
1745 htons(icmpv6_key->icmpv6_code), is_mask); in ovs_key_from_nlattrs()
1756 is_mask); in ovs_key_from_nlattrs()
1758 nd_key->nd_sll, ETH_ALEN, is_mask); in ovs_key_from_nlattrs()
1760 nd_key->nd_tll, ETH_ALEN, is_mask); in ovs_key_from_nlattrs()
1986 bool is_mask) in ovs_nla_put_vlan() argument
1988 __be16 eth_type = !is_mask ? vh->tpid : htons(0xffff); in ovs_nla_put_vlan()
1996 static int nsh_key_to_nlattr(const struct ovs_key_nsh *nsh, bool is_mask, in nsh_key_to_nlattr() argument
2008 if (is_mask || nsh->base.mdtype == NSH_M_TYPE1) { in nsh_key_to_nlattr()
2025 const struct sw_flow_key *output, bool is_mask, in __ovs_nla_put_key() argument
2042 if ((swkey->tun_proto || is_mask)) { in __ovs_nla_put_key()
2054 if (is_mask && (output->phy.in_port == 0xffff)) in __ovs_nla_put_key()
2059 upper_u16 = !is_mask ? 0 : 0xffff; in __ovs_nla_put_key()
2082 if (ovs_nla_put_vlan(skb, &output->eth.vlan, is_mask)) in __ovs_nla_put_key()
2089 if (ovs_nla_put_vlan(skb, &output->eth.cvlan, is_mask)) in __ovs_nla_put_key()
2105 if (is_mask && output->eth.type) in __ovs_nla_put_key()
2162 if (nsh_key_to_nlattr(&output->nsh, is_mask, skb)) in __ovs_nla_put_key()
2278 const struct sw_flow_key *output, int attr, bool is_mask, in ovs_nla_put_key() argument
2287 err = __ovs_nla_put_key(swkey, output, is_mask, skb); in ovs_nla_put_key()
2842 static bool validate_nsh(const struct nlattr *attr, bool is_mask, in validate_nsh() argument
2850 ret = nsh_key_put_from_nlattr(attr, &match, is_mask, in validate_nsh()