rule              470 drivers/acpi/acpica/acinterp.h void acpi_ex_acquire_global_lock(u32 rule);
rule              472 drivers/acpi/acpica/acinterp.h void acpi_ex_release_global_lock(u32 rule);
rule             3201 drivers/infiniband/hw/mlx5/main.c 		mlx5_del_flow_rules(iter->rule);
rule             3207 drivers/infiniband/hw/mlx5/main.c 	mlx5_del_flow_rules(handler->rule);
rule             3624 drivers/infiniband/hw/mlx5/main.c 	handler->rule = mlx5_add_flow_rules(ft, spec,
rule             3628 drivers/infiniband/hw/mlx5/main.c 	if (IS_ERR(handler->rule)) {
rule             3629 drivers/infiniband/hw/mlx5/main.c 		err = PTR_ERR(handler->rule);
rule             3670 drivers/infiniband/hw/mlx5/main.c 			mlx5_del_flow_rules(handler->rule);
rule             3733 drivers/infiniband/hw/mlx5/main.c 			mlx5_del_flow_rules(handler->rule);
rule             3775 drivers/infiniband/hw/mlx5/main.c 	mlx5_del_flow_rules(handler_rx->rule);
rule             4032 drivers/infiniband/hw/mlx5/main.c 	handler->rule = mlx5_add_flow_rules(ft, spec,
rule             4035 drivers/infiniband/hw/mlx5/main.c 	if (IS_ERR(handler->rule)) {
rule             4036 drivers/infiniband/hw/mlx5/main.c 		err = PTR_ERR(handler->rule);
rule              180 drivers/infiniband/hw/mlx5/mlx5_ib.h 	struct mlx5_flow_handle		*rule;
rule              378 drivers/net/dsa/bcm_sf2_cfp.c 	flow_rule_match_ipv4_addrs(flow->rule, &ipv4);
rule              379 drivers/net/dsa/bcm_sf2_cfp.c 	flow_rule_match_ports(flow->rule, &ports);
rule              380 drivers/net/dsa/bcm_sf2_cfp.c 	flow_rule_match_ip(flow->rule, &ip);
rule              545 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule = NULL;
rule              547 drivers/net/dsa/bcm_sf2_cfp.c 	list_for_each_entry(rule, &priv->cfp.rules_list, next) {
rule              548 drivers/net/dsa/bcm_sf2_cfp.c 		if (rule->port == port && rule->fs.location == location)
rule              552 drivers/net/dsa/bcm_sf2_cfp.c 	return rule;
rule              558 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule = NULL;
rule              565 drivers/net/dsa/bcm_sf2_cfp.c 	list_for_each_entry(rule, &priv->cfp.rules_list, next) {
rule              567 drivers/net/dsa/bcm_sf2_cfp.c 		if (rule->port != port)
rule              570 drivers/net/dsa/bcm_sf2_cfp.c 		if (rule->fs.flow_type != fs->flow_type ||
rule              571 drivers/net/dsa/bcm_sf2_cfp.c 		    rule->fs.ring_cookie != fs->ring_cookie ||
rule              572 drivers/net/dsa/bcm_sf2_cfp.c 		    rule->fs.h_ext.data[0] != fs->h_ext.data[0])
rule              588 drivers/net/dsa/bcm_sf2_cfp.c 		ret = memcmp(&rule->fs.h_u, &fs->h_u, fs_size);
rule              589 drivers/net/dsa/bcm_sf2_cfp.c 		ret |= memcmp(&rule->fs.m_u, &fs->m_u, fs_size);
rule              671 drivers/net/dsa/bcm_sf2_cfp.c 	flow_rule_match_ipv6_addrs(flow->rule, &ipv6);
rule              672 drivers/net/dsa/bcm_sf2_cfp.c 	flow_rule_match_ports(flow->rule, &ports);
rule              877 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule = NULL;
rule              897 drivers/net/dsa/bcm_sf2_cfp.c 	rule = kzalloc(sizeof(*rule), GFP_KERNEL);
rule              898 drivers/net/dsa/bcm_sf2_cfp.c 	if (!rule)
rule              903 drivers/net/dsa/bcm_sf2_cfp.c 		kfree(rule);
rule              907 drivers/net/dsa/bcm_sf2_cfp.c 	rule->port = port;
rule              908 drivers/net/dsa/bcm_sf2_cfp.c 	memcpy(&rule->fs, fs, sizeof(*fs));
rule              909 drivers/net/dsa/bcm_sf2_cfp.c 	list_add_tail(&rule->next, &priv->cfp.rules_list);
rule              970 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule;
rule              983 drivers/net/dsa/bcm_sf2_cfp.c 	rule = bcm_sf2_cfp_rule_find(priv, port, loc);
rule              984 drivers/net/dsa/bcm_sf2_cfp.c 	if (!rule)
rule              989 drivers/net/dsa/bcm_sf2_cfp.c 	list_del(&rule->next);
rule              990 drivers/net/dsa/bcm_sf2_cfp.c 	kfree(rule);
rule             1011 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule;
rule             1013 drivers/net/dsa/bcm_sf2_cfp.c 	rule = bcm_sf2_cfp_rule_find(priv, port, nfc->fs.location);
rule             1014 drivers/net/dsa/bcm_sf2_cfp.c 	if (!rule)
rule             1017 drivers/net/dsa/bcm_sf2_cfp.c 	memcpy(&nfc->fs, &rule->fs, sizeof(rule->fs));
rule             1159 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule, *n;
rule             1164 drivers/net/dsa/bcm_sf2_cfp.c 	list_for_each_entry_safe_reverse(rule, n, &priv->cfp.rules_list, next)
rule             1165 drivers/net/dsa/bcm_sf2_cfp.c 		bcm_sf2_cfp_rule_del(priv, rule->port, rule->fs.location);
rule             1171 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule;
rule             1186 drivers/net/dsa/bcm_sf2_cfp.c 	list_for_each_entry(rule, &priv->cfp.rules_list, next) {
rule             1187 drivers/net/dsa/bcm_sf2_cfp.c 		ret = bcm_sf2_cfp_rule_remove(priv, rule->port,
rule             1188 drivers/net/dsa/bcm_sf2_cfp.c 					      rule->fs.location);
rule             1194 drivers/net/dsa/bcm_sf2_cfp.c 		ret = bcm_sf2_cfp_rule_insert(ds, rule->port, &rule->fs);
rule             1256 drivers/net/dsa/bcm_sf2_cfp.c 	struct cfp_rule *rule;
rule             1261 drivers/net/dsa/bcm_sf2_cfp.c 		rule = bcm_sf2_cfp_rule_find(priv, port, i);
rule             1262 drivers/net/dsa/bcm_sf2_cfp.c 		if (!rule)
rule               70 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule;
rule               74 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule               76 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		if (rule->aq_fsp.location == fsp->location)
rule               78 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		if (aq_match_filter(&rule->aq_fsp, fsp)) {
rule              426 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule = NULL;
rule              429 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              431 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		if (be16_to_cpu(rule->aq_fsp.h_ext.vlan_tci) == vlan_id)
rule              434 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	if (rule && rule->type == aq_rx_filter_vlan &&
rule              435 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	    be16_to_cpu(rule->aq_fsp.h_ext.vlan_tci) == vlan_id) {
rule              438 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		cmd.fs.location = rule->aq_fsp.location;
rule              626 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule = NULL, *parent = NULL;
rule              630 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              632 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		if (rule->aq_fsp.location >= index)
rule              634 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		parent = rule;
rule              637 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	if (rule && rule->aq_fsp.location == index) {
rule              638 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		err = aq_add_del_rule(aq_nic, rule, false);
rule              639 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		hlist_del(&rule->aq_node);
rule              640 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		kfree(rule);
rule              713 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule = NULL;
rule              717 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              719 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		if (rule->aq_fsp.location == cmd->fs.location)
rule              723 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	if (rule && rule->aq_fsp.location == cmd->fs.location) {
rule              724 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		err = aq_add_del_rule(aq_nic, rule, false);
rule              725 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		hlist_del(&rule->aq_node);
rule              726 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		kfree(rule);
rule              737 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule = NULL;
rule              740 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              742 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		if (fsp->location <= rule->aq_fsp.location)
rule              745 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	if (unlikely(!rule || fsp->location != rule->aq_fsp.location))
rule              748 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	memcpy(fsp, &rule->aq_fsp, sizeof(*fsp));
rule              758 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule;
rule              763 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              768 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		rule_locs[count++] = rule->aq_fsp.location;
rule              780 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule;
rule              783 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              785 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		err = aq_add_del_rule(aq_nic, rule, false);
rule              788 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		hlist_del(&rule->aq_node);
rule              789 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		kfree(rule);
rule              801 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	struct aq_rx_filter *rule;
rule              804 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 	hlist_for_each_entry_safe(rule, aq_node2,
rule              806 drivers/net/ethernet/aquantia/atlantic/aq_filters.c 		err = aq_add_del_rule(aq_nic, rule, true);
rule             15396 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 	u32 param, rule;
rule             15404 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 	rule = port ? NIG_REG_P1_TLLH_PTP_RULE_MASK :
rule             15410 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 		REG_WR(bp, rule, BNX2X_PTP_TX_ON_RULE_MASK);
rule             15419 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 	rule = port ? NIG_REG_P1_LLH_PTP_RULE_MASK :
rule             15435 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 		REG_WR(bp, rule, BNX2X_PTP_V1_L4_RULE_MASK);
rule             15443 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 		REG_WR(bp, rule, BNX2X_PTP_V2_L4_RULE_MASK);
rule             15451 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 		REG_WR(bp, rule, BNX2X_PTP_V2_L2_RULE_MASK);
rule             15460 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 		REG_WR(bp, rule, BNX2X_PTP_V2_RULE_MASK);
rule              176 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(tc_flow_cmd);
rule              177 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              187 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              190 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_basic(rule, &match);
rule              201 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule              204 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_eth_addrs(rule, &match);
rule              212 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule              215 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_vlan(rule, &match);
rule              227 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS)) {
rule              230 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule              236 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	} else if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS)) {
rule              239 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule              247 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule              250 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_ports(rule, &match);
rule              258 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ICMP)) {
rule              261 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_icmp(rule, &match);
rule              269 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS)) {
rule              272 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_enc_ipv4_addrs(rule, &match);
rule              278 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	} else if (flow_rule_match_key(rule,
rule              283 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule              286 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_enc_keyid(rule, &match);
rule              292 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_PORTS)) {
rule              295 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 		flow_rule_match_enc_ports(rule, &match);
rule              303 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c 	return bnxt_tc_parse_actions(bp, &flow->actions, &rule->action);
rule               87 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule               90 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule               93 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_control(rule, &match);
rule               97 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              101 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_basic(rule, &match);
rule              122 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule              137 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule              155 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule              158 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_ports(rule, &match);
rule              169 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IP)) {
rule              172 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_ip(rule, &match);
rule              177 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule              180 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_enc_keyid(rule, &match);
rule              189 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule              193 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_vlan(rule, &match);
rule              229 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              230 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              248 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              251 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_basic(rule, &match);
rule              256 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IP)) {
rule              265 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 		flow_rule_match_ip(rule, &match);
rule              385 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              389 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	flow_action_for_each(i, act, &rule->action) {
rule              550 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              557 drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_flower.c 	flow_action_for_each(i, act, &rule->action) {
rule              596 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 	struct dpaa2_eth_cls_rule *rule;
rule              605 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 	rule = &priv->cls_rules[location];
rule              608 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 	if (rule->in_use) {
rule              609 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 		err = do_cls_rule(net_dev, &rule->fs, false);
rule              613 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 		rule->in_use = 0;
rule              627 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 	rule->in_use = 1;
rule              628 drivers/net/ethernet/freescale/dpaa2/dpaa2-ethtool.c 	rule->fs = *new_fs;
rule             1062 drivers/net/ethernet/freescale/gianfar_ethtool.c static inline u32 vlan_tci_vid(struct ethtool_rx_flow_spec *rule)
rule             1064 drivers/net/ethernet/freescale/gianfar_ethtool.c 	return be16_to_cpu(rule->h_ext.vlan_tci) & VLAN_VID_MASK;
rule             1067 drivers/net/ethernet/freescale/gianfar_ethtool.c static inline u32 vlan_tci_vidm(struct ethtool_rx_flow_spec *rule)
rule             1069 drivers/net/ethernet/freescale/gianfar_ethtool.c 	return be16_to_cpu(rule->m_ext.vlan_tci) & VLAN_VID_MASK;
rule             1072 drivers/net/ethernet/freescale/gianfar_ethtool.c static inline u32 vlan_tci_cfi(struct ethtool_rx_flow_spec *rule)
rule             1074 drivers/net/ethernet/freescale/gianfar_ethtool.c 	return be16_to_cpu(rule->h_ext.vlan_tci) & VLAN_CFI_MASK;
rule             1077 drivers/net/ethernet/freescale/gianfar_ethtool.c static inline u32 vlan_tci_cfim(struct ethtool_rx_flow_spec *rule)
rule             1079 drivers/net/ethernet/freescale/gianfar_ethtool.c 	return be16_to_cpu(rule->m_ext.vlan_tci) & VLAN_CFI_MASK;
rule             1082 drivers/net/ethernet/freescale/gianfar_ethtool.c static inline u32 vlan_tci_prio(struct ethtool_rx_flow_spec *rule)
rule             1084 drivers/net/ethernet/freescale/gianfar_ethtool.c 	return (be16_to_cpu(rule->h_ext.vlan_tci) & VLAN_PRIO_MASK) >>
rule             1088 drivers/net/ethernet/freescale/gianfar_ethtool.c static inline u32 vlan_tci_priom(struct ethtool_rx_flow_spec *rule)
rule             1090 drivers/net/ethernet/freescale/gianfar_ethtool.c 	return (be16_to_cpu(rule->m_ext.vlan_tci) & VLAN_PRIO_MASK) >>
rule             1095 drivers/net/ethernet/freescale/gianfar_ethtool.c static int gfar_convert_to_filer(struct ethtool_rx_flow_spec *rule,
rule             1105 drivers/net/ethernet/freescale/gianfar_ethtool.c 	if ((rule->flow_type & FLOW_EXT) &&
rule             1106 drivers/net/ethernet/freescale/gianfar_ethtool.c 	    (rule->m_ext.vlan_tci != cpu_to_be16(0xFFFF))) {
rule             1107 drivers/net/ethernet/freescale/gianfar_ethtool.c 		if (!rule->m_ext.vlan_tci)
rule             1108 drivers/net/ethernet/freescale/gianfar_ethtool.c 			rule->m_ext.vlan_tci = cpu_to_be16(0xFFFF);
rule             1114 drivers/net/ethernet/freescale/gianfar_ethtool.c 		id = vlan_tci_vid(rule);
rule             1115 drivers/net/ethernet/freescale/gianfar_ethtool.c 		id_mask = vlan_tci_vidm(rule);
rule             1116 drivers/net/ethernet/freescale/gianfar_ethtool.c 		cfi = vlan_tci_cfi(rule);
rule             1117 drivers/net/ethernet/freescale/gianfar_ethtool.c 		cfi_mask = vlan_tci_cfim(rule);
rule             1118 drivers/net/ethernet/freescale/gianfar_ethtool.c 		prio = vlan_tci_prio(rule);
rule             1119 drivers/net/ethernet/freescale/gianfar_ethtool.c 		prio_mask = vlan_tci_priom(rule);
rule             1128 drivers/net/ethernet/freescale/gianfar_ethtool.c 	switch (rule->flow_type & ~FLOW_EXT) {
rule             1132 drivers/net/ethernet/freescale/gianfar_ethtool.c 		gfar_set_basic_ip(&rule->h_u.tcp_ip4_spec,
rule             1133 drivers/net/ethernet/freescale/gianfar_ethtool.c 				  &rule->m_u.tcp_ip4_spec, tab);
rule             1138 drivers/net/ethernet/freescale/gianfar_ethtool.c 		gfar_set_basic_ip(&rule->h_u.udp_ip4_spec,
rule             1139 drivers/net/ethernet/freescale/gianfar_ethtool.c 				  &rule->m_u.udp_ip4_spec, tab);
rule             1145 drivers/net/ethernet/freescale/gianfar_ethtool.c 		gfar_set_basic_ip((struct ethtool_tcpip4_spec *)&rule->h_u,
rule             1146 drivers/net/ethernet/freescale/gianfar_ethtool.c 				  (struct ethtool_tcpip4_spec *)&rule->m_u,
rule             1152 drivers/net/ethernet/freescale/gianfar_ethtool.c 		gfar_set_user_ip((struct ethtool_usrip4_spec *) &rule->h_u,
rule             1153 drivers/net/ethernet/freescale/gianfar_ethtool.c 				 (struct ethtool_usrip4_spec *) &rule->m_u,
rule             1159 drivers/net/ethernet/freescale/gianfar_ethtool.c 		gfar_set_ether((struct ethhdr *) &rule->h_u,
rule             1160 drivers/net/ethernet/freescale/gianfar_ethtool.c 			       (struct ethhdr *) &rule->m_u, tab);
rule             1184 drivers/net/ethernet/freescale/gianfar_ethtool.c 	if (rule->ring_cookie == RX_CLS_FLOW_DISC)
rule             1187 drivers/net/ethernet/freescale/gianfar_ethtool.c 		tab->fe[tab->index - 1].ctrl |= (rule->ring_cookie << 10);
rule             4886 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				   struct hclge_fd_rule *rule)
rule             4892 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (rule->unused_tuple & tuple_bit)
rule             4900 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			calc_x(key_x[ETH_ALEN - 1 - i], rule->tuples.dst_mac[i],
rule             4901 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			       rule->tuples_mask.dst_mac[i]);
rule             4902 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			calc_y(key_y[ETH_ALEN - 1 - i], rule->tuples.dst_mac[i],
rule             4903 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			       rule->tuples_mask.dst_mac[i]);
rule             4909 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			calc_x(key_x[ETH_ALEN - 1 - i], rule->tuples.src_mac[i],
rule             4910 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			       rule->tuples.src_mac[i]);
rule             4911 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			calc_y(key_y[ETH_ALEN - 1 - i], rule->tuples.src_mac[i],
rule             4912 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			       rule->tuples.src_mac[i]);
rule             4917 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(tmp_x_s, rule->tuples.vlan_tag1,
rule             4918 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.vlan_tag1);
rule             4919 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(tmp_y_s, rule->tuples.vlan_tag1,
rule             4920 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.vlan_tag1);
rule             4926 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(tmp_x_s, rule->tuples.ether_proto,
rule             4927 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.ether_proto);
rule             4928 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(tmp_y_s, rule->tuples.ether_proto,
rule             4929 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.ether_proto);
rule             4935 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(*key_x, rule->tuples.ip_tos, rule->tuples_mask.ip_tos);
rule             4936 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(*key_y, rule->tuples.ip_tos, rule->tuples_mask.ip_tos);
rule             4940 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(*key_x, rule->tuples.ip_proto,
rule             4941 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.ip_proto);
rule             4942 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(*key_y, rule->tuples.ip_proto,
rule             4943 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.ip_proto);
rule             4947 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(tmp_x_l, rule->tuples.src_ip[IPV4_INDEX],
rule             4948 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.src_ip[IPV4_INDEX]);
rule             4949 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(tmp_y_l, rule->tuples.src_ip[IPV4_INDEX],
rule             4950 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.src_ip[IPV4_INDEX]);
rule             4956 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(tmp_x_l, rule->tuples.dst_ip[IPV4_INDEX],
rule             4957 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.dst_ip[IPV4_INDEX]);
rule             4958 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(tmp_y_l, rule->tuples.dst_ip[IPV4_INDEX],
rule             4959 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.dst_ip[IPV4_INDEX]);
rule             4965 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(tmp_x_s, rule->tuples.src_port,
rule             4966 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.src_port);
rule             4967 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(tmp_y_s, rule->tuples.src_port,
rule             4968 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.src_port);
rule             4974 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_x(tmp_x_s, rule->tuples.dst_port,
rule             4975 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.dst_port);
rule             4976 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		calc_y(tmp_y_s, rule->tuples.dst_port,
rule             4977 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		       rule->tuples_mask.dst_port);
rule             5009 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				       struct hclge_fd_rule *rule)
rule             5026 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 							    rule->vf_id, 0);
rule             5050 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			    struct hclge_fd_rule *rule)
rule             5072 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 						     cur_key_y, rule);
rule             5085 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				   rule);
rule             5087 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_fd_tcam_config(hdev, stage, false, rule->location, key_y,
rule             5092 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->queue_id, ret);
rule             5096 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_fd_tcam_config(hdev, stage, true, rule->location, key_x,
rule             5101 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->queue_id, ret);
rule             5106 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			       struct hclge_fd_rule *rule)
rule             5110 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ad_data.ad_id = rule->location;
rule             5112 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (rule->action == HCLGE_FD_ACTION_DROP_PACKET) {
rule             5119 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ad_data.queue_id = rule->queue_id;
rule             5129 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ad_data.rule_id = rule->location;
rule             5302 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule = NULL;
rule             5306 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node2, &hdev->fd_rule_list, rule_node) {
rule             5307 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->location >= location)
rule             5313 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	return  rule && rule->location == location;
rule             5322 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule = NULL, *parent = NULL;
rule             5328 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node2,
rule             5330 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->location >= location)
rule             5332 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		parent = rule;
rule             5335 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (rule && rule->location == location) {
rule             5336 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		hlist_del(&rule->rule_node);
rule             5337 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		kfree(rule);
rule             5370 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			      struct hclge_fd_rule *rule)
rule             5378 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.src_ip[IPV4_INDEX] =
rule             5380 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.src_ip[IPV4_INDEX] =
rule             5383 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.dst_ip[IPV4_INDEX] =
rule             5385 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.dst_ip[IPV4_INDEX] =
rule             5388 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.src_port = be16_to_cpu(fs->h_u.tcp_ip4_spec.psrc);
rule             5389 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.src_port =
rule             5392 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.dst_port = be16_to_cpu(fs->h_u.tcp_ip4_spec.pdst);
rule             5393 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.dst_port =
rule             5396 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_tos = fs->h_u.tcp_ip4_spec.tos;
rule             5397 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_tos = fs->m_u.tcp_ip4_spec.tos;
rule             5399 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ether_proto = ETH_P_IP;
rule             5400 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ether_proto = 0xFFFF;
rule             5404 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.src_ip[IPV4_INDEX] =
rule             5406 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.src_ip[IPV4_INDEX] =
rule             5409 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.dst_ip[IPV4_INDEX] =
rule             5411 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.dst_ip[IPV4_INDEX] =
rule             5414 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_tos = fs->h_u.usr_ip4_spec.tos;
rule             5415 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_tos = fs->m_u.usr_ip4_spec.tos;
rule             5417 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_proto = fs->h_u.usr_ip4_spec.proto;
rule             5418 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_proto = fs->m_u.usr_ip4_spec.proto;
rule             5420 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ether_proto = ETH_P_IP;
rule             5421 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ether_proto = 0xFFFF;
rule             5427 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples.src_ip,
rule             5429 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples_mask.src_ip,
rule             5432 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples.dst_ip,
rule             5434 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples_mask.dst_ip,
rule             5437 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.src_port = be16_to_cpu(fs->h_u.tcp_ip6_spec.psrc);
rule             5438 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.src_port =
rule             5441 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.dst_port = be16_to_cpu(fs->h_u.tcp_ip6_spec.pdst);
rule             5442 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.dst_port =
rule             5445 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ether_proto = ETH_P_IPV6;
rule             5446 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ether_proto = 0xFFFF;
rule             5450 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples.src_ip,
rule             5452 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples_mask.src_ip,
rule             5455 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples.dst_ip,
rule             5457 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		be32_to_cpu_array(rule->tuples_mask.dst_ip,
rule             5460 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_proto = fs->h_u.usr_ip6_spec.l4_proto;
rule             5461 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_proto = fs->m_u.usr_ip6_spec.l4_proto;
rule             5463 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ether_proto = ETH_P_IPV6;
rule             5464 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ether_proto = 0xFFFF;
rule             5468 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(rule->tuples.src_mac,
rule             5470 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(rule->tuples_mask.src_mac,
rule             5473 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(rule->tuples.dst_mac,
rule             5475 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(rule->tuples_mask.dst_mac,
rule             5478 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ether_proto =
rule             5480 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ether_proto =
rule             5491 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_proto = IPPROTO_SCTP;
rule             5492 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_proto = 0xFF;
rule             5496 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_proto = IPPROTO_TCP;
rule             5497 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_proto = 0xFF;
rule             5501 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.ip_proto = IPPROTO_UDP;
rule             5502 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.ip_proto = 0xFF;
rule             5509 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples.vlan_tag1 = be16_to_cpu(fs->h_ext.vlan_tci);
rule             5510 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->tuples_mask.vlan_tag1 = be16_to_cpu(fs->m_ext.vlan_tci);
rule             5514 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(rule->tuples.dst_mac, fs->h_ext.h_dest);
rule             5515 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(rule->tuples_mask.dst_mac, fs->m_ext.h_dest);
rule             5523 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				struct hclge_fd_rule *rule)
rule             5527 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (!rule) {
rule             5534 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hclge_fd_update_rule_list(hdev, rule, rule->location, true);
rule             5536 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_config_action(hdev, HCLGE_FD_STAGE_1, rule);
rule             5540 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_config_key(hdev, HCLGE_FD_STAGE_1, rule);
rule             5547 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hclge_fd_update_rule_list(hdev, rule, rule->location, false);
rule             5558 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule;
rule             5608 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule = kzalloc(sizeof(*rule), GFP_KERNEL);
rule             5609 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (!rule)
rule             5612 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_fd_get_tuple(hdev, fs, rule);
rule             5614 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		kfree(rule);
rule             5618 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->flow_type = fs->flow_type;
rule             5620 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->location = fs->location;
rule             5621 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->unused_tuple = unused;
rule             5622 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->vf_id = dst_vport_id;
rule             5623 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->queue_id = q_index;
rule             5624 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->action = action;
rule             5625 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->rule_type = HCLGE_FD_EP_ACTIVE;
rule             5633 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_fd_config_rule(hdev, rule);
rule             5680 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule;
rule             5694 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		hlist_for_each_entry_safe(rule, node, &hdev->fd_rule_list,
rule             5696 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			hlist_del(&rule->rule_node);
rule             5697 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			kfree(rule);
rule             5712 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule;
rule             5728 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node, &hdev->fd_rule_list, rule_node) {
rule             5729 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ret = hclge_config_action(hdev, HCLGE_FD_STAGE_1, rule);
rule             5731 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			ret = hclge_config_key(hdev, HCLGE_FD_STAGE_1, rule);
rule             5736 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				 rule->location);
rule             5737 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			clear_bit(rule->location, hdev->fd_bmap);
rule             5738 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			hlist_del(&rule->rule_node);
rule             5739 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			kfree(rule);
rule             5771 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule = NULL;
rule             5783 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node2, &hdev->fd_rule_list, rule_node) {
rule             5784 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->location >= fs->location)
rule             5788 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (!rule || fs->location != rule->location) {
rule             5794 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	fs->flow_type = rule->flow_type;
rule             5800 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				cpu_to_be32(rule->tuples.src_ip[IPV4_INDEX]);
rule             5802 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->unused_tuple & BIT(INNER_SRC_IP) ?
rule             5803 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			0 : cpu_to_be32(rule->tuples_mask.src_ip[IPV4_INDEX]);
rule             5806 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				cpu_to_be32(rule->tuples.dst_ip[IPV4_INDEX]);
rule             5808 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->unused_tuple & BIT(INNER_DST_IP) ?
rule             5809 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			0 : cpu_to_be32(rule->tuples_mask.dst_ip[IPV4_INDEX]);
rule             5811 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.tcp_ip4_spec.psrc = cpu_to_be16(rule->tuples.src_port);
rule             5813 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_SRC_PORT) ?
rule             5814 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : cpu_to_be16(rule->tuples_mask.src_port);
rule             5816 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.tcp_ip4_spec.pdst = cpu_to_be16(rule->tuples.dst_port);
rule             5818 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_DST_PORT) ?
rule             5819 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : cpu_to_be16(rule->tuples_mask.dst_port);
rule             5821 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.tcp_ip4_spec.tos = rule->tuples.ip_tos;
rule             5823 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_IP_TOS) ?
rule             5824 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : rule->tuples_mask.ip_tos;
rule             5829 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				cpu_to_be32(rule->tuples.src_ip[IPV4_INDEX]);
rule             5831 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->unused_tuple & BIT(INNER_SRC_IP) ?
rule             5832 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			0 : cpu_to_be32(rule->tuples_mask.src_ip[IPV4_INDEX]);
rule             5835 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				cpu_to_be32(rule->tuples.dst_ip[IPV4_INDEX]);
rule             5837 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->unused_tuple & BIT(INNER_DST_IP) ?
rule             5838 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			0 : cpu_to_be32(rule->tuples_mask.dst_ip[IPV4_INDEX]);
rule             5840 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.usr_ip4_spec.tos = rule->tuples.ip_tos;
rule             5842 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_IP_TOS) ?
rule             5843 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : rule->tuples_mask.ip_tos;
rule             5845 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.usr_ip4_spec.proto = rule->tuples.ip_proto;
rule             5847 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_IP_PROTO) ?
rule             5848 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : rule->tuples_mask.ip_proto;
rule             5857 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				  rule->tuples.src_ip, IPV6_SIZE);
rule             5858 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_SRC_IP))
rule             5863 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					  rule->tuples_mask.src_ip, IPV6_SIZE);
rule             5866 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				  rule->tuples.dst_ip, IPV6_SIZE);
rule             5867 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_DST_IP))
rule             5872 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					  rule->tuples_mask.dst_ip, IPV6_SIZE);
rule             5874 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.tcp_ip6_spec.psrc = cpu_to_be16(rule->tuples.src_port);
rule             5876 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_SRC_PORT) ?
rule             5877 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : cpu_to_be16(rule->tuples_mask.src_port);
rule             5879 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.tcp_ip6_spec.pdst = cpu_to_be16(rule->tuples.dst_port);
rule             5881 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_DST_PORT) ?
rule             5882 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : cpu_to_be16(rule->tuples_mask.dst_port);
rule             5887 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				  rule->tuples.src_ip, IPV6_SIZE);
rule             5888 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_SRC_IP))
rule             5893 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					  rule->tuples_mask.src_ip, IPV6_SIZE);
rule             5896 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				  rule->tuples.dst_ip, IPV6_SIZE);
rule             5897 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_DST_IP))
rule             5902 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					  rule->tuples_mask.dst_ip, IPV6_SIZE);
rule             5904 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_u.usr_ip6_spec.l4_proto = rule->tuples.ip_proto;
rule             5906 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_IP_PROTO) ?
rule             5907 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : rule->tuples_mask.ip_proto;
rule             5912 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->tuples.src_mac);
rule             5913 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_SRC_MAC))
rule             5917 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					rule->tuples_mask.src_mac);
rule             5920 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->tuples.dst_mac);
rule             5921 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_DST_MAC))
rule             5925 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					rule->tuples_mask.dst_mac);
rule             5928 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				cpu_to_be16(rule->tuples.ether_proto);
rule             5930 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_ETH_TYPE) ?
rule             5931 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				0 : cpu_to_be16(rule->tuples_mask.ether_proto);
rule             5940 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->h_ext.vlan_tci = cpu_to_be16(rule->tuples.vlan_tag1);
rule             5942 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				rule->unused_tuple & BIT(INNER_VLAN_TAG_FST) ?
rule             5944 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				cpu_to_be16(rule->tuples_mask.vlan_tag1);
rule             5948 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ether_addr_copy(fs->h_ext.h_dest, rule->tuples.dst_mac);
rule             5949 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rule->unused_tuple & BIT(INNER_DST_MAC))
rule             5953 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					rule->tuples_mask.dst_mac);
rule             5956 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (rule->action == HCLGE_FD_ACTION_DROP_PACKET) {
rule             5961 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		fs->ring_cookie = rule->queue_id;
rule             5962 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		vf_id = rule->vf_id;
rule             5977 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule;
rule             5987 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node2,
rule             5994 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule_locs[cnt] = rule->location;
rule             6033 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule = NULL;
rule             6036 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node, &hdev->fd_rule_list, rule_node) {
rule             6037 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (!memcmp(tuples, &rule->tuples, sizeof(*tuples)))
rule             6038 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			return rule;
rule             6045 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				     struct hclge_fd_rule *rule)
rule             6047 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->unused_tuple = BIT(INNER_SRC_MAC) | BIT(INNER_DST_MAC) |
rule             6050 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->action = 0;
rule             6051 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->vf_id = 0;
rule             6052 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->rule_type = HCLGE_FD_ARFS_ACTIVE;
rule             6055 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->flow_type = TCP_V4_FLOW;
rule             6057 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->flow_type = UDP_V4_FLOW;
rule             6060 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->flow_type = TCP_V6_FLOW;
rule             6062 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			rule->flow_type = UDP_V6_FLOW;
rule             6064 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	memcpy(&rule->tuples, tuples, sizeof(rule->tuples));
rule             6065 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	memset(&rule->tuples_mask, 0xFF, sizeof(rule->tuples_mask));
rule             6074 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule;
rule             6101 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule = hclge_fd_search_flow_keys(hdev, &new_tuples);
rule             6102 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (!rule) {
rule             6110 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule = kzalloc(sizeof(*rule), GFP_ATOMIC);
rule             6111 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (!rule) {
rule             6118 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->location = bit_id;
rule             6119 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->flow_id = flow_id;
rule             6120 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->queue_id = queue_id;
rule             6121 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		hclge_fd_build_arfs_rule(&new_tuples, rule);
rule             6122 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		ret = hclge_fd_config_rule(hdev, rule);
rule             6129 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		return rule->location;
rule             6134 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	if (rule->queue_id == queue_id)
rule             6135 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		return rule->location;
rule             6137 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	tmp_queue_id = rule->queue_id;
rule             6138 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	rule->queue_id = queue_id;
rule             6139 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	ret = hclge_config_action(hdev, HCLGE_FD_STAGE_1, rule);
rule             6141 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		rule->queue_id = tmp_queue_id;
rule             6145 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	return rule->location;
rule             6152 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	struct hclge_fd_rule *rule;
rule             6161 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node, &hdev->fd_rule_list, rule_node) {
rule             6162 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		if (rps_may_expire_flow(handle->netdev, rule->queue_id,
rule             6163 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 					rule->flow_id, rule->location)) {
rule             6164 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			hlist_del_init(&rule->rule_node);
rule             6165 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			hlist_add_head(&rule->rule_node, &del_list);
rule             6167 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 			clear_bit(rule->location, hdev->fd_bmap);
rule             6172 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 	hlist_for_each_entry_safe(rule, node, &del_list, rule_node) {
rule             6174 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 				     rule->location, NULL, false);
rule             6175 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c 		kfree(rule);
rule             3163 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	struct i40e_fdir_filter *rule;
rule             3170 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             3175 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		rule_locs[cnt] = rule->fd_id;
rule             3200 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	struct i40e_fdir_filter *rule = NULL;
rule             3205 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             3207 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		if (fsp->location <= rule->fd_id)
rule             3211 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	if (!rule || fsp->location != rule->fd_id)
rule             3214 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	fsp->flow_type = rule->flow_type;
rule             3224 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	fsp->h_u.tcp_ip4_spec.psrc = rule->dst_port;
rule             3225 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	fsp->h_u.tcp_ip4_spec.pdst = rule->src_port;
rule             3226 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	fsp->h_u.tcp_ip4_spec.ip4src = rule->dst_ip;
rule             3227 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	fsp->h_u.tcp_ip4_spec.ip4dst = rule->src_ip;
rule             3229 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	switch (rule->flow_type) {
rule             3249 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		     rule->flow_type);
rule             3269 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	if (rule->dest_ctl == I40E_FILTER_PROGRAM_DESC_DEST_DROP_PACKET)
rule             3272 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		fsp->ring_cookie = rule->q_index;
rule             3274 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	if (rule->dest_vsi != pf->vsi[pf->lan_vsi]->id) {
rule             3277 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		vsi = i40e_find_vsi_from_id(pf, rule->dest_vsi);
rule             3289 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	if (rule->flex_filter) {
rule             3291 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		userdef.flex_word = be16_to_cpu(rule->flex_word);
rule             3292 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		userdef.flex_offset = rule->flex_offset;
rule             3517 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	struct i40e_fdir_filter *rule, *parent;
rule             3523 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	rule = NULL;
rule             3525 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             3528 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		if (rule->fd_id >= sw_idx)
rule             3530 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		parent = rule;
rule             3534 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	if (rule && (rule->fd_id == sw_idx)) {
rule             3538 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		err = i40e_add_del_fdir(vsi, rule, false);
rule             3539 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		hlist_del(&rule->fdir_node);
rule             3540 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		kfree(rule);
rule             3577 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	struct i40e_fdir_filter *rule;
rule             3583 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		hlist_for_each_entry(rule, &pf->fdir_filter_list, fdir_node) {
rule             3584 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 			if (rule->flow_type != IP_USER_FLOW)
rule             3586 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 			if (rule->flex_filter &&
rule             3587 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 			    rule->flex_offset == entry->src_offset) {
rule             3606 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		hlist_for_each_entry(rule, &pf->fdir_filter_list, fdir_node) {
rule             3610 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 			if (rule->flow_type == IP_USER_FLOW)
rule             3612 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 			if (rule->flex_filter &&
rule             3613 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 			    rule->flex_offset == entry->src_offset) {
rule             4404 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	struct i40e_fdir_filter *rule;
rule             4408 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             4414 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		if (rule->fd_id == input->fd_id)
rule             4420 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		if (i40e_match_fdir_filter(rule, input)) {
rule             4423 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 				 rule->fd_id);
rule             4651 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	struct i40e_fdir_filter *rule;
rule             4681 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             4683 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 		if (rule->dest_ctl != drop && count <= rule->q_index) {
rule             4686 drivers/net/ethernet/intel/i40e/i40e_ethtool.c 				 rule->fd_id, rule->q_index);
rule             7746 drivers/net/ethernet/intel/i40e/i40e_main.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             7747 drivers/net/ethernet/intel/i40e/i40e_main.c 	struct flow_dissector *dissector = rule->match.dissector;
rule             7766 drivers/net/ethernet/intel/i40e/i40e_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule             7769 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_enc_keyid(rule, &match);
rule             7776 drivers/net/ethernet/intel/i40e/i40e_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule             7779 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_basic(rule, &match);
rule             7791 drivers/net/ethernet/intel/i40e/i40e_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule             7794 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_eth_addrs(rule, &match);
rule             7820 drivers/net/ethernet/intel/i40e/i40e_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule             7823 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_vlan(rule, &match);
rule             7838 drivers/net/ethernet/intel/i40e/i40e_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule             7841 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_control(rule, &match);
rule             7848 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule             7880 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule             7901 drivers/net/ethernet/intel/i40e/i40e_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule             7904 drivers/net/ethernet/intel/i40e/i40e_main.c 		flow_rule_match_ports(rule, &match);
rule             2691 drivers/net/ethernet/intel/iavf/iavf_main.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             2692 drivers/net/ethernet/intel/iavf/iavf_main.c 	struct flow_dissector *dissector = rule->match.dissector;
rule             2715 drivers/net/ethernet/intel/iavf/iavf_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule             2718 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_enc_keyid(rule, &match);
rule             2723 drivers/net/ethernet/intel/iavf/iavf_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule             2726 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_basic(rule, &match);
rule             2748 drivers/net/ethernet/intel/iavf/iavf_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule             2751 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_eth_addrs(rule, &match);
rule             2795 drivers/net/ethernet/intel/iavf/iavf_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule             2798 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_vlan(rule, &match);
rule             2812 drivers/net/ethernet/intel/iavf/iavf_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule             2815 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_control(rule, &match);
rule             2822 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule             2860 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule             2891 drivers/net/ethernet/intel/iavf/iavf_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule             2894 drivers/net/ethernet/intel/iavf/iavf_main.c 		flow_rule_match_ports(rule, &match);
rule             2455 drivers/net/ethernet/intel/igb/igb_ethtool.c 	struct igb_nfc_filter *rule = NULL;
rule             2460 drivers/net/ethernet/intel/igb/igb_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule             2461 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (fsp->location <= rule->sw_idx)
rule             2465 drivers/net/ethernet/intel/igb/igb_ethtool.c 	if (!rule || fsp->location != rule->sw_idx)
rule             2468 drivers/net/ethernet/intel/igb/igb_ethtool.c 	if (rule->filter.match_flags) {
rule             2470 drivers/net/ethernet/intel/igb/igb_ethtool.c 		fsp->ring_cookie = rule->action;
rule             2471 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (rule->filter.match_flags & IGB_FILTER_FLAG_ETHER_TYPE) {
rule             2472 drivers/net/ethernet/intel/igb/igb_ethtool.c 			fsp->h_u.ether_spec.h_proto = rule->filter.etype;
rule             2475 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (rule->filter.match_flags & IGB_FILTER_FLAG_VLAN_TCI) {
rule             2477 drivers/net/ethernet/intel/igb/igb_ethtool.c 			fsp->h_ext.vlan_tci = rule->filter.vlan_tci;
rule             2480 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (rule->filter.match_flags & IGB_FILTER_FLAG_DST_MAC_ADDR) {
rule             2482 drivers/net/ethernet/intel/igb/igb_ethtool.c 					rule->filter.dst_addr);
rule             2488 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (rule->filter.match_flags & IGB_FILTER_FLAG_SRC_MAC_ADDR) {
rule             2490 drivers/net/ethernet/intel/igb/igb_ethtool.c 					rule->filter.src_addr);
rule             2506 drivers/net/ethernet/intel/igb/igb_ethtool.c 	struct igb_nfc_filter *rule;
rule             2512 drivers/net/ethernet/intel/igb/igb_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule             2515 drivers/net/ethernet/intel/igb/igb_ethtool.c 		rule_locs[cnt] = rule->sw_idx;
rule             2869 drivers/net/ethernet/intel/igb/igb_ethtool.c 	struct igb_nfc_filter *rule, *parent;
rule             2873 drivers/net/ethernet/intel/igb/igb_ethtool.c 	rule = NULL;
rule             2875 drivers/net/ethernet/intel/igb/igb_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule             2877 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (rule->sw_idx >= sw_idx)
rule             2879 drivers/net/ethernet/intel/igb/igb_ethtool.c 		parent = rule;
rule             2883 drivers/net/ethernet/intel/igb/igb_ethtool.c 	if (rule && (rule->sw_idx == sw_idx)) {
rule             2885 drivers/net/ethernet/intel/igb/igb_ethtool.c 			err = igb_erase_filter(adapter, rule);
rule             2887 drivers/net/ethernet/intel/igb/igb_ethtool.c 		hlist_del(&rule->nfc_node);
rule             2888 drivers/net/ethernet/intel/igb/igb_ethtool.c 		kfree(rule);
rule             2919 drivers/net/ethernet/intel/igb/igb_ethtool.c 	struct igb_nfc_filter *input, *rule;
rule             2980 drivers/net/ethernet/intel/igb/igb_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule             2981 drivers/net/ethernet/intel/igb/igb_ethtool.c 		if (!memcmp(&input->filter, &rule->filter,
rule             2466 drivers/net/ethernet/intel/igb/igb_main.c 		struct igb_nfc_filter *rule;
rule             2469 drivers/net/ethernet/intel/igb/igb_main.c 		hlist_for_each_entry_safe(rule, node2,
rule             2471 drivers/net/ethernet/intel/igb/igb_main.c 			igb_erase_filter(adapter, rule);
rule             2472 drivers/net/ethernet/intel/igb/igb_main.c 			hlist_del(&rule->nfc_node);
rule             2473 drivers/net/ethernet/intel/igb/igb_main.c 			kfree(rule);
rule             2587 drivers/net/ethernet/intel/igb/igb_main.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             2588 drivers/net/ethernet/intel/igb/igb_main.c 	struct flow_dissector *dissector = rule->match.dissector;
rule             2601 drivers/net/ethernet/intel/igb/igb_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule             2604 drivers/net/ethernet/intel/igb/igb_main.c 		flow_rule_match_eth_addrs(rule, &match);
rule             2628 drivers/net/ethernet/intel/igb/igb_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule             2631 drivers/net/ethernet/intel/igb/igb_main.c 		flow_rule_match_basic(rule, &match);
rule             2643 drivers/net/ethernet/intel/igb/igb_main.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule             2646 drivers/net/ethernet/intel/igb/igb_main.c 		flow_rule_match_vlan(rule, &match);
rule             9550 drivers/net/ethernet/intel/igb/igb_main.c 	struct igb_nfc_filter *rule;
rule             9554 drivers/net/ethernet/intel/igb/igb_main.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node)
rule             9555 drivers/net/ethernet/intel/igb/igb_main.c 		igb_erase_filter(adapter, rule);
rule             9557 drivers/net/ethernet/intel/igb/igb_main.c 	hlist_for_each_entry(rule, &adapter->cls_flower_list, nfc_node)
rule             9558 drivers/net/ethernet/intel/igb/igb_main.c 		igb_erase_filter(adapter, rule);
rule             9565 drivers/net/ethernet/intel/igb/igb_main.c 	struct igb_nfc_filter *rule;
rule             9569 drivers/net/ethernet/intel/igb/igb_main.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node)
rule             9570 drivers/net/ethernet/intel/igb/igb_main.c 		igb_add_filter(adapter, rule);
rule              882 drivers/net/ethernet/intel/igc/igc_ethtool.c 	struct igc_nfc_filter *rule = NULL;
rule              887 drivers/net/ethernet/intel/igc/igc_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule              888 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (fsp->location <= rule->sw_idx)
rule              892 drivers/net/ethernet/intel/igc/igc_ethtool.c 	if (!rule || fsp->location != rule->sw_idx)
rule              895 drivers/net/ethernet/intel/igc/igc_ethtool.c 	if (rule->filter.match_flags) {
rule              897 drivers/net/ethernet/intel/igc/igc_ethtool.c 		fsp->ring_cookie = rule->action;
rule              898 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (rule->filter.match_flags & IGC_FILTER_FLAG_ETHER_TYPE) {
rule              899 drivers/net/ethernet/intel/igc/igc_ethtool.c 			fsp->h_u.ether_spec.h_proto = rule->filter.etype;
rule              902 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (rule->filter.match_flags & IGC_FILTER_FLAG_VLAN_TCI) {
rule              904 drivers/net/ethernet/intel/igc/igc_ethtool.c 			fsp->h_ext.vlan_tci = rule->filter.vlan_tci;
rule              907 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (rule->filter.match_flags & IGC_FILTER_FLAG_DST_MAC_ADDR) {
rule              909 drivers/net/ethernet/intel/igc/igc_ethtool.c 					rule->filter.dst_addr);
rule              915 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (rule->filter.match_flags & IGC_FILTER_FLAG_SRC_MAC_ADDR) {
rule              917 drivers/net/ethernet/intel/igc/igc_ethtool.c 					rule->filter.src_addr);
rule              933 drivers/net/ethernet/intel/igc/igc_ethtool.c 	struct igc_nfc_filter *rule;
rule              939 drivers/net/ethernet/intel/igc/igc_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule              942 drivers/net/ethernet/intel/igc/igc_ethtool.c 		rule_locs[cnt] = rule->sw_idx;
rule             1304 drivers/net/ethernet/intel/igc/igc_ethtool.c 	struct igc_nfc_filter *rule, *parent;
rule             1308 drivers/net/ethernet/intel/igc/igc_ethtool.c 	rule = NULL;
rule             1310 drivers/net/ethernet/intel/igc/igc_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule             1312 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (rule->sw_idx >= sw_idx)
rule             1314 drivers/net/ethernet/intel/igc/igc_ethtool.c 		parent = rule;
rule             1318 drivers/net/ethernet/intel/igc/igc_ethtool.c 	if (rule && rule->sw_idx == sw_idx) {
rule             1320 drivers/net/ethernet/intel/igc/igc_ethtool.c 			err = igc_erase_filter(adapter, rule);
rule             1322 drivers/net/ethernet/intel/igc/igc_ethtool.c 		hlist_del(&rule->nfc_node);
rule             1323 drivers/net/ethernet/intel/igc/igc_ethtool.c 		kfree(rule);
rule             1354 drivers/net/ethernet/intel/igc/igc_ethtool.c 	struct igc_nfc_filter *input, *rule;
rule             1415 drivers/net/ethernet/intel/igc/igc_ethtool.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node) {
rule             1416 drivers/net/ethernet/intel/igc/igc_ethtool.c 		if (!memcmp(&input->filter, &rule->filter,
rule             2073 drivers/net/ethernet/intel/igc/igc_main.c 	struct igc_nfc_filter *rule;
rule             2077 drivers/net/ethernet/intel/igc/igc_main.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node)
rule             2078 drivers/net/ethernet/intel/igc/igc_main.c 		igc_erase_filter(adapter, rule);
rule             2080 drivers/net/ethernet/intel/igc/igc_main.c 	hlist_for_each_entry(rule, &adapter->cls_flower_list, nfc_node)
rule             2081 drivers/net/ethernet/intel/igc/igc_main.c 		igc_erase_filter(adapter, rule);
rule             2088 drivers/net/ethernet/intel/igc/igc_main.c 	struct igc_nfc_filter *rule;
rule             2092 drivers/net/ethernet/intel/igc/igc_main.c 	hlist_for_each_entry(rule, &adapter->nfc_filter_list, nfc_node)
rule             2093 drivers/net/ethernet/intel/igc/igc_main.c 		igc_add_filter(adapter, rule);
rule             2268 drivers/net/ethernet/intel/igc/igc_main.c 		struct igc_nfc_filter *rule;
rule             2271 drivers/net/ethernet/intel/igc/igc_main.c 		hlist_for_each_entry_safe(rule, node2,
rule             2273 drivers/net/ethernet/intel/igc/igc_main.c 			igc_erase_filter(adapter, rule);
rule             2274 drivers/net/ethernet/intel/igc/igc_main.c 			hlist_del(&rule->nfc_node);
rule             2275 drivers/net/ethernet/intel/igc/igc_main.c 			kfree(rule);
rule             2417 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	struct ixgbe_fdir_filter *rule = NULL;
rule             2422 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             2424 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		if (fsp->location <= rule->sw_idx)
rule             2428 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	if (!rule || fsp->location != rule->sw_idx)
rule             2434 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	switch (rule->filter.formatted.flow_type) {
rule             2454 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_u.tcp_ip4_spec.psrc = rule->filter.formatted.src_port;
rule             2456 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_u.tcp_ip4_spec.pdst = rule->filter.formatted.dst_port;
rule             2458 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_u.tcp_ip4_spec.ip4src = rule->filter.formatted.src_ip[0];
rule             2460 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_u.tcp_ip4_spec.ip4dst = rule->filter.formatted.dst_ip[0];
rule             2462 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_ext.vlan_tci = rule->filter.formatted.vlan_id;
rule             2464 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_ext.vlan_etype = rule->filter.formatted.flex_bytes;
rule             2466 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	fsp->h_ext.data[1] = htonl(rule->filter.formatted.vm_pool);
rule             2471 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	if (rule->action == IXGBE_FDIR_DROP_QUEUE)
rule             2474 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		fsp->ring_cookie = rule->action;
rule             2484 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	struct ixgbe_fdir_filter *rule;
rule             2490 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             2494 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		rule_locs[cnt] = rule->sw_idx;
rule             2582 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	struct ixgbe_fdir_filter *rule, *parent;
rule             2586 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	rule = NULL;
rule             2588 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	hlist_for_each_entry_safe(rule, node2,
rule             2591 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		if (rule->sw_idx >= sw_idx)
rule             2593 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		parent = rule;
rule             2597 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 	if (rule && (rule->sw_idx == sw_idx)) {
rule             2598 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		if (!input || (rule->filter.formatted.bkt_hash !=
rule             2601 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 								&rule->filter,
rule             2605 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		hlist_del(&rule->fdir_node);
rule             2606 drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c 		kfree(rule);
rule              880 drivers/net/ethernet/marvell/mvpp2/mvpp2.h 	struct mvpp2_rfs_rule rule;
rule             1078 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 				       struct mvpp2_rfs_rule *rule)
rule             1087 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	index = mvpp2_cls_c2_port_flow_index(port, rule->loc);
rule             1092 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	act = &rule->flow->action.entries[0];
rule             1094 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	rule->c2_index = c2.index;
rule             1096 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	c2.tcam[3] = (rule->c2_tcam & 0xffff) |
rule             1097 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		     ((rule->c2_tcam_mask & 0xffff) << 16);
rule             1098 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	c2.tcam[2] = ((rule->c2_tcam >> 16) & 0xffff) |
rule             1099 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		     (((rule->c2_tcam_mask >> 16) & 0xffff) << 16);
rule             1100 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	c2.tcam[1] = ((rule->c2_tcam >> 32) & 0xffff) |
rule             1101 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		     (((rule->c2_tcam_mask >> 32) & 0xffff) << 16);
rule             1102 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	c2.tcam[0] = ((rule->c2_tcam >> 48) & 0xffff) |
rule             1103 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		     (((rule->c2_tcam_mask >> 48) & 0xffff) << 16);
rule             1111 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	c2.tcam[4] |= MVPP22_CLS_C2_LU_TYPE(rule->loc);
rule             1166 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 					 struct mvpp2_rfs_rule *rule)
rule             1168 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	return mvpp2_port_c2_tcam_rule_add(port, rule);
rule             1172 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 					  struct mvpp2_rfs_rule *rule)
rule             1178 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	for_each_cls_flow_id_containing_type(i, rule->flow_type) {
rule             1183 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		index = MVPP2_CLS_FLT_C2_RFS(port->id, flow->flow_id, rule->loc);
rule             1190 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	if (rule->c2_index >= 0)
rule             1191 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		mvpp22_port_c2_lookup_disable(port, rule->c2_index);
rule             1197 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 					  struct mvpp2_rfs_rule *rule)
rule             1204 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	if (rule->engine != MVPP22_CLS_ENGINE_C2)
rule             1207 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	ret = mvpp2_port_c2_rfs_rule_insert(port, rule);
rule             1211 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	for_each_cls_flow_id_containing_type(i, rule->flow_type) {
rule             1216 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		if ((rule->hek_fields & flow->supported_hash_opts) != rule->hek_fields)
rule             1219 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		index = MVPP2_CLS_FLT_C2_RFS(port->id, flow->flow_id, rule->loc);
rule             1222 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		mvpp2_cls_flow_eng_set(&fe, rule->engine);
rule             1224 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		mvpp2_flow_set_hek_fields(&fe, rule->hek_fields);
rule             1225 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		mvpp2_cls_flow_lu_type_set(&fe, rule->loc);
rule             1234 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c static int mvpp2_cls_c2_build_match(struct mvpp2_rfs_rule *rule)
rule             1236 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	struct flow_rule *flow = rule->flow;
rule             1247 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->hek_fields |= MVPP22_CLS_HEK_OPT_VLAN;
rule             1249 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam |= ((u64)match.key->vlan_id) << offs;
rule             1250 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam_mask |= ((u64)match.mask->vlan_id) << offs;
rule             1256 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->hek_fields |= MVPP22_CLS_HEK_OPT_VLAN_PRI;
rule             1261 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam |= ((u64)match.key->vlan_priority) <<
rule             1263 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam_mask |= ((u64)match.mask->vlan_priority) <<
rule             1281 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->hek_fields |= MVPP22_CLS_HEK_OPT_L4SIP;
rule             1283 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam |= ((u64)ntohs(match.key->src)) << offs;
rule             1284 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam_mask |= ((u64)ntohs(match.mask->src)) << offs;
rule             1289 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->hek_fields |= MVPP22_CLS_HEK_OPT_L4DIP;
rule             1291 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam |= ((u64)ntohs(match.key->dst)) << offs;
rule             1292 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 			rule->c2_tcam_mask |= ((u64)ntohs(match.mask->dst)) << offs;
rule             1297 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	if (hweight16(rule->hek_fields) > MVPP2_FLOW_N_FIELDS)
rule             1303 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c static int mvpp2_cls_rfs_parse_rule(struct mvpp2_rfs_rule *rule)
rule             1305 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	struct flow_rule *flow = rule->flow;
rule             1322 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	rule->engine = MVPP22_CLS_ENGINE_C2;
rule             1324 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	if (mvpp2_cls_c2_build_match(rule))
rule             1376 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	efs->rule.flow = ethtool_rule->rule;
rule             1377 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	efs->rule.flow_type = mvpp2_cls_ethtool_flow_to_type(info->fs.flow_type);
rule             1378 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	if (efs->rule.flow_type < 0) {
rule             1379 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		ret = efs->rule.flow_type;
rule             1383 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	ret = mvpp2_cls_rfs_parse_rule(&efs->rule);
rule             1387 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	efs->rule.loc = info->fs.location;
rule             1390 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	if (port->rfs_rules[efs->rule.loc]) {
rule             1391 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		old_efs = port->rfs_rules[efs->rule.loc];
rule             1392 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 		ret = mvpp2_port_cls_rfs_rule_remove(port, &old_efs->rule);
rule             1399 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	ret = mvpp2_port_flt_rfs_rule_insert(port, &efs->rule);
rule             1404 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	efs->rule.flow = NULL;
rule             1407 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	port->rfs_rules[efs->rule.loc] = efs;
rule             1433 drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c 	ret = mvpp2_port_cls_rfs_rule_remove(port, &efs->rule);
rule             1594 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	struct mlx4_net_trans_rule rule = {
rule             1601 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	rule.port = priv->port;
rule             1602 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	rule.priority = MLX4_DOMAIN_ETHTOOL | cmd->fs.location;
rule             1603 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	INIT_LIST_HEAD(&rule.list);
rule             1623 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	rule.qpn = qpn;
rule             1624 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	err = mlx4_en_ethtool_to_net_trans_rule(dev, cmd, &rule.list);
rule             1641 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	err = mlx4_flow_attach(priv->mdev->dev, &rule, &reg_id);
rule             1653 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	list_for_each_entry_safe(spec, tmp_spec, &rule.list, list) {
rule             1664 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	struct ethtool_flow_id *rule;
rule             1670 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	rule = &priv->ethtool_rules[cmd->fs.location];
rule             1671 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	if (!rule->id) {
rule             1676 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	err = mlx4_flow_detach(priv->mdev->dev, rule->id);
rule             1679 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 		       cmd->fs.location, rule->id);
rule             1682 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	rule->id = 0;
rule             1683 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	memset(&rule->flow_spec, 0, sizeof(struct ethtool_rx_flow_spec));
rule             1684 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	list_del(&rule->list);
rule             1694 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	struct ethtool_flow_id *rule;
rule             1700 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	rule = &priv->ethtool_rules[loc];
rule             1701 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 	if (rule->id)
rule             1702 drivers/net/ethernet/mellanox/mlx4/en_ethtool.c 		memcpy(&cmd->fs, &rule->flow_spec,
rule              228 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 	struct mlx4_net_trans_rule rule = {
rule              229 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		.list = LIST_HEAD_INIT(rule.list),
rule              245 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 	list_add_tail(&spec_eth.list, &rule.list);
rule              246 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 	list_add_tail(&spec_ip.list, &rule.list);
rule              247 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 	list_add_tail(&spec_tcp_udp.list, &rule.list);
rule              249 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 	rule.qpn = priv->rss_map.qps[filter->rxq_index].qpn;
rule              261 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 	rc = mlx4_flow_attach(priv->mdev->dev, &rule, &filter->reg_id);
rule              580 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		struct mlx4_net_trans_rule rule = {
rule              588 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		rule.port = priv->port;
rule              589 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		rule.qpn = *qpn;
rule              590 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		INIT_LIST_HEAD(&rule.list);
rule              595 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		list_add_tail(&spec_eth.list, &rule.list);
rule              597 drivers/net/ethernet/mellanox/mlx4/en_netdev.c 		err = mlx4_flow_attach(dev, &rule, reg_id);
rule              901 drivers/net/ethernet/mellanox/mlx4/mcg.c 			  struct mlx4_net_trans_rule *rule)
rule              911 drivers/net/ethernet/mellanox/mlx4/mcg.c 			rule->port, rule->priority, rule->qpn);
rule              913 drivers/net/ethernet/mellanox/mlx4/mcg.c 	list_for_each_entry(cur, &rule->list, list) {
rule              978 drivers/net/ethernet/mellanox/mlx4/mcg.c 		     struct mlx4_net_trans_rule *rule, u64 *reg_id)
rule              989 drivers/net/ethernet/mellanox/mlx4/mcg.c 	if (!mlx4_qp_lookup(dev, rule->qpn)) {
rule              990 drivers/net/ethernet/mellanox/mlx4/mcg.c 		mlx4_err_rule(dev, "QP doesn't exist\n", rule);
rule              995 drivers/net/ethernet/mellanox/mlx4/mcg.c 	trans_rule_ctrl_to_hw(rule, mailbox->buf);
rule              999 drivers/net/ethernet/mellanox/mlx4/mcg.c 	list_for_each_entry(cur, &rule->list, list) {
rule             1011 drivers/net/ethernet/mellanox/mlx4/mcg.c 			      rule);
rule             1018 drivers/net/ethernet/mellanox/mlx4/mcg.c 					      rule);
rule             1023 drivers/net/ethernet/mellanox/mlx4/mcg.c 					      rule);
rule             1026 drivers/net/ethernet/mellanox/mlx4/mcg.c 			mlx4_err_rule(dev, "Fail to register network rule.\n", rule);
rule             1057 drivers/net/ethernet/mellanox/mlx4/mcg.c 	struct mlx4_net_trans_rule rule = {
rule             1066 drivers/net/ethernet/mellanox/mlx4/mcg.c 	rule.port = port;
rule             1067 drivers/net/ethernet/mellanox/mlx4/mcg.c 	rule.qpn = qpn;
rule             1068 drivers/net/ethernet/mellanox/mlx4/mcg.c 	rule.priority = prio;
rule             1069 drivers/net/ethernet/mellanox/mlx4/mcg.c 	INIT_LIST_HEAD(&rule.list);
rule             1078 drivers/net/ethernet/mellanox/mlx4/mcg.c 	list_add_tail(&spec_eth_outer.list, &rule.list);
rule             1079 drivers/net/ethernet/mellanox/mlx4/mcg.c 	list_add_tail(&spec_vxlan.list,     &rule.list);
rule             1080 drivers/net/ethernet/mellanox/mlx4/mcg.c 	list_add_tail(&spec_eth_inner.list, &rule.list);
rule             1082 drivers/net/ethernet/mellanox/mlx4/mcg.c 	err = mlx4_flow_attach(dev, &rule, reg_id);
rule             1375 drivers/net/ethernet/mellanox/mlx4/mcg.c 		struct mlx4_net_trans_rule rule = {
rule             1382 drivers/net/ethernet/mellanox/mlx4/mcg.c 		rule.allow_loopback = !block_mcast_loopback;
rule             1383 drivers/net/ethernet/mellanox/mlx4/mcg.c 		rule.port = port;
rule             1384 drivers/net/ethernet/mellanox/mlx4/mcg.c 		rule.qpn = qp->qpn;
rule             1385 drivers/net/ethernet/mellanox/mlx4/mcg.c 		INIT_LIST_HEAD(&rule.list);
rule             1402 drivers/net/ethernet/mellanox/mlx4/mcg.c 		list_add_tail(&spec.list, &rule.list);
rule             1404 drivers/net/ethernet/mellanox/mlx4/mcg.c 		return mlx4_flow_attach(dev, &rule, reg_id);
rule             1469 drivers/net/ethernet/mellanox/mlx4/mcg.c 	struct mlx4_net_trans_rule rule = {
rule             1491 drivers/net/ethernet/mellanox/mlx4/mcg.c 	rule.promisc_mode = mode;
rule             1492 drivers/net/ethernet/mellanox/mlx4/mcg.c 	rule.port = port;
rule             1493 drivers/net/ethernet/mellanox/mlx4/mcg.c 	rule.qpn = qpn;
rule             1494 drivers/net/ethernet/mellanox/mlx4/mcg.c 	INIT_LIST_HEAD(&rule.list);
rule             1497 drivers/net/ethernet/mellanox/mlx4/mcg.c 	return  mlx4_flow_attach(dev, &rule, regid_p);
rule               30 drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h 				     __dynamic_array(int, ids, f->rule ?
rule               31 drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h 					     f->rule->action.num_entries : 0)
rule               34 drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h 			__entry->num = (f->rule ?
rule               35 drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h 				f->rule->action.num_entries : 0);
rule               38 drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h 						 f->rule->action.entries,
rule               39 drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h 						 f->rule->action.num_entries);
rule              274 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 	    TP_PROTO(const struct mlx5_flow_rule *rule),
rule              275 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 	    TP_ARGS(rule),
rule              277 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 		__field(const struct mlx5_flow_rule *, rule)
rule              285 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 			   __entry->rule = rule;
rule              286 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 			   fs_get_obj(__entry->fte, rule->node.parent);
rule              288 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 			   __entry->sw_action = rule->sw_action;
rule              290 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 				  &rule->dest_attr,
rule              292 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 			   if (rule->dest_attr.type &
rule              295 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 					rule->dest_attr.counter_id;
rule              298 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 		      __entry->rule, __entry->fte, __entry->index,
rule              304 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 	    TP_PROTO(const struct mlx5_flow_rule *rule),
rule              305 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 	    TP_ARGS(rule),
rule              307 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 		__field(const struct mlx5_flow_rule *, rule)
rule              311 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 			   __entry->rule = rule;
rule              312 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 			   fs_get_obj(__entry->fte, rule->node.parent);
rule              315 drivers/net/ethernet/mellanox/mlx5/core/diag/fs_tracepoint.h 		      __entry->rule, __entry->fte)
rule               34 drivers/net/ethernet/mellanox/mlx5/core/en/fs.h 	struct mlx5_flow_handle *rule;
rule              516 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              522 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_PORTS)) {
rule              530 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c 	flow_rule_match_enc_ports(rule, &enc_ports);
rule               25 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule               29 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_PORTS))
rule               32 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	flow_rule_match_enc_ports(rule, &enc_ports);
rule              127 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              135 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID))
rule              138 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	flow_rule_match_enc_keyid(rule, &enc_keyid);
rule              161 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              174 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_OPTS))
rule              177 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_geneve.c 	flow_rule_match_enc_opts(rule, &enc_opts);
rule               63 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_gre.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule               73 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_gre.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule               76 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_gre.c 		flow_rule_match_enc_keyid(rule, &enc_keyid);
rule               21 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule               25 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_PORTS))
rule               28 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c 	flow_rule_match_enc_ports(rule, &enc_ports);
rule              107 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              115 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID))
rule              118 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c 	flow_rule_match_enc_keyid(rule, &enc_keyid);
rule               57 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	struct mlx5_flow_handle *rule;
rule              394 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		if (arfs_rule->rule)
rule              395 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 			mlx5_del_flow_rules(arfs_rule->rule);
rule              404 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	struct arfs_rule *rule;
rule              410 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	mlx5e_for_each_arfs_rule(rule, htmp, priv->fs.arfs.arfs_tables, i, j) {
rule              411 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		hlist_del_init(&rule->hlist);
rule              412 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		hlist_add_head(&rule->hlist, &del_list);
rule              416 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	hlist_for_each_entry_safe(rule, htmp, &del_list, hlist) {
rule              417 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		cancel_work_sync(&rule->arfs_work);
rule              418 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		if (rule->rule)
rule              419 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 			mlx5_del_flow_rules(rule->rule);
rule              420 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		hlist_del(&rule->hlist);
rule              421 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		kfree(rule);
rule              460 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	struct mlx5_flow_handle *rule = NULL;
rule              537 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1);
rule              538 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	if (IS_ERR(rule)) {
rule              539 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		err = PTR_ERR(rule);
rule              549 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	return err ? ERR_PTR(err) : rule;
rule              553 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 				struct mlx5_flow_handle *rule, u16 rxq)
rule              560 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	err =  mlx5_modify_rule_destination(rule, &dst, NULL);
rule              572 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	struct mlx5_flow_handle *rule;
rule              586 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	if (!arfs_rule->rule) {
rule              587 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		rule = arfs_add_rule(priv, arfs_rule);
rule              588 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		if (IS_ERR(rule))
rule              590 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		arfs_rule->rule = rule;
rule              592 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 		arfs_modify_rule_rq(priv, arfs_rule->rule,
rule              604 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	struct arfs_rule *rule;
rule              607 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	rule = kzalloc(sizeof(*rule), GFP_ATOMIC);
rule              608 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	if (!rule)
rule              611 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	rule->priv = priv;
rule              612 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	rule->rxq = rxq;
rule              613 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	INIT_WORK(&rule->arfs_work, arfs_handle_work);
rule              615 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	tuple = &rule->tuple;
rule              630 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	rule->flow_id = flow_id;
rule              631 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	rule->filter_id = priv->fs.arfs.last_filter_id++ % RPS_NO_FILTER;
rule              633 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	hlist_add_head(&rule->hlist,
rule              636 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c 	return rule;
rule              819 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	struct mlx5_flow_handle *rule;
rule              845 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	rule = mlx5_add_flow_rules(ft, spec, &flow_act, dest, 1);
rule              846 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	if (IS_ERR(rule)) {
rule              847 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 		err = PTR_ERR(rule);
rule              852 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	return err ? ERR_PTR(err) : rule;
rule              981 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	struct mlx5_flow_handle *rule;
rule             1003 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	rule = mlx5_add_flow_rules(ft, spec, &flow_act, dest, 1);
rule             1004 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	if (IS_ERR(rule)) {
rule             1005 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 		err = PTR_ERR(rule);
rule             1010 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	return err ? ERR_PTR(err) : rule;
rule             1216 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	if (!IS_ERR_OR_NULL(ai->rule)) {
rule             1217 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 		mlx5_del_flow_rules(ai->rule);
rule             1218 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 		ai->rule = NULL;
rule             1262 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	ai->rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1);
rule             1263 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 	if (IS_ERR(ai->rule)) {
rule             1266 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 		err = PTR_ERR(ai->rule);
rule             1267 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c 		ai->rule = NULL;
rule               41 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	struct mlx5_flow_handle	     *rule;
rule              372 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 			     struct mlx5e_ethtool_rule *rule)
rule              378 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 		if (iter->flow_spec.location > rule->flow_spec.location)
rule              383 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	list_add(&rule->list, head);
rule              404 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	struct mlx5_flow_handle *rule;
rule              440 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	rule = mlx5_add_flow_rules(ft, spec, &flow_act, dst, dst ? 1 : 0);
rule              441 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	if (IS_ERR(rule)) {
rule              442 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 		err = PTR_ERR(rule);
rule              450 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	return err ? ERR_PTR(err) : rule;
rule              456 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	if (eth_rule->rule)
rule              457 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 		mlx5_del_flow_rules(eth_rule->rule);
rule              671 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	struct mlx5_flow_handle *rule;
rule              698 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	rule = add_ethtool_flow_rule(priv, eth_ft->ft, fs);
rule              699 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	if (IS_ERR(rule)) {
rule              700 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 		err = PTR_ERR(rule);
rule              704 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c 	eth_rule->rule = rule;
rule              117 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct mlx5_flow_handle *rule[MLX5E_TC_MAX_SPLITS + 1];
rule              987 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	flow->rule[0] = mlx5_add_flow_rules(priv->fs.tc.t, &parse_attr->spec,
rule              991 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	return PTR_ERR_OR_ZERO(flow->rule[0]);
rule             1001 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (!IS_ERR_OR_NULL(flow->rule[0]))
rule             1002 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		mlx5_del_flow_rules(flow->rule[0]);
rule             1036 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct mlx5_flow_handle *rule;
rule             1038 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	rule = mlx5_eswitch_add_offloaded_rule(esw, spec, attr);
rule             1039 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (IS_ERR(rule))
rule             1040 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		return rule;
rule             1043 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow->rule[1] = mlx5_eswitch_add_fwd_rule(esw, spec, attr);
rule             1044 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		if (IS_ERR(flow->rule[1])) {
rule             1045 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			mlx5_eswitch_del_offloaded_rule(esw, rule, attr);
rule             1046 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			return flow->rule[1];
rule             1050 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	return rule;
rule             1061 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		mlx5_eswitch_del_fwd_rule(esw, flow->rule[1], attr);
rule             1063 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	mlx5_eswitch_del_offloaded_rule(esw, flow->rule[0], attr);
rule             1072 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct mlx5_flow_handle *rule;
rule             1079 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	rule = mlx5e_tc_offload_fdb_rules(esw, flow, spec, slow_attr);
rule             1080 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (!IS_ERR(rule))
rule             1083 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	return rule;
rule             1228 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow->rule[0] = mlx5e_tc_offload_to_slow_path(esw, flow, &parse_attr->spec, &slow_attr);
rule             1230 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow->rule[0] = mlx5e_tc_offload_fdb_rules(esw, flow, &parse_attr->spec, attr);
rule             1233 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (IS_ERR(flow->rule[0]))
rule             1234 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		return PTR_ERR(flow->rule[0]);
rule             1300 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct mlx5_flow_handle *rule;
rule             1344 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		rule = mlx5e_tc_offload_fdb_rules(esw, flow, spec, esw_attr);
rule             1345 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		if (IS_ERR(rule)) {
rule             1346 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			err = PTR_ERR(rule);
rule             1353 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow->rule[0] = rule;
rule             1365 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct mlx5_flow_handle *rule;
rule             1376 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		rule = mlx5e_tc_offload_to_slow_path(esw, flow, spec, &slow_attr);
rule             1380 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		if (IS_ERR(rule)) {
rule             1381 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			err = PTR_ERR(rule);
rule             1388 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow->rule[0] = rule;
rule             1662 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             1673 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_CONTROL)) {
rule             1677 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_enc_control(rule, &match);
rule             1684 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			flow_rule_match_enc_ipv4_addrs(rule, &match);
rule             1706 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			flow_rule_match_enc_ipv6_addrs(rule, &match);
rule             1732 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_IP)) {
rule             1735 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_enc_ip(rule, &match);
rule             1812 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             1813 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct flow_dissector *dissector = rule->match.dissector;
rule             1860 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule             1863 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_basic(rule, &match);
rule             1872 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN) ||
rule             1887 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 			flow_rule_match_vlan(rule, &match);
rule             1925 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CVLAN)) {
rule             1928 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_cvlan(rule, &match);
rule             1957 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule             1960 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_eth_addrs(rule, &match);
rule             1980 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule             1983 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_control(rule, &match);
rule             2004 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule             2007 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_basic(rule, &match);
rule             2022 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule             2043 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule             2063 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IP)) {
rule             2066 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_ip(rule, &match);
rule             2096 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule             2099 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_ports(rule, &match);
rule             2136 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_TCP)) {
rule             2139 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 		flow_rule_match_tcp(rule, &match);
rule             3594 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             3617 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	err = parse_tc_fdb_actions(priv, &rule->action, flow, extack);
rule             3729 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule             3752 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	err = parse_tc_nic_actions(priv, &rule->action, parse_attr, flow, extack);
rule             4024 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 	return scan_tc_matchall_fdb_actions(priv, &ma->rule->action, extack);
rule              293 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h void mlx5_eswitch_del_send_to_vport_rule(struct mlx5_flow_handle *rule);
rule              332 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h 				struct mlx5_flow_handle *rule,
rule              336 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h 			  struct mlx5_flow_handle *rule,
rule              146 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	struct mlx5_flow_handle *rule;
rule              175 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 				rule = ERR_CAST(ft);
rule              220 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = ERR_CAST(fdb);
rule              225 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = mlx5_eswitch_add_termtbl_rule(esw, fdb, spec, attr,
rule              228 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = mlx5_add_flow_rules(fdb, spec, &flow_act, dest, i);
rule              229 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (IS_ERR(rule))
rule              234 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return rule;
rule              242 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return rule;
rule              254 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	struct mlx5_flow_handle *rule;
rule              259 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = ERR_CAST(fast_fdb);
rule              265 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 		rule = ERR_CAST(fwd_fdb);
rule              291 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	rule = mlx5_add_flow_rules(fast_fdb, spec, &flow_act, dest, i);
rule              293 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	if (IS_ERR(rule))
rule              298 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return rule;
rule              304 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	return rule;
rule              309 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 			struct mlx5_flow_handle *rule,
rule              316 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	mlx5_del_flow_rules(rule);
rule              338 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 				struct mlx5_flow_handle *rule,
rule              341 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	__mlx5_eswitch_del_rule(esw, rule, attr, false);
rule              346 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 			  struct mlx5_flow_handle *rule,
rule              349 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	__mlx5_eswitch_del_rule(esw, rule, attr, true);
rule              587 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c void mlx5_eswitch_del_send_to_vport_rule(struct mlx5_flow_handle *rule)
rule              589 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c 	mlx5_del_flow_rules(rule);
rule               14 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	struct mlx5_flow_handle *rule;
rule               75 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	tt->rule = mlx5_add_flow_rules(tt->termtbl, &spec, flow_act,
rule               78 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	if (IS_ERR(tt->rule)) {
rule              153 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 		mlx5_del_flow_rules(tt->rule);
rule              219 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	struct mlx5_flow_handle *rule = NULL;
rule              255 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	rule = mlx5_add_flow_rules(fdb, spec, flow_act, dest, num_dest);
rule              256 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	if (IS_ERR(rule))
rule              285 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	rule = mlx5_add_flow_rules(fdb, spec, flow_act, dest, num_dest);
rule              287 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c 	return rule;
rule              865 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		struct mlx5_fpga_ipsec_rule *rule =
rule              869 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		if (rule->fte < fte)
rule              871 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		else if (rule->fte > fte)
rule              874 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 			return rule;
rule              882 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	struct mlx5_fpga_ipsec_rule *rule;
rule              885 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rule = _rule_search(&ipsec_dev->rules_rb, fte);
rule              888 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	return rule;
rule              892 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 			       struct mlx5_fpga_ipsec_rule *rule)
rule              903 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		if (rule->fte < this->fte)
rule              905 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		else if (rule->fte > this->fte)
rule              912 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rb_link_node(&rule->node, parent, new);
rule              913 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rb_insert_color(&rule->node, root);
rule              919 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		       struct mlx5_fpga_ipsec_rule *rule)
rule              924 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	ret = _rule_insert(&ipsec_dev->rules_rb, rule);
rule              931 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 				struct mlx5_fpga_ipsec_rule *rule)
rule              936 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rb_erase(&rule->node, root);
rule              941 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 			struct mlx5_fpga_ipsec_rule *rule)
rule              943 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	_rule_delete(ipsec_dev, rule);
rule              944 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	kfree(rule);
rule             1052 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	struct mlx5_fpga_ipsec_rule *rule;
rule             1063 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rule = kzalloc(sizeof(*rule), GFP_KERNEL);
rule             1064 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	if (!rule)
rule             1067 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rule->ctx = mlx5_fpga_ipsec_fs_create_sa_ctx(dev, fte, is_egress);
rule             1068 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	if (IS_ERR(rule->ctx)) {
rule             1069 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		int err = PTR_ERR(rule->ctx);
rule             1070 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		kfree(rule);
rule             1074 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rule->fte = fte;
rule             1075 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	WARN_ON(rule_insert(fipsec, rule));
rule             1081 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		_rule_delete(fipsec, rule);
rule             1082 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		mlx5_fpga_ipsec_delete_sa_ctx(rule->ctx);
rule             1083 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 		kfree(rule);
rule             1132 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	struct mlx5_fpga_ipsec_rule *rule;
rule             1143 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rule = rule_search(fipsec, fte);
rule             1144 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	if (!rule)
rule             1147 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	mlx5_fpga_ipsec_delete_sa_ctx(rule->ctx);
rule             1148 drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c 	rule_delete(fipsec, rule);
rule              478 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	struct mlx5_flow_rule *rule;
rule              481 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	fs_get_obj(rule, node);
rule              482 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	fs_get_obj(fte, rule->node.parent);
rule              483 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	trace_mlx5_fs_del_rule(rule);
rule              484 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	if (rule->sw_action == MLX5_FLOW_CONTEXT_ACTION_FWD_NEXT_PRIO) {
rule              485 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		mutex_lock(&rule->dest_attr.ft->lock);
rule              486 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		list_del(&rule->next_ft);
rule              487 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		mutex_unlock(&rule->dest_attr.ft->lock);
rule              490 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	if (rule->dest_attr.type == MLX5_FLOW_DESTINATION_TYPE_COUNTER  &&
rule              505 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	kfree(rule);
rule              886 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c static int _mlx5_modify_rule_destination(struct mlx5_flow_rule *rule,
rule              896 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	fs_get_obj(fte, rule->node.parent);
rule              903 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	memcpy(&rule->dest_attr, dest, sizeof(*dest));
rule              921 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		return _mlx5_modify_rule_destination(handle->rule[0],
rule              926 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		if (mlx5_flow_dests_cmp(new_dest, &handle->rule[i]->dest_attr))
rule              927 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			return _mlx5_modify_rule_destination(handle->rule[i],
rule             1176 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	struct mlx5_flow_rule *rule;
rule             1178 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	rule = kzalloc(sizeof(*rule), GFP_KERNEL);
rule             1179 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	if (!rule)
rule             1182 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	INIT_LIST_HEAD(&rule->next_ft);
rule             1183 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	rule->node.type = FS_TYPE_FLOW_DEST;
rule             1185 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		memcpy(&rule->dest_attr, dest, sizeof(*dest));
rule             1187 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	return rule;
rule             1194 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	handle = kzalloc(struct_size(handle, rule, num_rules), GFP_KERNEL);
rule             1209 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		if (refcount_dec_and_test(&handle->rule[i]->node.refcount)) {
rule             1211 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			list_del(&handle->rule[i]->node.list);
rule             1212 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			kfree(handle->rule[i]);
rule             1226 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	struct mlx5_flow_rule *rule = NULL;
rule             1238 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			rule = find_flow_rule(fte, dest + i);
rule             1239 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			if (rule) {
rule             1240 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 				refcount_inc(&rule->node.refcount);
rule             1246 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		rule = alloc_rule(dest + i);
rule             1247 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		if (!rule)
rule             1253 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		tree_init_node(&rule->node, NULL, del_sw_hw_rule);
rule             1256 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			list_add(&rule->node.list, &fte->node.children);
rule             1258 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			list_add_tail(&rule->node.list, &fte->node.children);
rule             1267 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		handle->rule[i] = rule;
rule             1437 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	struct mlx5_flow_rule *rule;
rule             1439 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	list_for_each_entry(rule, &fte->node.children, node.list) {
rule             1440 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		if (mlx5_flow_dests_cmp(&rule->dest_attr, dest))
rule             1441 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			return rule;
rule             1517 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		if (refcount_read(&handle->rule[i]->node.refcount) == 1) {
rule             1518 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			tree_add_node(&handle->rule[i]->node, &fte->node);
rule             1519 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			trace_mlx5_fs_add_rule(handle->rule[i]);
rule             1671 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	struct mlx5_flow_handle *rule;
rule             1694 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		rule = add_rule_fg(g, spec, flow_act, dest, dest_num, fte_tmp);
rule             1698 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		return rule;
rule             1710 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		rule = ERR_PTR(-EAGAIN);
rule             1741 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		rule = add_rule_fg(g, spec, flow_act, dest, dest_num, fte);
rule             1744 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		return rule;
rule             1746 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	rule = ERR_PTR(-ENOENT);
rule             1749 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	return rule;
rule             1762 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	struct mlx5_flow_handle *rule;
rule             1794 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	rule = try_add_to_existing_fg(ft, &match_head.list, spec, flow_act, dest,
rule             1797 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	if (!IS_ERR(rule) ||
rule             1798 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	    (PTR_ERR(rule) != -ENOENT && PTR_ERR(rule) != -EAGAIN)) {
rule             1801 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		return rule;
rule             1809 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	if (PTR_ERR(rule) == -EAGAIN ||
rule             1815 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		rule = ERR_CAST(g);
rule             1817 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		return rule;
rule             1841 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	rule = add_rule_fg(g, spec, flow_act, dest, dest_num, fte);
rule             1845 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	return rule;
rule             1897 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		    (list_empty(&handle->rule[0]->next_ft))) {
rule             1899 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			list_add(&handle->rule[0]->next_ft,
rule             1902 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 			handle->rule[0]->sw_action = MLX5_FLOW_CONTEXT_ACTION_FWD_NEXT_PRIO;
rule             1927 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 	fs_get_obj(fte, handle->rule[0]->node.parent);
rule             1930 drivers/net/ethernet/mellanox/mlx5/core/fs_core.c 		tree_remove_node(&handle->rule[i]->node, true);
rule              149 drivers/net/ethernet/mellanox/mlx5/core/fs_core.h 	struct mlx5_flow_rule *rule[];
rule              355 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c dr_rule_rehash_htbl(struct mlx5dr_rule *rule,
rule              363 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_matcher *matcher = rule->matcher;
rule              472 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static struct mlx5dr_ste_htbl *dr_rule_rehash(struct mlx5dr_rule *rule,
rule              478 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_domain *dmn = rule->matcher->tbl->dmn;
rule              487 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	return dr_rule_rehash_htbl(rule, nic_rule, cur_htbl, ste_location,
rule              530 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static void dr_rule_remove_action_members(struct mlx5dr_rule *rule)
rule              535 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	list_for_each_entry_safe(action_mem, tmp, &rule->rule_actions_list, list) {
rule              542 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static int dr_rule_add_action_members(struct mlx5dr_rule *rule,
rule              556 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		list_add_tail(&action_mem->list, &rule->rule_actions_list);
rule              563 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_remove_action_members(rule);
rule              582 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static void dr_rule_clean_rule_members(struct mlx5dr_rule *rule,
rule              593 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		mlx5dr_ste_put(rule_mem->ste, rule->matcher, nic_rule->nic_matcher);
rule              652 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static int dr_rule_handle_action_stes(struct mlx5dr_rule *rule,
rule              662 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_matcher *matcher = rule->matcher;
rule              768 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c dr_rule_handle_ste_branch(struct mlx5dr_rule *rule,
rule              776 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_matcher *matcher = rule->matcher;
rule              825 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 			new_htbl = dr_rule_rehash(rule, nic_rule, cur_htbl,
rule              938 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static int dr_rule_destroy_rule_nic(struct mlx5dr_rule *rule,
rule              941 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_clean_rule_members(rule, nic_rule);
rule              945 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static int dr_rule_destroy_rule_fdb(struct mlx5dr_rule *rule)
rule              947 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_destroy_rule_nic(rule, &rule->rx);
rule              948 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_destroy_rule_nic(rule, &rule->tx);
rule              952 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c static int dr_rule_destroy_rule(struct mlx5dr_rule *rule)
rule              954 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_domain *dmn = rule->matcher->tbl->dmn;
rule              958 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		dr_rule_destroy_rule_nic(rule, &rule->rx);
rule              961 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		dr_rule_destroy_rule_nic(rule, &rule->tx);
rule              964 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		dr_rule_destroy_rule_fdb(rule);
rule              970 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_remove_action_members(rule);
rule              971 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	kfree(rule);
rule             1015 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c dr_rule_create_rule_nic(struct mlx5dr_rule *rule,
rule             1022 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_matcher *matcher = rule->matcher;
rule             1076 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		ste = dr_rule_handle_ste_branch(rule,
rule             1102 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	ret = dr_rule_handle_action_stes(rule, nic_rule, &send_ste_list,
rule             1124 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_clean_rule_members(rule, nic_rule);
rule             1137 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c dr_rule_create_rule_fdb(struct mlx5dr_rule *rule,
rule             1150 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	ret = dr_rule_create_rule_nic(rule, &rule->rx, param,
rule             1155 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	ret = dr_rule_create_rule_nic(rule, &rule->tx, &copy_param,
rule             1163 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_destroy_rule_nic(rule, &rule->rx);
rule             1175 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_rule *rule;
rule             1181 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	rule = kzalloc(sizeof(*rule), GFP_KERNEL);
rule             1182 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	if (!rule)
rule             1185 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	rule->matcher = matcher;
rule             1186 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	INIT_LIST_HEAD(&rule->rule_actions_list);
rule             1188 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	ret = dr_rule_add_action_members(rule, num_actions, actions);
rule             1194 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		rule->rx.nic_matcher = &matcher->rx;
rule             1195 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		ret = dr_rule_create_rule_nic(rule, &rule->rx, &param,
rule             1199 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		rule->tx.nic_matcher = &matcher->tx;
rule             1200 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		ret = dr_rule_create_rule_nic(rule, &rule->tx, &param,
rule             1204 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		rule->rx.nic_matcher = &matcher->rx;
rule             1205 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		rule->tx.nic_matcher = &matcher->tx;
rule             1206 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 		ret = dr_rule_create_rule_fdb(rule, &param,
rule             1217 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	return rule;
rule             1220 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	dr_rule_remove_action_members(rule);
rule             1222 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	kfree(rule);
rule             1232 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_rule *rule;
rule             1237 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	rule = dr_rule_create_rule(matcher, value, num_actions, actions);
rule             1238 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	if (!rule)
rule             1243 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	return rule;
rule             1246 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c int mlx5dr_rule_destroy(struct mlx5dr_rule *rule)
rule             1248 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_matcher *matcher = rule->matcher;
rule             1249 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	struct mlx5dr_table *tbl = rule->matcher->tbl;
rule             1254 drivers/net/ethernet/mellanox/mlx5/core/steering/dr_rule.c 	ret = dr_rule_destroy_rule(rule);
rule              223 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	struct mlx5dr_rule *rule;
rule              422 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	rule = mlx5dr_rule_create(group->fs_dr_matcher.dr_matcher,
rule              426 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	if (!rule) {
rule              432 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	fte->fs_dr_rule.dr_rule = rule;
rule              541 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	struct mlx5_fs_dr_rule *rule = &fte->fs_dr_rule;
rule              548 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	err = mlx5dr_rule_destroy(rule->dr_rule);
rule              552 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	for (i = 0; i < rule->num_actions; i++)
rule              553 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 		if (!IS_ERR_OR_NULL(rule->dr_actions[i]))
rule              554 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 			mlx5dr_action_destroy(rule->dr_actions[i]);
rule              556 drivers/net/ethernet/mellanox/mlx5/core/steering/fs_dr.c 	kfree(rule->dr_actions);
rule               69 drivers/net/ethernet/mellanox/mlx5/core/steering/mlx5dr.h int mlx5dr_rule_destroy(struct mlx5dr_rule *rule);
rule              158 drivers/net/ethernet/mellanox/mlx5/core/steering/mlx5dr.h mlx5dr_rule_destroy(struct mlx5dr_rule *rule) { return 0; }
rule             1427 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	if (!flow_offload_has_one_action(&f->rule->action)) {
rule             1437 drivers/net/ethernet/mellanox/mlxsw/spectrum.c 	act = &f->rule->action.entries[0];
rule              742 drivers/net/ethernet/mellanox/mlxsw/spectrum.h 			       struct mlxsw_sp_acl_rule *rule);
rule              744 drivers/net/ethernet/mellanox/mlxsw/spectrum.h 			  struct mlxsw_sp_acl_rule *rule);
rule              746 drivers/net/ethernet/mellanox/mlxsw/spectrum.h 			   struct mlxsw_sp_acl_rule *rule);
rule              748 drivers/net/ethernet/mellanox/mlxsw/spectrum.h 				     struct mlxsw_sp_acl_rule *rule,
rule              755 drivers/net/ethernet/mellanox/mlxsw/spectrum.h mlxsw_sp_acl_rule_rulei(struct mlxsw_sp_acl_rule *rule);
rule              757 drivers/net/ethernet/mellanox/mlxsw/spectrum.h 				struct mlxsw_sp_acl_rule *rule,
rule              184 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c mlxsw_sp2_mr_tcam_rule_parse(struct mlxsw_sp_acl_rule *rule,
rule              190 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	rulei = mlxsw_sp_acl_rule_rulei(rule);
rule              215 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	struct mlxsw_sp_acl_rule *rule;
rule              223 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	rule = mlxsw_sp_acl_rule_create(mlxsw_sp, ruleset,
rule              226 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	if (IS_ERR(rule))
rule              227 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 		return PTR_ERR(rule);
rule              229 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	mlxsw_sp2_mr_tcam_rule_parse(rule, key, prio);
rule              230 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	err = mlxsw_sp_acl_rule_add(mlxsw_sp, rule);
rule              237 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	mlxsw_sp_acl_rule_destroy(mlxsw_sp, rule);
rule              248 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	struct mlxsw_sp_acl_rule *rule;
rule              254 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	rule = mlxsw_sp_acl_rule_lookup(mlxsw_sp, ruleset,
rule              256 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	if (WARN_ON(!rule))
rule              259 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	mlxsw_sp_acl_rule_del(mlxsw_sp, rule);
rule              260 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	mlxsw_sp_acl_rule_destroy(mlxsw_sp, rule);
rule              272 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	struct mlxsw_sp_acl_rule *rule;
rule              278 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	rule = mlxsw_sp_acl_rule_lookup(mlxsw_sp, ruleset,
rule              280 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	if (WARN_ON(!rule))
rule              283 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c 	return mlxsw_sp_acl_rule_action_replace(mlxsw_sp, rule, afa_block);
rule              640 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_rule *rule;
rule              644 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rule = kzalloc(sizeof(*rule) + ops->rule_priv_size,
rule              646 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	if (!rule) {
rule              650 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rule->cookie = cookie;
rule              651 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rule->ruleset = ruleset;
rule              653 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rule->rulei = mlxsw_sp_acl_rulei_create(mlxsw_sp->acl, afa_block);
rule              654 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	if (IS_ERR(rule->rulei)) {
rule              655 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 		err = PTR_ERR(rule->rulei);
rule              659 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	return rule;
rule              662 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	kfree(rule);
rule              669 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 			       struct mlxsw_sp_acl_rule *rule)
rule              671 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_ruleset *ruleset = rule->ruleset;
rule              673 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	mlxsw_sp_acl_rulei_destroy(rule->rulei);
rule              674 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	kfree(rule);
rule              679 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 			  struct mlxsw_sp_acl_rule *rule)
rule              681 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_ruleset *ruleset = rule->ruleset;
rule              686 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	err = ops->rule_add(mlxsw_sp, ruleset->priv, rule->priv, rule->rulei);
rule              690 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	err = rhashtable_insert_fast(&ruleset->rule_ht, &rule->ht_node,
rule              707 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	list_add_tail(&rule->list, &mlxsw_sp->acl->rules);
rule              710 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	block->egress_blocker_rule_count += rule->rulei->egress_bind_blocker;
rule              714 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rhashtable_remove_fast(&ruleset->rule_ht, &rule->ht_node,
rule              717 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	ops->rule_del(mlxsw_sp, rule->priv);
rule              722 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 			   struct mlxsw_sp_acl_rule *rule)
rule              724 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_ruleset *ruleset = rule->ruleset;
rule              728 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	block->egress_blocker_rule_count -= rule->rulei->egress_bind_blocker;
rule              731 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	list_del(&rule->list);
rule              737 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rhashtable_remove_fast(&ruleset->rule_ht, &rule->ht_node,
rule              739 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	ops->rule_del(mlxsw_sp, rule->priv);
rule              743 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 				     struct mlxsw_sp_acl_rule *rule,
rule              746 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_ruleset *ruleset = rule->ruleset;
rule              750 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rulei = mlxsw_sp_acl_rule_rulei(rule);
rule              753 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	return ops->rule_action_replace(mlxsw_sp, rule->priv, rule->rulei);
rule              766 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c mlxsw_sp_acl_rule_rulei(struct mlxsw_sp_acl_rule *rule)
rule              768 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	return rule->rulei;
rule              772 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 					     struct mlxsw_sp_acl_rule *rule)
rule              774 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_ruleset *ruleset = rule->ruleset;
rule              779 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	err = ops->rule_activity_get(mlxsw_sp, rule->priv, &active);
rule              783 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 		rule->last_used = jiffies;
rule              789 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	struct mlxsw_sp_acl_rule *rule;
rule              793 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	list_for_each_entry(rule, &acl->rules, list) {
rule              795 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 							rule);
rule              829 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 				struct mlxsw_sp_acl_rule *rule,
rule              838 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rulei = mlxsw_sp_acl_rule_rulei(rule);
rule              844 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	*packets = current_packets - rule->last_packets;
rule              845 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	*bytes = current_bytes - rule->last_bytes;
rule              846 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	*last_use = rule->last_used;
rule              848 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rule->last_bytes = current_bytes;
rule              849 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl.c 	rule->last_packets = current_packets;
rule             1642 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_flower_rule *rule = rule_priv;
rule             1645 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 					    &rule->ventry, rulei);
rule             1651 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_flower_rule *rule = rule_priv;
rule             1653 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	mlxsw_sp_acl_tcam_ventry_del(mlxsw_sp, &rule->ventry);
rule             1668 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_flower_rule *rule = rule_priv;
rule             1670 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	return mlxsw_sp_acl_tcam_ventry_activity_get(mlxsw_sp, &rule->ventry,
rule             1774 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_mr_rule *rule = rule_priv;
rule             1777 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 					   &rule->ventry, rulei);
rule             1783 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_mr_rule *rule = rule_priv;
rule             1785 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	mlxsw_sp_acl_tcam_ventry_del(mlxsw_sp, &rule->ventry);
rule             1793 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_mr_rule *rule = rule_priv;
rule             1795 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	return mlxsw_sp_acl_tcam_ventry_action_replace(mlxsw_sp, &rule->ventry,
rule             1803 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	struct mlxsw_sp_acl_tcam_mr_rule *rule = rule_priv;
rule             1805 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c 	return mlxsw_sp_acl_tcam_ventry_activity_get(mlxsw_sp, &rule->ventry,
rule              146 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              151 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_META))
rule              154 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	flow_rule_match_meta(rule, &match);
rule              190 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	flow_rule_match_ipv4_addrs(f->rule, &match);
rule              205 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	flow_rule_match_ipv6_addrs(f->rule, &match);
rule              238 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	const struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              241 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS))
rule              250 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	flow_rule_match_ports(rule, &match);
rule              265 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	const struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              268 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_TCP))
rule              277 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	flow_rule_match_tcp(rule, &match);
rule              296 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	const struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              299 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IP))
rule              308 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	flow_rule_match_ip(rule, &match);
rule              329 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              330 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              359 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule              362 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		flow_rule_match_control(rule, &match);
rule              366 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              369 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		flow_rule_match_basic(rule, &match);
rule              388 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule              391 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		flow_rule_match_eth_addrs(rule, &match);
rule              410 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule              413 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		flow_rule_match_vlan(rule, &match);
rule              454 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 					     &f->rule->action,
rule              464 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	struct mlxsw_sp_acl_rule *rule;
rule              473 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	rule = mlxsw_sp_acl_rule_create(mlxsw_sp, ruleset, f->cookie, NULL,
rule              475 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (IS_ERR(rule)) {
rule              476 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		err = PTR_ERR(rule);
rule              480 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	rulei = mlxsw_sp_acl_rule_rulei(rule);
rule              489 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	err = mlxsw_sp_acl_rule_add(mlxsw_sp, rule);
rule              499 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	mlxsw_sp_acl_rule_destroy(mlxsw_sp, rule);
rule              510 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	struct mlxsw_sp_acl_rule *rule;
rule              518 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	rule = mlxsw_sp_acl_rule_lookup(mlxsw_sp, ruleset, f->cookie);
rule              519 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (rule) {
rule              520 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		mlxsw_sp_acl_rule_del(mlxsw_sp, rule);
rule              521 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 		mlxsw_sp_acl_rule_destroy(mlxsw_sp, rule);
rule              532 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	struct mlxsw_sp_acl_rule *rule;
rule              544 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	rule = mlxsw_sp_acl_rule_lookup(mlxsw_sp, ruleset, f->cookie);
rule              545 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	if (!rule)
rule              548 drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c 	err = mlxsw_sp_acl_rule_get_stats(mlxsw_sp, rule, &packets, &bytes,
rule             6190 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 	struct fib_rule *rule;
rule             6201 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 	rule = fr_info->rule;
rule             6204 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 	if (rule->iifindex == info->net->loopback_dev->ifindex)
rule             6209 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 		if (!fib4_rule_default(rule) && !rule->l3mdev)
rule             6213 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 		if (!fib6_rule_default(rule) && !rule->l3mdev)
rule             6217 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 		if (!ipmr_rule_default(rule) && !rule->l3mdev)
rule             6221 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c 		if (!ip6mr_rule_default(rule) && !rule->l3mdev)
rule              577 drivers/net/ethernet/mscc/ocelot_ace.c static void is2_entry_get(struct ocelot_ace_rule *rule, int ix)
rule              579 drivers/net/ethernet/mscc/ocelot_ace.c 	struct ocelot *op = rule->port->ocelot;
rule              591 drivers/net/ethernet/mscc/ocelot_ace.c 	rule->stats.pkts = cnt;
rule              595 drivers/net/ethernet/mscc/ocelot_ace.c 				struct ocelot_ace_rule *rule)
rule              603 drivers/net/ethernet/mscc/ocelot_ace.c 		list_add(&rule->list, &block->rules);
rule              609 drivers/net/ethernet/mscc/ocelot_ace.c 		if (rule->prio < tmp->prio)
rule              612 drivers/net/ethernet/mscc/ocelot_ace.c 	list_add(&rule->list, pos->prev);
rule              616 drivers/net/ethernet/mscc/ocelot_ace.c 					struct ocelot_ace_rule *rule)
rule              623 drivers/net/ethernet/mscc/ocelot_ace.c 		if (rule->id == tmp->id)
rule              644 drivers/net/ethernet/mscc/ocelot_ace.c int ocelot_ace_rule_offload_add(struct ocelot_ace_rule *rule)
rule              650 drivers/net/ethernet/mscc/ocelot_ace.c 	ocelot_ace_rule_add(acl_block, rule);
rule              653 drivers/net/ethernet/mscc/ocelot_ace.c 	index = ocelot_ace_rule_get_index_id(acl_block, rule);
rule              658 drivers/net/ethernet/mscc/ocelot_ace.c 		is2_entry_set(rule->port->ocelot, i, ace);
rule              662 drivers/net/ethernet/mscc/ocelot_ace.c 	is2_entry_set(rule->port->ocelot, index, rule);
rule              667 drivers/net/ethernet/mscc/ocelot_ace.c 				struct ocelot_ace_rule *rule)
rule              674 drivers/net/ethernet/mscc/ocelot_ace.c 		if (tmp->id == rule->id) {
rule              683 drivers/net/ethernet/mscc/ocelot_ace.c int ocelot_ace_rule_offload_del(struct ocelot_ace_rule *rule)
rule              692 drivers/net/ethernet/mscc/ocelot_ace.c 	index = ocelot_ace_rule_get_index_id(acl_block, rule);
rule              695 drivers/net/ethernet/mscc/ocelot_ace.c 	ocelot_ace_rule_del(acl_block, rule);
rule              700 drivers/net/ethernet/mscc/ocelot_ace.c 		is2_entry_set(rule->port->ocelot, i, ace);
rule              704 drivers/net/ethernet/mscc/ocelot_ace.c 	is2_entry_set(rule->port->ocelot, acl_block->count, &del_ace);
rule              709 drivers/net/ethernet/mscc/ocelot_ace.c int ocelot_ace_rule_stats_update(struct ocelot_ace_rule *rule)
rule              714 drivers/net/ethernet/mscc/ocelot_ace.c 	index = ocelot_ace_rule_get_index_id(acl_block, rule);
rule              715 drivers/net/ethernet/mscc/ocelot_ace.c 	is2_entry_get(rule, index);
rule              720 drivers/net/ethernet/mscc/ocelot_ace.c 	is2_entry_set(rule->port->ocelot, index, tmp);
rule              220 drivers/net/ethernet/mscc/ocelot_ace.h int ocelot_ace_rule_offload_add(struct ocelot_ace_rule *rule);
rule              221 drivers/net/ethernet/mscc/ocelot_ace.h int ocelot_ace_rule_offload_del(struct ocelot_ace_rule *rule);
rule              222 drivers/net/ethernet/mscc/ocelot_ace.h int ocelot_ace_rule_stats_update(struct ocelot_ace_rule *rule);
rule               17 drivers/net/ethernet/mscc/ocelot_flower.c 				      struct ocelot_ace_rule *rule)
rule               22 drivers/net/ethernet/mscc/ocelot_flower.c 	if (f->rule->action.num_entries != 1)
rule               25 drivers/net/ethernet/mscc/ocelot_flower.c 	flow_action_for_each(i, a, &f->rule->action) {
rule               28 drivers/net/ethernet/mscc/ocelot_flower.c 			rule->action = OCELOT_ACL_ACTION_DROP;
rule               31 drivers/net/ethernet/mscc/ocelot_flower.c 			rule->action = OCELOT_ACL_ACTION_TRAP;
rule               44 drivers/net/ethernet/mscc/ocelot_flower.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule               45 drivers/net/ethernet/mscc/ocelot_flower.c 	struct flow_dissector *dissector = rule->match.dissector;
rule               58 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule               61 drivers/net/ethernet/mscc/ocelot_flower.c 		flow_rule_match_control(rule, &match);
rule               64 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule               86 drivers/net/ethernet/mscc/ocelot_flower.c 		flow_rule_match_eth_addrs(rule, &match);
rule               99 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              102 drivers/net/ethernet/mscc/ocelot_flower.c 		flow_rule_match_basic(rule, &match);
rule              119 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS) &&
rule              124 drivers/net/ethernet/mscc/ocelot_flower.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule              138 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS) &&
rule              143 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule              146 drivers/net/ethernet/mscc/ocelot_flower.c 		flow_rule_match_ports(rule, &match);
rule              153 drivers/net/ethernet/mscc/ocelot_flower.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule              156 drivers/net/ethernet/mscc/ocelot_flower.c 		flow_rule_match_vlan(rule, &match);
rule              174 drivers/net/ethernet/mscc/ocelot_flower.c 	struct ocelot_ace_rule *rule;
rule              176 drivers/net/ethernet/mscc/ocelot_flower.c 	rule = kzalloc(sizeof(*rule), GFP_KERNEL);
rule              177 drivers/net/ethernet/mscc/ocelot_flower.c 	if (!rule)
rule              180 drivers/net/ethernet/mscc/ocelot_flower.c 	rule->port = block->port;
rule              181 drivers/net/ethernet/mscc/ocelot_flower.c 	rule->chip_port = block->port->chip_port;
rule              182 drivers/net/ethernet/mscc/ocelot_flower.c 	return rule;
rule              188 drivers/net/ethernet/mscc/ocelot_flower.c 	struct ocelot_ace_rule *rule;
rule              191 drivers/net/ethernet/mscc/ocelot_flower.c 	rule = ocelot_ace_rule_create(f, port_block);
rule              192 drivers/net/ethernet/mscc/ocelot_flower.c 	if (!rule)
rule              195 drivers/net/ethernet/mscc/ocelot_flower.c 	ret = ocelot_flower_parse(f, rule);
rule              197 drivers/net/ethernet/mscc/ocelot_flower.c 		kfree(rule);
rule              201 drivers/net/ethernet/mscc/ocelot_flower.c 	ret = ocelot_ace_rule_offload_add(rule);
rule              212 drivers/net/ethernet/mscc/ocelot_flower.c 	struct ocelot_ace_rule rule;
rule              215 drivers/net/ethernet/mscc/ocelot_flower.c 	rule.prio = f->common.prio;
rule              216 drivers/net/ethernet/mscc/ocelot_flower.c 	rule.port = port_block->port;
rule              217 drivers/net/ethernet/mscc/ocelot_flower.c 	rule.id = f->cookie;
rule              219 drivers/net/ethernet/mscc/ocelot_flower.c 	ret = ocelot_ace_rule_offload_del(&rule);
rule              230 drivers/net/ethernet/mscc/ocelot_flower.c 	struct ocelot_ace_rule rule;
rule              233 drivers/net/ethernet/mscc/ocelot_flower.c 	rule.prio = f->common.prio;
rule              234 drivers/net/ethernet/mscc/ocelot_flower.c 	rule.port = port_block->port;
rule              235 drivers/net/ethernet/mscc/ocelot_flower.c 	rule.id = f->cookie;
rule              236 drivers/net/ethernet/mscc/ocelot_flower.c 	ret = ocelot_ace_rule_stats_update(&rule);
rule              240 drivers/net/ethernet/mscc/ocelot_flower.c 	flow_stats_update(&f->stats, 0x0, rule.stats.pkts, 0x0);
rule               31 drivers/net/ethernet/mscc/ocelot_tc.c 		if (!flow_offload_has_one_action(&f->rule->action)) {
rule               43 drivers/net/ethernet/mscc/ocelot_tc.c 		action = &f->rule->action.entries[0];
rule              266 drivers/net/ethernet/netronome/nfp/flower/action.c 	struct flow_action_entry *act = flow->rule->action.entries;
rule              267 drivers/net/ethernet/netronome/nfp/flower/action.c 	int num_act = flow->rule->action.num_entries;
rule              766 drivers/net/ethernet/netronome/nfp/flower/action.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              770 drivers/net/ethernet/netronome/nfp/flower/action.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              773 drivers/net/ethernet/netronome/nfp/flower/action.c 		flow_rule_match_basic(rule, &match);
rule             1189 drivers/net/ethernet/netronome/nfp/flower/action.c 	flow_action_for_each(i, act, &flow->rule->action) {
rule             1190 drivers/net/ethernet/netronome/nfp/flower/action.c 		if (nfp_fl_check_mangle_start(&flow->rule->action, i))
rule             1199 drivers/net/ethernet/netronome/nfp/flower/action.c 		if (nfp_fl_check_mangle_end(&flow->rule->action, i))
rule               15 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule               28 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule               31 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_vlan(rule, &match);
rule               83 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule               88 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) {
rule               91 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_eth_addrs(rule, &match);
rule               99 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_MPLS)) {
rule              103 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_mpls(rule, &match);
rule              114 drivers/net/ethernet/netronome/nfp/flower/match.c 	} else if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              121 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_basic(rule, &match);
rule              135 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              140 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule              143 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_ports(rule, &match);
rule              156 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              158 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule              161 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_basic(rule, &match);
rule              166 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IP)) {
rule              169 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_ip(rule, &match);
rule              176 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_TCP)) {
rule              180 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_tcp(rule, &match);
rule              210 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule              213 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_control(rule, &match);
rule              230 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              236 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS)) {
rule              237 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule              252 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              257 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS)) {
rule              260 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule              276 drivers/net/ethernet/netronome/nfp/flower/match.c 	flow_rule_match_enc_opts(flow->rule, &match);
rule              288 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              290 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS)) {
rule              293 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_enc_ipv4_addrs(rule, &match);
rule              306 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              308 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_IP)) {
rule              311 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_enc_ip(rule, &match);
rule              324 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              333 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule              336 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_enc_keyid(rule, &match);
rule              353 drivers/net/ethernet/netronome/nfp/flower/match.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              358 drivers/net/ethernet/netronome/nfp/flower/match.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_KEYID)) {
rule              362 drivers/net/ethernet/netronome/nfp/flower/match.c 		flow_rule_match_enc_keyid(rule, &match);
rule              131 drivers/net/ethernet/netronome/nfp/flower/offload.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              133 drivers/net/ethernet/netronome/nfp/flower/offload.c 	return flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS) ||
rule              134 drivers/net/ethernet/netronome/nfp/flower/offload.c 	       flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS) ||
rule              135 drivers/net/ethernet/netronome/nfp/flower/offload.c 	       flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS) ||
rule              136 drivers/net/ethernet/netronome/nfp/flower/offload.c 	       flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ICMP);
rule              141 drivers/net/ethernet/netronome/nfp/flower/offload.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(f);
rule              143 drivers/net/ethernet/netronome/nfp/flower/offload.c 	return flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS) ||
rule              144 drivers/net/ethernet/netronome/nfp/flower/offload.c 	       flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ICMP);
rule              224 drivers/net/ethernet/netronome/nfp/flower/offload.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(flow);
rule              225 drivers/net/ethernet/netronome/nfp/flower/offload.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              251 drivers/net/ethernet/netronome/nfp/flower/offload.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS) ||
rule              252 drivers/net/ethernet/netronome/nfp/flower/offload.c 	    flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_MPLS)) {
rule              257 drivers/net/ethernet/netronome/nfp/flower/offload.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) {
rule              260 drivers/net/ethernet/netronome/nfp/flower/offload.c 		flow_rule_match_vlan(rule, &vlan);
rule              268 drivers/net/ethernet/netronome/nfp/flower/offload.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_CONTROL)) {
rule              274 drivers/net/ethernet/netronome/nfp/flower/offload.c 		flow_rule_match_enc_control(rule, &enc_ctl);
rule              286 drivers/net/ethernet/netronome/nfp/flower/offload.c 		flow_rule_match_enc_ipv4_addrs(rule, &ipv4_addrs);
rule              292 drivers/net/ethernet/netronome/nfp/flower/offload.c 		if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_OPTS))
rule              293 drivers/net/ethernet/netronome/nfp/flower/offload.c 			flow_rule_match_enc_opts(rule, &enc_op);
rule              296 drivers/net/ethernet/netronome/nfp/flower/offload.c 		if (!flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ENC_PORTS)) {
rule              315 drivers/net/ethernet/netronome/nfp/flower/offload.c 			flow_rule_match_enc_ports(rule, &enc_ports);
rule              340 drivers/net/ethernet/netronome/nfp/flower/offload.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC))
rule              341 drivers/net/ethernet/netronome/nfp/flower/offload.c 		flow_rule_match_basic(rule, &basic);
rule              403 drivers/net/ethernet/netronome/nfp/flower/offload.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_TCP)) {
rule              407 drivers/net/ethernet/netronome/nfp/flower/offload.c 		flow_rule_match_tcp(rule, &tcp);
rule              453 drivers/net/ethernet/netronome/nfp/flower/offload.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_CONTROL)) {
rule              456 drivers/net/ethernet/netronome/nfp/flower/offload.c 		flow_rule_match_control(rule, &ctl);
rule               65 drivers/net/ethernet/netronome/nfp/flower/qos_conf.c 	struct flow_action_entry *action = &flow->rule->action.entries[0];
rule               91 drivers/net/ethernet/netronome/nfp/flower/qos_conf.c 	if (!flow_offload_has_one_action(&flow->rule->action)) {
rule             4172 drivers/net/ethernet/qlogic/qed/qed_debug.c 				     const struct dbg_idle_chk_rule *rule,
rule             4185 drivers/net/ethernet/qlogic/qed/qed_debug.c 		 s_dbg_arrays[BIN_BUF_DBG_IDLE_CHK_REGS].ptr)[rule->reg_offset];
rule             4187 drivers/net/ethernet/qlogic/qed/qed_debug.c 	info_regs = &regs[rule->num_cond_regs].info_reg;
rule             4194 drivers/net/ethernet/qlogic/qed/qed_debug.c 		hdr->severity = rule->severity;
rule             4195 drivers/net/ethernet/qlogic/qed/qed_debug.c 		hdr->num_dumped_cond_regs = rule->num_cond_regs;
rule             4201 drivers/net/ethernet/qlogic/qed/qed_debug.c 	for (reg_id = 0; reg_id < rule->num_cond_regs; reg_id++) {
rule             4231 drivers/net/ethernet/qlogic/qed/qed_debug.c 	for (reg_id = 0; reg_id < rule->num_info_regs; reg_id++) {
rule             4283 drivers/net/ethernet/qlogic/qed/qed_debug.c 				  rule->num_cond_regs + reg_id);
rule             4316 drivers/net/ethernet/qlogic/qed/qed_debug.c 		const struct dbg_idle_chk_rule *rule;
rule             4322 drivers/net/ethernet/qlogic/qed/qed_debug.c 		rule = &input_rules[i];
rule             4325 drivers/net/ethernet/qlogic/qed/qed_debug.c 			[rule->reg_offset];
rule             4328 drivers/net/ethernet/qlogic/qed/qed_debug.c 			     [rule->imm_offset];
rule             4334 drivers/net/ethernet/qlogic/qed/qed_debug.c 		for (reg_id = 0; reg_id < rule->num_cond_regs && check_rule;
rule             4359 drivers/net/ethernet/qlogic/qed/qed_debug.c 							  rule->rule_id,
rule             4360 drivers/net/ethernet/qlogic/qed/qed_debug.c 							  rule,
rule             4376 drivers/net/ethernet/qlogic/qed/qed_debug.c 			for (reg_id = 0; reg_id < rule->num_cond_regs;
rule             4422 drivers/net/ethernet/qlogic/qed/qed_debug.c 			if ((*cond_arr[rule->cond_id]) (cond_reg_values,
rule             4428 drivers/net/ethernet/qlogic/qed/qed_debug.c 							rule->rule_id,
rule             4429 drivers/net/ethernet/qlogic/qed/qed_debug.c 							rule,
rule             1781 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_ports(struct qede_dev *edev, struct flow_rule *rule,
rule             1784 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_PORTS)) {
rule             1787 drivers/net/ethernet/qlogic/qede/qede_filter.c 		flow_rule_match_ports(rule, &match);
rule             1802 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_v6_common(struct qede_dev *edev, struct flow_rule *rule,
rule             1810 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS)) {
rule             1813 drivers/net/ethernet/qlogic/qede/qede_filter.c 		flow_rule_match_ipv6_addrs(rule, &match);
rule             1827 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (qede_flow_parse_ports(edev, rule, t))
rule             1834 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_v4_common(struct qede_dev *edev, struct flow_rule *rule,
rule             1837 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS)) {
rule             1840 drivers/net/ethernet/qlogic/qede/qede_filter.c 		flow_rule_match_ipv4_addrs(rule, &match);
rule             1851 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (qede_flow_parse_ports(edev, rule, t))
rule             1858 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_tcp_v6(struct qede_dev *edev, struct flow_rule *rule,
rule             1864 drivers/net/ethernet/qlogic/qede/qede_filter.c 	return qede_flow_parse_v6_common(edev, rule, tuple);
rule             1868 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_tcp_v4(struct qede_dev *edev, struct flow_rule *rule,
rule             1874 drivers/net/ethernet/qlogic/qede/qede_filter.c 	return qede_flow_parse_v4_common(edev, rule, tuple);
rule             1878 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_udp_v6(struct qede_dev *edev, struct flow_rule *rule,
rule             1884 drivers/net/ethernet/qlogic/qede/qede_filter.c 	return qede_flow_parse_v6_common(edev, rule, tuple);
rule             1888 drivers/net/ethernet/qlogic/qede/qede_filter.c qede_flow_parse_udp_v4(struct qede_dev *edev, struct flow_rule *rule,
rule             1894 drivers/net/ethernet/qlogic/qede/qede_filter.c 	return qede_flow_parse_v4_common(edev, rule, tuple);
rule             1899 drivers/net/ethernet/qlogic/qede/qede_filter.c 		     struct flow_rule *rule, struct qede_arfs_tuple *tuple)
rule             1901 drivers/net/ethernet/qlogic/qede/qede_filter.c 	struct flow_dissector *dissector = rule->match.dissector;
rule             1924 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) {
rule             1927 drivers/net/ethernet/qlogic/qede/qede_filter.c 		flow_rule_match_basic(rule, &match);
rule             1932 drivers/net/ethernet/qlogic/qede/qede_filter.c 		rc = qede_flow_parse_tcp_v4(edev, rule, tuple);
rule             1934 drivers/net/ethernet/qlogic/qede/qede_filter.c 		rc = qede_flow_parse_tcp_v6(edev, rule, tuple);
rule             1936 drivers/net/ethernet/qlogic/qede/qede_filter.c 		rc = qede_flow_parse_udp_v4(edev, rule, tuple);
rule             1938 drivers/net/ethernet/qlogic/qede/qede_filter.c 		rc = qede_flow_parse_udp_v6(edev, rule, tuple);
rule             1960 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (qede_parse_flow_attr(edev, proto, f->rule, &t))
rule             1973 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (qede_parse_actions(edev, &f->rule->action))
rule             2079 drivers/net/ethernet/qlogic/qede/qede_filter.c 	if (qede_parse_flow_attr(edev, proto, flow->rule, t)) {
rule             2085 drivers/net/ethernet/qlogic/qede/qede_filter.c 	err = qede_flow_spec_validate(edev, &flow->rule->action, t,
rule             2156 drivers/net/ethernet/rocker/rocker_main.c 	struct fib_rule *rule;
rule             2174 drivers/net/ethernet/rocker/rocker_main.c 		rule = fib_work->fr_info.rule;
rule             2175 drivers/net/ethernet/rocker/rocker_main.c 		if (!fib4_rule_default(rule))
rule             2177 drivers/net/ethernet/rocker/rocker_main.c 		fib_rule_put(rule);
rule             2233 drivers/net/ethernet/rocker/rocker_main.c 		fib_rule_get(fib_work->fr_info.rule);
rule             4753 drivers/net/ethernet/sfc/ef10.c 	struct efx_arfs_rule *rule = NULL;
rule             4770 drivers/net/ethernet/sfc/ef10.c 		rule = efx_rps_hash_find(efx, spec);
rule             4771 drivers/net/ethernet/sfc/ef10.c 		if (!rule)
rule             4774 drivers/net/ethernet/sfc/ef10.c 		arfs_id = rule->arfs_id;
rule             4775 drivers/net/ethernet/sfc/ef10.c 		ret = efx_rps_check_rule(rule, filter_idx, &force);
rule             4785 drivers/net/ethernet/sfc/ef10.c 	else if (rule)
rule             4786 drivers/net/ethernet/sfc/ef10.c 		rule->filter_id = EFX_ARFS_FILTER_ID_REMOVING;
rule             4802 drivers/net/ethernet/sfc/ef10.c 	if (ret && rule) {
rule             3136 drivers/net/ethernet/sfc/efx.c bool efx_rps_check_rule(struct efx_arfs_rule *rule, unsigned int filter_idx,
rule             3139 drivers/net/ethernet/sfc/efx.c 	if (rule->filter_id == EFX_ARFS_FILTER_ID_PENDING) {
rule             3143 drivers/net/ethernet/sfc/efx.c 	if (rule->filter_id == EFX_ARFS_FILTER_ID_ERROR) {
rule             3147 drivers/net/ethernet/sfc/efx.c 		rule->filter_id = EFX_ARFS_FILTER_ID_REMOVING;
rule             3150 drivers/net/ethernet/sfc/efx.c 	} else if (WARN_ON(rule->filter_id != filter_idx)) { /* can't happen */
rule             3177 drivers/net/ethernet/sfc/efx.c 	struct efx_arfs_rule *rule;
rule             3185 drivers/net/ethernet/sfc/efx.c 		rule = container_of(node, struct efx_arfs_rule, node);
rule             3186 drivers/net/ethernet/sfc/efx.c 		if (efx_filter_spec_equal(spec, &rule->spec))
rule             3187 drivers/net/ethernet/sfc/efx.c 			return rule;
rule             3196 drivers/net/ethernet/sfc/efx.c 	struct efx_arfs_rule *rule;
rule             3204 drivers/net/ethernet/sfc/efx.c 		rule = container_of(node, struct efx_arfs_rule, node);
rule             3205 drivers/net/ethernet/sfc/efx.c 		if (efx_filter_spec_equal(spec, &rule->spec)) {
rule             3207 drivers/net/ethernet/sfc/efx.c 			return rule;
rule             3210 drivers/net/ethernet/sfc/efx.c 	rule = kmalloc(sizeof(*rule), GFP_ATOMIC);
rule             3212 drivers/net/ethernet/sfc/efx.c 	if (rule) {
rule             3213 drivers/net/ethernet/sfc/efx.c 		memcpy(&rule->spec, spec, sizeof(rule->spec));
rule             3214 drivers/net/ethernet/sfc/efx.c 		hlist_add_head(&rule->node, head);
rule             3216 drivers/net/ethernet/sfc/efx.c 	return rule;
rule             3221 drivers/net/ethernet/sfc/efx.c 	struct efx_arfs_rule *rule;
rule             3229 drivers/net/ethernet/sfc/efx.c 		rule = container_of(node, struct efx_arfs_rule, node);
rule             3230 drivers/net/ethernet/sfc/efx.c 		if (efx_filter_spec_equal(spec, &rule->spec)) {
rule             3237 drivers/net/ethernet/sfc/efx.c 			if (rule->filter_id != EFX_ARFS_FILTER_ID_REMOVING)
rule             3240 drivers/net/ethernet/sfc/efx.c 			kfree(rule);
rule              191 drivers/net/ethernet/sfc/efx.h bool efx_rps_check_rule(struct efx_arfs_rule *rule, unsigned int filter_idx,
rule              808 drivers/net/ethernet/sfc/ethtool.c 				      struct ethtool_rx_flow_spec *rule,
rule              811 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip4_spec *ip_entry = &rule->h_u.tcp_ip4_spec;
rule              812 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip4_spec *ip_mask = &rule->m_u.tcp_ip4_spec;
rule              813 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip4_spec *uip_entry = &rule->h_u.usr_ip4_spec;
rule              814 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip4_spec *uip_mask = &rule->m_u.usr_ip4_spec;
rule              815 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip6_spec *ip6_entry = &rule->h_u.tcp_ip6_spec;
rule              816 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip6_spec *ip6_mask = &rule->m_u.tcp_ip6_spec;
rule              817 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip6_spec *uip6_entry = &rule->h_u.usr_ip6_spec;
rule              818 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip6_spec *uip6_mask = &rule->m_u.usr_ip6_spec;
rule              819 drivers/net/ethernet/sfc/ethtool.c 	struct ethhdr *mac_entry = &rule->h_u.ether_spec;
rule              820 drivers/net/ethernet/sfc/ethtool.c 	struct ethhdr *mac_mask = &rule->m_u.ether_spec;
rule              825 drivers/net/ethernet/sfc/ethtool.c 					rule->location, &spec);
rule              830 drivers/net/ethernet/sfc/ethtool.c 		rule->ring_cookie = RX_CLS_FLOW_DISC;
rule              832 drivers/net/ethernet/sfc/ethtool.c 		rule->ring_cookie = spec.dmaq_id;
rule              843 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type = ((spec.ip_proto == IPPROTO_TCP) ?
rule              870 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type = ((spec.ip_proto == IPPROTO_TCP) ?
rule              894 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type = ETHER_FLOW;
rule              918 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type = IPV4_USER_FLOW;
rule              938 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type = IPV6_USER_FLOW;
rule              960 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type |= FLOW_EXT;
rule              961 drivers/net/ethernet/sfc/ethtool.c 		rule->h_ext.vlan_tci = spec.outer_vid;
rule              962 drivers/net/ethernet/sfc/ethtool.c 		rule->m_ext.vlan_tci = htons(0xfff);
rule              966 drivers/net/ethernet/sfc/ethtool.c 		rule->flow_type |= FLOW_RSS;
rule             1077 drivers/net/ethernet/sfc/ethtool.c 				      struct ethtool_rx_flow_spec *rule,
rule             1080 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip4_spec *ip_entry = &rule->h_u.tcp_ip4_spec;
rule             1081 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip4_spec *ip_mask = &rule->m_u.tcp_ip4_spec;
rule             1082 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip4_spec *uip_entry = &rule->h_u.usr_ip4_spec;
rule             1083 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip4_spec *uip_mask = &rule->m_u.usr_ip4_spec;
rule             1084 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip6_spec *ip6_entry = &rule->h_u.tcp_ip6_spec;
rule             1085 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_tcpip6_spec *ip6_mask = &rule->m_u.tcp_ip6_spec;
rule             1086 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip6_spec *uip6_entry = &rule->h_u.usr_ip6_spec;
rule             1087 drivers/net/ethernet/sfc/ethtool.c 	struct ethtool_usrip6_spec *uip6_mask = &rule->m_u.usr_ip6_spec;
rule             1088 drivers/net/ethernet/sfc/ethtool.c 	u32 flow_type = rule->flow_type & ~(FLOW_EXT | FLOW_RSS);
rule             1089 drivers/net/ethernet/sfc/ethtool.c 	struct ethhdr *mac_entry = &rule->h_u.ether_spec;
rule             1090 drivers/net/ethernet/sfc/ethtool.c 	struct ethhdr *mac_mask = &rule->m_u.ether_spec;
rule             1096 drivers/net/ethernet/sfc/ethtool.c 	if (rule->location != RX_CLS_LOC_ANY)
rule             1100 drivers/net/ethernet/sfc/ethtool.c 	if (rule->ring_cookie >= efx->n_rx_channels &&
rule             1101 drivers/net/ethernet/sfc/ethtool.c 	    rule->ring_cookie != RX_CLS_FLOW_DISC)
rule             1105 drivers/net/ethernet/sfc/ethtool.c 	if ((rule->flow_type & FLOW_EXT) &&
rule             1106 drivers/net/ethernet/sfc/ethtool.c 	    (rule->m_ext.vlan_etype || rule->m_ext.data[0] ||
rule             1107 drivers/net/ethernet/sfc/ethtool.c 	     rule->m_ext.data[1]))
rule             1112 drivers/net/ethernet/sfc/ethtool.c 	if (rule->flow_type & FLOW_RSS)
rule             1116 drivers/net/ethernet/sfc/ethtool.c 			   (rule->ring_cookie == RX_CLS_FLOW_DISC) ?
rule             1117 drivers/net/ethernet/sfc/ethtool.c 			   EFX_FILTER_RX_DMAQ_ID_DROP : rule->ring_cookie);
rule             1119 drivers/net/ethernet/sfc/ethtool.c 	if (rule->flow_type & FLOW_RSS)
rule             1273 drivers/net/ethernet/sfc/ethtool.c 	if ((rule->flow_type & FLOW_EXT) && rule->m_ext.vlan_tci) {
rule             1274 drivers/net/ethernet/sfc/ethtool.c 		if (rule->m_ext.vlan_tci != htons(0xfff))
rule             1277 drivers/net/ethernet/sfc/ethtool.c 		spec.outer_vid = rule->h_ext.vlan_tci;
rule             1284 drivers/net/ethernet/sfc/ethtool.c 	rule->location = rc;
rule              786 drivers/net/ethernet/sfc/falcon/ethtool.c 				      struct ethtool_rx_flow_spec *rule)
rule              788 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip4_spec *ip_entry = &rule->h_u.tcp_ip4_spec;
rule              789 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip4_spec *ip_mask = &rule->m_u.tcp_ip4_spec;
rule              790 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip4_spec *uip_entry = &rule->h_u.usr_ip4_spec;
rule              791 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip4_spec *uip_mask = &rule->m_u.usr_ip4_spec;
rule              792 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip6_spec *ip6_entry = &rule->h_u.tcp_ip6_spec;
rule              793 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip6_spec *ip6_mask = &rule->m_u.tcp_ip6_spec;
rule              794 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip6_spec *uip6_entry = &rule->h_u.usr_ip6_spec;
rule              795 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip6_spec *uip6_mask = &rule->m_u.usr_ip6_spec;
rule              796 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethhdr *mac_entry = &rule->h_u.ether_spec;
rule              797 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethhdr *mac_mask = &rule->m_u.ether_spec;
rule              802 drivers/net/ethernet/sfc/falcon/ethtool.c 					rule->location, &spec);
rule              807 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->ring_cookie = RX_CLS_FLOW_DISC;
rule              809 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->ring_cookie = spec.dmaq_id;
rule              820 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->flow_type = ((spec.ip_proto == IPPROTO_TCP) ?
rule              847 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->flow_type = ((spec.ip_proto == IPPROTO_TCP) ?
rule              871 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->flow_type = ETHER_FLOW;
rule              895 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->flow_type = IPV4_USER_FLOW;
rule              915 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->flow_type = IPV6_USER_FLOW;
rule              937 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->flow_type |= FLOW_EXT;
rule              938 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->h_ext.vlan_tci = spec.outer_vid;
rule              939 drivers/net/ethernet/sfc/falcon/ethtool.c 		rule->m_ext.vlan_tci = htons(0xfff);
rule             1022 drivers/net/ethernet/sfc/falcon/ethtool.c 				      struct ethtool_rx_flow_spec *rule)
rule             1024 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip4_spec *ip_entry = &rule->h_u.tcp_ip4_spec;
rule             1025 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip4_spec *ip_mask = &rule->m_u.tcp_ip4_spec;
rule             1026 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip4_spec *uip_entry = &rule->h_u.usr_ip4_spec;
rule             1027 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip4_spec *uip_mask = &rule->m_u.usr_ip4_spec;
rule             1028 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip6_spec *ip6_entry = &rule->h_u.tcp_ip6_spec;
rule             1029 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_tcpip6_spec *ip6_mask = &rule->m_u.tcp_ip6_spec;
rule             1030 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip6_spec *uip6_entry = &rule->h_u.usr_ip6_spec;
rule             1031 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethtool_usrip6_spec *uip6_mask = &rule->m_u.usr_ip6_spec;
rule             1032 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethhdr *mac_entry = &rule->h_u.ether_spec;
rule             1033 drivers/net/ethernet/sfc/falcon/ethtool.c 	struct ethhdr *mac_mask = &rule->m_u.ether_spec;
rule             1038 drivers/net/ethernet/sfc/falcon/ethtool.c 	if (rule->location != RX_CLS_LOC_ANY)
rule             1042 drivers/net/ethernet/sfc/falcon/ethtool.c 	if (rule->ring_cookie >= efx->n_rx_channels &&
rule             1043 drivers/net/ethernet/sfc/falcon/ethtool.c 	    rule->ring_cookie != RX_CLS_FLOW_DISC)
rule             1047 drivers/net/ethernet/sfc/falcon/ethtool.c 	if ((rule->flow_type & FLOW_EXT) &&
rule             1048 drivers/net/ethernet/sfc/falcon/ethtool.c 	    (rule->m_ext.vlan_etype || rule->m_ext.data[0] ||
rule             1049 drivers/net/ethernet/sfc/falcon/ethtool.c 	     rule->m_ext.data[1]))
rule             1054 drivers/net/ethernet/sfc/falcon/ethtool.c 			   (rule->ring_cookie == RX_CLS_FLOW_DISC) ?
rule             1055 drivers/net/ethernet/sfc/falcon/ethtool.c 			   EF4_FILTER_RX_DMAQ_ID_DROP : rule->ring_cookie);
rule             1057 drivers/net/ethernet/sfc/falcon/ethtool.c 	switch (rule->flow_type & ~FLOW_EXT) {
rule             1063 drivers/net/ethernet/sfc/falcon/ethtool.c 		spec.ip_proto = ((rule->flow_type & ~FLOW_EXT) == TCP_V4_FLOW ?
rule             1098 drivers/net/ethernet/sfc/falcon/ethtool.c 		spec.ip_proto = ((rule->flow_type & ~FLOW_EXT) == TCP_V6_FLOW ?
rule             1208 drivers/net/ethernet/sfc/falcon/ethtool.c 	if ((rule->flow_type & FLOW_EXT) && rule->m_ext.vlan_tci) {
rule             1209 drivers/net/ethernet/sfc/falcon/ethtool.c 		if (rule->m_ext.vlan_tci != htons(0xfff))
rule             1212 drivers/net/ethernet/sfc/falcon/ethtool.c 		spec.outer_vid = rule->h_ext.vlan_tci;
rule             1219 drivers/net/ethernet/sfc/falcon/ethtool.c 	rule->location = rc;
rule             2915 drivers/net/ethernet/sfc/farch.c 		struct efx_arfs_rule *rule = NULL;
rule             2925 drivers/net/ethernet/sfc/farch.c 			rule = efx_rps_hash_find(efx, &spec);
rule             2926 drivers/net/ethernet/sfc/farch.c 			if (!rule) {
rule             2930 drivers/net/ethernet/sfc/farch.c 				arfs_id = rule->arfs_id;
rule             2931 drivers/net/ethernet/sfc/farch.c 				if (!efx_rps_check_rule(rule, index, &force))
rule             2937 drivers/net/ethernet/sfc/farch.c 			if (rule)
rule             2938 drivers/net/ethernet/sfc/farch.c 				rule->filter_id = EFX_ARFS_FILTER_ID_REMOVING;
rule              835 drivers/net/ethernet/sfc/rx.c 	struct efx_arfs_rule *rule;
rule              844 drivers/net/ethernet/sfc/rx.c 		rule = efx_rps_hash_find(efx, &req->spec);
rule              851 drivers/net/ethernet/sfc/rx.c 		if (rule) {
rule              853 drivers/net/ethernet/sfc/rx.c 				rule->filter_id = EFX_ARFS_FILTER_ID_ERROR;
rule              855 drivers/net/ethernet/sfc/rx.c 				rule->filter_id = rc;
rule              856 drivers/net/ethernet/sfc/rx.c 			arfs_id = rule->arfs_id;
rule              895 drivers/net/ethernet/sfc/rx.c 	struct efx_arfs_rule *rule;
rule              954 drivers/net/ethernet/sfc/rx.c 		rule = efx_rps_hash_add(efx, &req->spec, &new);
rule              955 drivers/net/ethernet/sfc/rx.c 		if (!rule) {
rule              960 drivers/net/ethernet/sfc/rx.c 			rule->arfs_id = efx->rps_next_id++ % RPS_NO_FILTER;
rule              961 drivers/net/ethernet/sfc/rx.c 		rc = rule->arfs_id;
rule              963 drivers/net/ethernet/sfc/rx.c 		if (!new && rule->rxq_index == rxq_index &&
rule              964 drivers/net/ethernet/sfc/rx.c 		    rule->filter_id >= EFX_ARFS_FILTER_ID_PENDING)
rule              966 drivers/net/ethernet/sfc/rx.c 		rule->rxq_index = rxq_index;
rule              967 drivers/net/ethernet/sfc/rx.c 		rule->filter_id = EFX_ARFS_FILTER_ID_PENDING;
rule             1301 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	struct flow_rule *rule;
rule             1333 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule = kzalloc(struct_size(rule, action.entries, 1), GFP_KERNEL);
rule             1334 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	if (!rule) {
rule             1339 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->match.dissector = dissector;
rule             1340 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->match.key = (void *)&key;
rule             1341 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->match.mask = (void *)&mask;
rule             1348 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	cls->rule = rule;
rule             1350 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->action.entries[0].id = FLOW_ACTION_DROP;
rule             1351 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->action.num_entries = 1;
rule             1373 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	kfree(rule);
rule             1426 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	struct flow_rule *rule;
rule             1460 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule = kzalloc(struct_size(rule, action.entries, 1), GFP_KERNEL);
rule             1461 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	if (!rule) {
rule             1466 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->match.dissector = dissector;
rule             1467 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->match.key = (void *)&keys;
rule             1468 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->match.mask = (void *)&masks;
rule             1476 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	cls->rule = rule;
rule             1478 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->action.entries[0].id = FLOW_ACTION_DROP;
rule             1479 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	rule->action.num_entries = 1;
rule             1503 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 	kfree(rule);
rule              398 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              399 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              406 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	flow_rule_match_basic(rule, &match);
rule              415 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              416 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              426 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	flow_rule_match_ipv4_addrs(rule, &match);
rule              450 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              451 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_dissector *dissector = rule->match.dissector;
rule              473 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	flow_rule_match_ports(rule, &match);
rule              526 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	struct flow_rule *rule = flow_cls_offload_flow_rule(cls);
rule              535 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c 	ret = tc_parse_flow_actions(priv, &rule->action, entry);
rule              665 drivers/net/wireless/broadcom/brcm80211/brcmsmac/channel.c 	const struct ieee80211_reg_rule *rule;
rule              681 drivers/net/wireless/broadcom/brcm80211/brcmsmac/channel.c 				rule = freq_reg_info(wiphy,
rule              683 drivers/net/wireless/broadcom/brcm80211/brcmsmac/channel.c 				if (IS_ERR(rule))
rule              686 drivers/net/wireless/broadcom/brcm80211/brcmsmac/channel.c 				if (!(rule->flags & NL80211_RRF_NO_IR))
rule             1126 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 	struct ieee80211_reg_rule *rule;
rule             1187 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule = &regd->reg_rules[valid_rules - 1];
rule             1190 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 			rule->freq_range.start_freq_khz =
rule             1193 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule->freq_range.end_freq_khz = MHZ_TO_KHZ(center_freq + 10);
rule             1196 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule->power_rule.max_antenna_gain = DBI_TO_MBI(6);
rule             1197 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule->power_rule.max_eirp =
rule             1200 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule->flags = reg_rule_flags;
rule             1203 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule->flags |= NL80211_RRF_AUTO_BW;
rule             1204 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		rule->freq_range.max_bandwidth_khz = 0;
rule             1216 drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c 		reg_query_regdb_wmm(regd->alpha2, center_freq, rule);
rule              843 drivers/net/wireless/marvell/libertas/host.h 	struct host_wol_rule rule[MAX_WOL_RULES];
rule             3709 drivers/net/wireless/marvell/mwifiex/cfg80211.c 						      &coalesce_cfg.rule[i]);
rule             2259 drivers/net/wireless/marvell/mwifiex/fw.h 	struct coalesce_receive_filt_rule rule[0];
rule              472 drivers/net/wireless/marvell/mwifiex/ioctl.h 	struct mwifiex_coalesce_rule rule[MWIFIEX_COALESCE_MAX_RULES];
rule             1641 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 	struct coalesce_receive_filt_rule *rule;
rule             1648 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 	rule = coalesce_cfg->rule;
rule             1651 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		rule->header.type = cpu_to_le16(TLV_TYPE_COALESCE_RULE);
rule             1652 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		rule->max_coalescing_delay =
rule             1653 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 			cpu_to_le16(cfg->rule[cnt].max_coalescing_delay);
rule             1654 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		rule->pkt_type = cfg->rule[cnt].pkt_type;
rule             1655 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		rule->num_of_fields = cfg->rule[cnt].num_of_fields;
rule             1659 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		param = rule->params;
rule             1660 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		for (idx = 0; idx < cfg->rule[cnt].num_of_fields; idx++) {
rule             1661 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 			param->operation = cfg->rule[cnt].params[idx].operation;
rule             1663 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 					cfg->rule[cnt].params[idx].operand_len;
rule             1665 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 				cpu_to_le16(cfg->rule[cnt].params[idx].offset);
rule             1667 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 			       cfg->rule[cnt].params[idx].operand_byte_stream,
rule             1679 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		rule->header.len = cpu_to_le16(length + sizeof(u16) +
rule             1684 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 				       le16_to_cpu(rule->header.len) +
rule             1687 drivers/net/wireless/marvell/mwifiex/sta_cmd.c 		rule = (void *)((u8 *)rule->params + length);
rule             1025 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 	struct ieee80211_reg_rule *rule;
rule             1075 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 		rule = &regd->reg_rules[valid_rules - 1];
rule             1077 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 		rule->freq_range.end_freq_khz = MHZ_TO_KHZ(freq + 10);
rule             1086 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 		rule->freq_range.start_freq_khz = MHZ_TO_KHZ(freq - 10);
rule             1087 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 		rule->power_rule.max_eirp = DBM_TO_MBM(19);
rule             1090 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 			rule->flags = NL80211_RRF_NO_IR;
rule             1093 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 			rule->flags = NL80211_RRF_DFS;
rule             1095 drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c 		rule->freq_range.max_bandwidth_khz = bw;
rule             1009 drivers/net/wireless/quantenna/qtnfmac/commands.c 	struct ieee80211_reg_rule *rule;
rule             1174 drivers/net/wireless/quantenna/qtnfmac/commands.c 			rule = &mac->rd->reg_rules[rule_idx++];
rule             1175 drivers/net/wireless/quantenna/qtnfmac/commands.c 			qlink_utils_regrule_q2nl(rule, tlv_rule);
rule              290 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c void qlink_utils_regrule_q2nl(struct ieee80211_reg_rule *rule,
rule              293 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->freq_range.start_freq_khz = le32_to_cpu(tlv->start_freq_khz);
rule              294 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->freq_range.end_freq_khz = le32_to_cpu(tlv->end_freq_khz);
rule              295 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->freq_range.max_bandwidth_khz =
rule              297 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->power_rule.max_antenna_gain = le32_to_cpu(tlv->max_antenna_gain);
rule              298 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->power_rule.max_eirp = le32_to_cpu(tlv->max_eirp);
rule              299 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->dfs_cac_ms = le32_to_cpu(tlv->dfs_cac_ms);
rule              300 drivers/net/wireless/quantenna/qtnfmac/qlink_util.c 	rule->flags = qtnf_reg_rule_flags_parse(le32_to_cpu(tlv->flags));
rule               85 drivers/net/wireless/quantenna/qtnfmac/qlink_util.h void qlink_utils_regrule_q2nl(struct ieee80211_reg_rule *rule,
rule              212 drivers/net/wireless/ti/wl12xx/main.c 				.rule        = CONF_BCN_RULE_PASS_ON_APPEARANCE,
rule              216 drivers/net/wireless/ti/wl12xx/main.c 				.rule        = CONF_BCN_RULE_PASS_ON_CHANGE,
rule              220 drivers/net/wireless/ti/wl12xx/main.c 				.rule	     = CONF_BCN_RULE_PASS_ON_CHANGE,
rule              353 drivers/net/wireless/ti/wl18xx/main.c 				.rule        = CONF_BCN_RULE_PASS_ON_APPEARANCE,
rule              357 drivers/net/wireless/ti/wl18xx/main.c 				.rule        = CONF_BCN_RULE_PASS_ON_CHANGE,
rule              361 drivers/net/wireless/ti/wl18xx/main.c 				.rule	     = CONF_BCN_RULE_PASS_ON_CHANGE,
rule              402 drivers/net/wireless/ti/wlcore/acx.c 		ie_table->table[idx++] = r->rule;
rule              507 drivers/net/wireless/ti/wlcore/conf.h 	u8 rule;
rule               23 drivers/pnp/manager.c 					  unsigned char rule,
rule               32 drivers/pnp/manager.c 		res->flags |= rule & IORESOURCE_BITS;
rule               38 drivers/pnp/manager.c static int pnp_assign_port(struct pnp_dev *dev, struct pnp_port *rule, int idx)
rule               42 drivers/pnp/manager.c 	res = pnp_find_resource(dev, rule->flags, IORESOURCE_IO, idx);
rule               51 drivers/pnp/manager.c 	res->flags = rule->flags | IORESOURCE_AUTO;
rule               55 drivers/pnp/manager.c 	if (!rule->size) {
rule               61 drivers/pnp/manager.c 	res->start = rule->min;
rule               62 drivers/pnp/manager.c 	res->end = res->start + rule->size - 1;
rule               65 drivers/pnp/manager.c 		res->start += rule->align;
rule               66 drivers/pnp/manager.c 		res->end = res->start + rule->size - 1;
rule               67 drivers/pnp/manager.c 		if (res->start > rule->max || !rule->align) {
rule               70 drivers/pnp/manager.c 				(unsigned long long) rule->min,
rule               71 drivers/pnp/manager.c 				(unsigned long long) rule->max);
rule               81 drivers/pnp/manager.c static int pnp_assign_mem(struct pnp_dev *dev, struct pnp_mem *rule, int idx)
rule               85 drivers/pnp/manager.c 	res = pnp_find_resource(dev, rule->flags, IORESOURCE_MEM, idx);
rule               94 drivers/pnp/manager.c 	res->flags = rule->flags | IORESOURCE_AUTO;
rule               99 drivers/pnp/manager.c 	if (!(rule->flags & IORESOURCE_MEM_WRITEABLE))
rule              101 drivers/pnp/manager.c 	if (rule->flags & IORESOURCE_MEM_RANGELENGTH)
rule              103 drivers/pnp/manager.c 	if (rule->flags & IORESOURCE_MEM_SHADOWABLE)
rule              106 drivers/pnp/manager.c 	if (!rule->size) {
rule              112 drivers/pnp/manager.c 	res->start = rule->min;
rule              113 drivers/pnp/manager.c 	res->end = res->start + rule->size - 1;
rule              116 drivers/pnp/manager.c 		res->start += rule->align;
rule              117 drivers/pnp/manager.c 		res->end = res->start + rule->size - 1;
rule              118 drivers/pnp/manager.c 		if (res->start > rule->max || !rule->align) {
rule              121 drivers/pnp/manager.c 				(unsigned long long) rule->min,
rule              122 drivers/pnp/manager.c 				(unsigned long long) rule->max);
rule              132 drivers/pnp/manager.c static int pnp_assign_irq(struct pnp_dev *dev, struct pnp_irq *rule, int idx)
rule              142 drivers/pnp/manager.c 	res = pnp_find_resource(dev, rule->flags, IORESOURCE_IRQ, idx);
rule              150 drivers/pnp/manager.c 	res->flags = rule->flags | IORESOURCE_AUTO;
rule              154 drivers/pnp/manager.c 	if (bitmap_empty(rule->map.bits, PNP_IRQ_NR)) {
rule              161 drivers/pnp/manager.c 	res->start = find_next_bit(rule->map.bits, PNP_IRQ_NR, 16);
rule              167 drivers/pnp/manager.c 		if (test_bit(xtab[i], rule->map.bits)) {
rule              174 drivers/pnp/manager.c 	if (rule->flags & IORESOURCE_IRQ_OPTIONAL) {
rule              191 drivers/pnp/manager.c static int pnp_assign_dma(struct pnp_dev *dev, struct pnp_dma *rule, int idx)
rule              201 drivers/pnp/manager.c 	res = pnp_find_resource(dev, rule->flags, IORESOURCE_DMA, idx);
rule              209 drivers/pnp/manager.c 	res->flags = rule->flags | IORESOURCE_AUTO;
rule              213 drivers/pnp/manager.c 	if (!rule->map) {
rule              220 drivers/pnp/manager.c 		if (rule->map & (1 << xtab[i])) {
rule               83 drivers/s390/crypto/zcrypt_cex2c.c 		char rule[8];
rule             1290 drivers/s390/crypto/zcrypt_msgtype6.c 		char rule[8];
rule              127 drivers/s390/crypto/zcrypt_msgtype6.h 		char rule[8];
rule              154 drivers/s390/crypto/zcrypt_msgtype6.h 	memcpy(msg->rule, "RANDOM  ", 8);
rule              106 fs/ceph/locks.c 	req->r_args.filelock_change.rule = lock_type;
rule              152 fs/ceph/locks.c 	if (req->r_args.filelock_change.rule == CEPH_LOCK_FCNTL)
rule              154 fs/ceph/locks.c 	else if (req->r_args.filelock_change.rule == CEPH_LOCK_FLOCK)
rule              200 fs/ceph/locks.c 	intr_req->r_args.filelock_change.rule = lock_type;
rule              431 include/linux/ceph/ceph_fs.h 		__u8 rule; /* currently fcntl or flock */
rule              410 include/linux/ethtool.h 	struct flow_rule	*rule;
rule              421 include/linux/ethtool.h void ethtool_rx_flow_rule_destroy(struct ethtool_rx_flow_rule *rule);
rule             1451 include/linux/mlx4/device.h 		     struct mlx4_net_trans_rule *rule, u64 *reg_id);
rule               23 include/linux/mroute.h bool ipmr_rule_default(const struct fib_rule *rule);
rule               52 include/linux/mroute.h static inline bool ipmr_rule_default(const struct fib_rule *rule)
rule               68 include/linux/mroute6.h bool ip6mr_rule_default(const struct fib_rule *rule);
rule               70 include/linux/mroute6.h static inline bool ip6mr_rule_default(const struct fib_rule *rule)
rule             5588 include/net/cfg80211.h 			struct ieee80211_reg_rule *rule);
rule               52 include/net/fib_rules.h 	struct fib_rule		*rule;
rule              102 include/net/fib_rules.h 	struct fib_rule *rule;
rule              125 include/net/fib_rules.h static inline void fib_rule_get(struct fib_rule *rule)
rule              127 include/net/fib_rules.h 	refcount_inc(&rule->refcnt);
rule              130 include/net/fib_rules.h static inline void fib_rule_put(struct fib_rule *rule)
rule              132 include/net/fib_rules.h 	if (refcount_dec_and_test(&rule->refcnt))
rule              133 include/net/fib_rules.h 		kfree_rcu(rule, rcu);
rule              137 include/net/fib_rules.h static inline u32 fib_rule_get_table(struct fib_rule *rule,
rule              140 include/net/fib_rules.h 	return rule->l3mdev ? arg->table : rule->table;
rule              143 include/net/fib_rules.h static inline u32 fib_rule_get_table(struct fib_rule *rule,
rule              146 include/net/fib_rules.h 	return rule->table;
rule              182 include/net/fib_rules.h static inline bool fib_rule_requires_fldissect(struct fib_rule *rule)
rule              184 include/net/fib_rules.h 	return rule->iifindex != LOOPBACK_IFINDEX && (rule->ip_proto ||
rule              185 include/net/fib_rules.h 		fib_rule_port_range_set(&rule->sport_range) ||
rule              186 include/net/fib_rules.h 		fib_rule_port_range_set(&rule->dport_range));
rule              197 include/net/fib_rules.h bool fib_rule_matchall(const struct fib_rule *rule);
rule               73 include/net/flow_offload.h void flow_rule_match_meta(const struct flow_rule *rule,
rule               75 include/net/flow_offload.h void flow_rule_match_basic(const struct flow_rule *rule,
rule               77 include/net/flow_offload.h void flow_rule_match_control(const struct flow_rule *rule,
rule               79 include/net/flow_offload.h void flow_rule_match_eth_addrs(const struct flow_rule *rule,
rule               81 include/net/flow_offload.h void flow_rule_match_vlan(const struct flow_rule *rule,
rule               83 include/net/flow_offload.h void flow_rule_match_cvlan(const struct flow_rule *rule,
rule               85 include/net/flow_offload.h void flow_rule_match_ipv4_addrs(const struct flow_rule *rule,
rule               87 include/net/flow_offload.h void flow_rule_match_ipv6_addrs(const struct flow_rule *rule,
rule               89 include/net/flow_offload.h void flow_rule_match_ip(const struct flow_rule *rule,
rule               91 include/net/flow_offload.h void flow_rule_match_ports(const struct flow_rule *rule,
rule               93 include/net/flow_offload.h void flow_rule_match_tcp(const struct flow_rule *rule,
rule               95 include/net/flow_offload.h void flow_rule_match_icmp(const struct flow_rule *rule,
rule               97 include/net/flow_offload.h void flow_rule_match_mpls(const struct flow_rule *rule,
rule               99 include/net/flow_offload.h void flow_rule_match_enc_control(const struct flow_rule *rule,
rule              101 include/net/flow_offload.h void flow_rule_match_enc_ipv4_addrs(const struct flow_rule *rule,
rule              103 include/net/flow_offload.h void flow_rule_match_enc_ipv6_addrs(const struct flow_rule *rule,
rule              105 include/net/flow_offload.h void flow_rule_match_enc_ip(const struct flow_rule *rule,
rule              107 include/net/flow_offload.h void flow_rule_match_enc_ports(const struct flow_rule *rule,
rule              109 include/net/flow_offload.h void flow_rule_match_enc_keyid(const struct flow_rule *rule,
rule              111 include/net/flow_offload.h void flow_rule_match_enc_opts(const struct flow_rule *rule,
rule              250 include/net/flow_offload.h static inline bool flow_rule_match_key(const struct flow_rule *rule,
rule              253 include/net/flow_offload.h 	return dissector_uses_key(rule->match.dissector, key);
rule              364 include/net/flow_offload.h 	struct flow_rule *rule;
rule              372 include/net/flow_offload.h 	return flow_cmd->rule;
rule              510 include/net/ip6_fib.h bool fib6_rule_default(const struct fib_rule *rule);
rule              540 include/net/ip6_fib.h static inline bool fib6_rule_default(const struct fib_rule *rule)
rule              312 include/net/ip_fib.h static inline bool fib4_rule_default(const struct fib_rule *rule)
rule              378 include/net/ip_fib.h bool fib4_rule_default(const struct fib_rule *rule);
rule              858 include/net/netfilter/nf_tables.h static inline struct nft_expr *nft_expr_first(const struct nft_rule *rule)
rule              860 include/net/netfilter/nf_tables.h 	return (struct nft_expr *)&rule->data[0];
rule              868 include/net/netfilter/nf_tables.h static inline struct nft_expr *nft_expr_last(const struct nft_rule *rule)
rule              870 include/net/netfilter/nf_tables.h 	return (struct nft_expr *)&rule->data[rule->dlen];
rule              873 include/net/netfilter/nf_tables.h static inline struct nft_userdata *nft_userdata(const struct nft_rule *rule)
rule              875 include/net/netfilter/nf_tables.h 	return (void *)&rule->data[rule->dlen];
rule              883 include/net/netfilter/nf_tables.h #define nft_rule_for_each_expr(expr, last, rule) \
rule              884 include/net/netfilter/nf_tables.h 	for ((expr) = nft_expr_first(rule), (last) = nft_expr_last(rule); \
rule             1210 include/net/netfilter/nf_tables.h 	const struct nft_rule		*rule;
rule             1368 include/net/netfilter/nf_tables.h 	struct nft_rule			*rule;
rule             1374 include/net/netfilter/nf_tables.h 	(((struct nft_trans_rule *)trans->data)->rule)
rule               59 include/net/netfilter/nf_tables_offload.h 	struct flow_rule	*rule;
rule               65 include/net/netfilter/nf_tables_offload.h struct nft_flow_rule *nft_flow_rule_create(struct net *net, const struct nft_rule *rule);
rule              650 include/net/pkt_cls.h 	struct flow_rule *rule;
rule              225 include/sound/pcm.h 				      struct snd_pcm_hw_rule *rule);
rule               48 kernel/audit.h 	struct audit_krule	rule;
rule              280 kernel/audit.h extern int audit_make_tree(struct audit_krule *rule, char *pathname, u32 op);
rule              281 kernel/audit.h extern int audit_add_tree_rule(struct audit_krule *rule);
rule              282 kernel/audit.h extern int audit_remove_tree_rule(struct audit_krule *rule);
rule              311 kernel/audit.h #define audit_remove_tree_rule(rule) BUG()
rule              312 kernel/audit.h #define audit_add_tree_rule(rule) -EINVAL
rule              313 kernel/audit.h #define audit_make_tree(rule, str, op) -EINVAL
rule              317 kernel/audit.h #define audit_tree_path(rule) ""	/* never called */
rule               31 kernel/audit_fsnotify.c 	struct audit_krule *rule;
rule              101 kernel/audit_fsnotify.c 	audit_mark->rule = krule;
rule              117 kernel/audit_fsnotify.c 	struct audit_krule *rule = audit_mark->rule;
rule              127 kernel/audit_fsnotify.c 	audit_log_key(ab, rule->filterkey);
rule              128 kernel/audit_fsnotify.c 	audit_log_format(ab, " list=%d res=1", rule->listnr);
rule              147 kernel/audit_fsnotify.c 	struct audit_krule *rule = audit_mark->rule;
rule              148 kernel/audit_fsnotify.c 	struct audit_entry *entry = container_of(rule, struct audit_entry, rule);
rule              528 kernel/audit_tree.c 				       struct audit_krule *rule)
rule              538 kernel/audit_tree.c 	audit_log_untrustedstring(ab, rule->tree->pathname);
rule              539 kernel/audit_tree.c 	audit_log_key(ab, rule->filterkey);
rule              540 kernel/audit_tree.c 	audit_log_format(ab, " list=%d res=1", rule->listnr);
rule              546 kernel/audit_tree.c 	struct audit_krule *rule, *next;
rule              549 kernel/audit_tree.c 	list_for_each_entry_safe(rule, next, &tree->rules, rlist) {
rule              550 kernel/audit_tree.c 		entry = container_of(rule, struct audit_entry, rule);
rule              552 kernel/audit_tree.c 		list_del_init(&rule->rlist);
rule              553 kernel/audit_tree.c 		if (rule->tree) {
rule              555 kernel/audit_tree.c 			audit_tree_log_remove_rule(context, rule);
rule              556 kernel/audit_tree.c 			if (entry->rule.exe)
rule              557 kernel/audit_tree.c 				audit_remove_mark(entry->rule.exe);
rule              558 kernel/audit_tree.c 			rule->tree = NULL;
rule              560 kernel/audit_tree.c 			list_del(&entry->rule.list);
rule              649 kernel/audit_tree.c int audit_remove_tree_rule(struct audit_krule *rule)
rule              652 kernel/audit_tree.c 	tree = rule->tree;
rule              655 kernel/audit_tree.c 		list_del_init(&rule->rlist);
rule              661 kernel/audit_tree.c 			rule->tree = NULL;
rule              666 kernel/audit_tree.c 		rule->tree = NULL;
rule              728 kernel/audit_tree.c int audit_make_tree(struct audit_krule *rule, char *pathname, u32 op)
rule              732 kernel/audit_tree.c 	    rule->listnr != AUDIT_FILTER_EXIT ||
rule              734 kernel/audit_tree.c 	    rule->inode_f || rule->watch || rule->tree)
rule              736 kernel/audit_tree.c 	rule->tree = alloc_tree(pathname);
rule              737 kernel/audit_tree.c 	if (!rule->tree)
rule              802 kernel/audit_tree.c int audit_add_tree_rule(struct audit_krule *rule)
rule              804 kernel/audit_tree.c 	struct audit_tree *seed = rule->tree, *tree;
rule              809 kernel/audit_tree.c 	rule->tree = NULL;
rule              813 kernel/audit_tree.c 			rule->tree = tree;
rule              814 kernel/audit_tree.c 			list_add(&rule->rlist, &tree->rules);
rule              820 kernel/audit_tree.c 	list_add(&rule->rlist, &tree->rules);
rule              856 kernel/audit_tree.c 	if (list_empty(&rule->rlist)) {
rule              860 kernel/audit_tree.c 	rule->tree = tree;
rule              278 kernel/audit_watch.c 			oentry = container_of(r, struct audit_entry, rule);
rule              279 kernel/audit_watch.c 			list_del(&oentry->rule.rlist);
rule              282 kernel/audit_watch.c 			nentry = audit_dupe_rule(&oentry->rule);
rule              284 kernel/audit_watch.c 				list_del(&oentry->rule.list);
rule              294 kernel/audit_watch.c 				audit_put_watch(nentry->rule.watch);
rule              296 kernel/audit_watch.c 				nentry->rule.watch = nwatch;
rule              297 kernel/audit_watch.c 				list_add(&nentry->rule.rlist, &nwatch->rules);
rule              299 kernel/audit_watch.c 				list_replace(&oentry->rule.list,
rule              300 kernel/audit_watch.c 					     &nentry->rule.list);
rule              302 kernel/audit_watch.c 			if (oentry->rule.exe)
rule              303 kernel/audit_watch.c 				audit_remove_mark(oentry->rule.exe);
rule              332 kernel/audit_watch.c 			e = container_of(r, struct audit_entry, rule);
rule              334 kernel/audit_watch.c 			if (e->rule.exe)
rule              335 kernel/audit_watch.c 				audit_remove_mark(e->rule.exe);
rule               84 kernel/auditfilter.c 	struct audit_krule *erule = &e->rule;
rule              118 kernel/auditfilter.c 	entry->rule.fields = fields;
rule              210 kernel/auditfilter.c 	struct audit_field *arch = entry->rule.arch_f;
rule              216 kernel/auditfilter.c 					       entry->rule.mask) &&
rule              218 kernel/auditfilter.c 					       entry->rule.mask));
rule              224 kernel/auditfilter.c 					       entry->rule.mask));
rule              227 kernel/auditfilter.c 					       entry->rule.mask));
rule              235 kernel/auditfilter.c static inline struct audit_entry *audit_to_entry_common(struct audit_rule_data *rule)
rule              242 kernel/auditfilter.c 	listnr = rule->flags & ~AUDIT_FILTER_PREPEND;
rule              258 kernel/auditfilter.c 	if (unlikely(rule->action == AUDIT_POSSIBLE)) {
rule              262 kernel/auditfilter.c 	if (rule->action != AUDIT_NEVER && rule->action != AUDIT_ALWAYS)
rule              264 kernel/auditfilter.c 	if (rule->field_count > AUDIT_MAX_FIELDS)
rule              268 kernel/auditfilter.c 	entry = audit_init_entry(rule->field_count);
rule              272 kernel/auditfilter.c 	entry->rule.flags = rule->flags & AUDIT_FILTER_PREPEND;
rule              273 kernel/auditfilter.c 	entry->rule.listnr = listnr;
rule              274 kernel/auditfilter.c 	entry->rule.action = rule->action;
rule              275 kernel/auditfilter.c 	entry->rule.field_count = rule->field_count;
rule              278 kernel/auditfilter.c 		entry->rule.mask[i] = rule->mask[i];
rule              282 kernel/auditfilter.c 		__u32 *p = &entry->rule.mask[AUDIT_WORD(bit)];
rule              292 kernel/auditfilter.c 				entry->rule.mask[j] |= class[j];
rule              327 kernel/auditfilter.c 		if (entry->rule.listnr != AUDIT_FILTER_EXCLUDE &&
rule              328 kernel/auditfilter.c 		    entry->rule.listnr != AUDIT_FILTER_USER)
rule              332 kernel/auditfilter.c 		if (entry->rule.listnr != AUDIT_FILTER_FS)
rule              337 kernel/auditfilter.c 	switch (entry->rule.listnr) {
rule              458 kernel/auditfilter.c 		struct audit_field *f = &entry->rule.fields[i];
rule              474 kernel/auditfilter.c 			entry->rule.pflags |= AUDIT_LOGINUID_LEGACY;
rule              504 kernel/auditfilter.c 			entry->rule.arch_f = f;
rule              521 kernel/auditfilter.c 			entry->rule.buflen += f_val;
rule              540 kernel/auditfilter.c 			err = audit_to_watch(&entry->rule, str, f_val, f->op);
rule              545 kernel/auditfilter.c 			entry->rule.buflen += f_val;
rule              553 kernel/auditfilter.c 			err = audit_make_tree(&entry->rule, str, f->op);
rule              557 kernel/auditfilter.c 			entry->rule.buflen += f_val;
rule              561 kernel/auditfilter.c 			err = audit_to_inode(&entry->rule, f);
rule              566 kernel/auditfilter.c 			if (entry->rule.filterkey || f_val > AUDIT_MAX_KEY_LEN)
rule              573 kernel/auditfilter.c 			entry->rule.buflen += f_val;
rule              574 kernel/auditfilter.c 			entry->rule.filterkey = str;
rule              577 kernel/auditfilter.c 			if (entry->rule.exe || f_val > PATH_MAX)
rule              584 kernel/auditfilter.c 			audit_mark = audit_alloc_mark(&entry->rule, str, f_val);
rule              590 kernel/auditfilter.c 			entry->rule.buflen += f_val;
rule              591 kernel/auditfilter.c 			entry->rule.exe = audit_mark;
rule              599 kernel/auditfilter.c 	if (entry->rule.inode_f && entry->rule.inode_f->op == Audit_not_equal)
rule              600 kernel/auditfilter.c 		entry->rule.inode_f = NULL;
rule              606 kernel/auditfilter.c 	if (entry->rule.tree)
rule              607 kernel/auditfilter.c 		audit_put_tree(entry->rule.tree); /* that's the temporary one */
rule              608 kernel/auditfilter.c 	if (entry->rule.exe)
rule              609 kernel/auditfilter.c 		audit_remove_mark(entry->rule.exe); /* that's the template one */
rule              823 kernel/auditfilter.c 	new = &entry->rule;
rule              898 kernel/auditfilter.c 	if (entry->rule.inode_f) {
rule              899 kernel/auditfilter.c 		h = audit_hash_ino(entry->rule.inode_f->val);
rule              901 kernel/auditfilter.c 	} else if (entry->rule.watch) {
rule              906 kernel/auditfilter.c 				if (!audit_compare_rule(&entry->rule, &e->rule)) {
rule              913 kernel/auditfilter.c 		*p = list = &audit_filter_list[entry->rule.listnr];
rule              917 kernel/auditfilter.c 		if (!audit_compare_rule(&entry->rule, &e->rule)) {
rule              933 kernel/auditfilter.c 	struct audit_watch *watch = entry->rule.watch;
rule              934 kernel/auditfilter.c 	struct audit_tree *tree = entry->rule.tree;
rule              941 kernel/auditfilter.c 	switch(entry->rule.listnr) {
rule              962 kernel/auditfilter.c 		err = audit_add_watch(&entry->rule, &list);
rule              975 kernel/auditfilter.c 		err = audit_add_tree_rule(&entry->rule);
rule              982 kernel/auditfilter.c 	entry->rule.prio = ~0ULL;
rule              983 kernel/auditfilter.c 	if (entry->rule.listnr == AUDIT_FILTER_EXIT) {
rule              984 kernel/auditfilter.c 		if (entry->rule.flags & AUDIT_FILTER_PREPEND)
rule              985 kernel/auditfilter.c 			entry->rule.prio = ++prio_high;
rule              987 kernel/auditfilter.c 			entry->rule.prio = --prio_low;
rule              990 kernel/auditfilter.c 	if (entry->rule.flags & AUDIT_FILTER_PREPEND) {
rule              991 kernel/auditfilter.c 		list_add(&entry->rule.list,
rule              992 kernel/auditfilter.c 			 &audit_rules_list[entry->rule.listnr]);
rule              994 kernel/auditfilter.c 		entry->rule.flags &= ~AUDIT_FILTER_PREPEND;
rule              996 kernel/auditfilter.c 		list_add_tail(&entry->rule.list,
rule              997 kernel/auditfilter.c 			      &audit_rules_list[entry->rule.listnr]);
rule             1016 kernel/auditfilter.c 	struct audit_tree *tree = entry->rule.tree;
rule             1023 kernel/auditfilter.c 	switch(entry->rule.listnr) {
rule             1038 kernel/auditfilter.c 	if (e->rule.watch)
rule             1039 kernel/auditfilter.c 		audit_remove_watch_rule(&e->rule);
rule             1041 kernel/auditfilter.c 	if (e->rule.tree)
rule             1042 kernel/auditfilter.c 		audit_remove_tree_rule(&e->rule);
rule             1044 kernel/auditfilter.c 	if (e->rule.exe)
rule             1045 kernel/auditfilter.c 		audit_remove_mark_rule(&e->rule);
rule             1056 kernel/auditfilter.c 	list_del(&e->rule.list);
rule             1098 kernel/auditfilter.c static void audit_log_rule_change(char *action, struct audit_krule *rule, int res)
rule             1111 kernel/auditfilter.c 	audit_log_key(ab, rule->filterkey);
rule             1112 kernel/auditfilter.c 	audit_log_format(ab, " list=%d res=%d", rule->listnr, res);
rule             1134 kernel/auditfilter.c 		audit_log_rule_change("add_rule", &entry->rule, !err);
rule             1141 kernel/auditfilter.c 		audit_log_rule_change("remove_rule", &entry->rule, !err);
rule             1149 kernel/auditfilter.c 		if (entry->rule.exe)
rule             1150 kernel/auditfilter.c 			audit_remove_mark(entry->rule.exe);
rule             1331 kernel/auditfilter.c 		for (i = 0; i < e->rule.field_count; i++) {
rule             1332 kernel/auditfilter.c 			struct audit_field *f = &e->rule.fields[i];
rule             1370 kernel/auditfilter.c 				result = audit_exe_compare(current, e->rule.exe);
rule             1383 kernel/auditfilter.c 			if (e->rule.action == AUDIT_NEVER || listtype == AUDIT_FILTER_EXCLUDE)
rule             1395 kernel/auditfilter.c 	struct audit_entry *entry = container_of(r, struct audit_entry, rule);
rule             1403 kernel/auditfilter.c 	if (entry->rule.exe)
rule             1404 kernel/auditfilter.c 		audit_remove_mark(entry->rule.exe);
rule             1416 kernel/auditfilter.c 			list_replace_init(&r->rlist, &nentry->rule.rlist);
rule             1418 kernel/auditfilter.c 		list_replace(&r->list, &nentry->rule.list);
rule              439 kernel/auditsc.c 			      struct audit_krule *rule,
rule              452 kernel/auditsc.c 	for (i = 0; i < rule->field_count; i++) {
rule              453 kernel/auditsc.c 		struct audit_field *f = &rule->fields[i];
rule              471 kernel/auditsc.c 			result = audit_exe_compare(tsk, rule->exe);
rule              605 kernel/auditsc.c 				result = audit_watch_compare(rule->watch,
rule              614 kernel/auditsc.c 				result = match_tree_refs(ctx, rule->tree);
rule              717 kernel/auditsc.c 		if (rule->prio <= ctx->prio)
rule              719 kernel/auditsc.c 		if (rule->filterkey) {
rule              721 kernel/auditsc.c 			ctx->filterkey = kstrdup(rule->filterkey, GFP_ATOMIC);
rule              723 kernel/auditsc.c 		ctx->prio = rule->prio;
rule              725 kernel/auditsc.c 	switch (rule->action) {
rule              747 kernel/auditsc.c 		if (audit_filter_rules(tsk, &e->rule, NULL, NULL,
rule              750 kernel/auditsc.c 				*key = kstrdup(e->rule.filterkey, GFP_ATOMIC);
rule              759 kernel/auditsc.c static int audit_in_mask(const struct audit_krule *rule, unsigned long val)
rule              772 kernel/auditsc.c 	return rule->mask[word] & bit;
rule              792 kernel/auditsc.c 		if (audit_in_mask(&e->rule, ctx->major) &&
rule              793 kernel/auditsc.c 		    audit_filter_rules(tsk, &e->rule, ctx, NULL,
rule              817 kernel/auditsc.c 		if (audit_in_mask(&e->rule, ctx->major) &&
rule              818 kernel/auditsc.c 		    audit_filter_rules(tsk, &e->rule, ctx, n, &state, false)) {
rule             1960 kernel/auditsc.c 		for (i = 0; i < e->rule.field_count; i++) {
rule             1961 kernel/auditsc.c 			struct audit_field *f = &e->rule.fields[i];
rule             1966 kernel/auditsc.c 			    && e->rule.action == AUDIT_NEVER) {
rule             2078 kernel/auditsc.c 		for (i = 0; i < e->rule.field_count; i++) {
rule             2079 kernel/auditsc.c 			struct audit_field *f = &e->rule.fields[i];
rule             2084 kernel/auditsc.c 			    && e->rule.action == AUDIT_NEVER) {
rule              138 net/ceph/crush/crush.c void crush_destroy_rule(struct crush_rule *rule)
rule              140 net/ceph/crush/crush.c 	kfree(rule);
rule              910 net/ceph/crush/mapper.c 	const struct crush_rule *rule;
rule              936 net/ceph/crush/mapper.c 	rule = map->rules[ruleno];
rule              939 net/ceph/crush/mapper.c 	for (step = 0; step < rule->len; step++) {
rule              941 net/ceph/crush/mapper.c 		const struct crush_rule_step *curstep = &rule->steps[step];
rule             2880 net/core/ethtool.c 	flow->rule = flow_rule_alloc(1);
rule             2881 net/core/ethtool.c 	if (!flow->rule) {
rule             2887 net/core/ethtool.c 	flow->rule->match.dissector	= &match->dissector;
rule             2888 net/core/ethtool.c 	flow->rule->match.mask		= &match->mask;
rule             2889 net/core/ethtool.c 	flow->rule->match.key		= &match->key;
rule             3089 net/core/ethtool.c 	act = &flow->rule->action.entries[0];
rule             3113 net/core/ethtool.c 	kfree(flow->rule);
rule               23 net/core/fib_rules.c bool fib_rule_matchall(const struct fib_rule *rule)
rule               25 net/core/fib_rules.c 	if (rule->iifindex || rule->oifindex || rule->mark || rule->tun_id ||
rule               26 net/core/fib_rules.c 	    rule->flags)
rule               28 net/core/fib_rules.c 	if (rule->suppress_ifgroup != -1 || rule->suppress_prefixlen != -1)
rule               30 net/core/fib_rules.c 	if (!uid_eq(rule->uid_range.start, fib_kuid_range_unset.start) ||
rule               31 net/core/fib_rules.c 	    !uid_eq(rule->uid_range.end, fib_kuid_range_unset.end))
rule               33 net/core/fib_rules.c 	if (fib_rule_port_range_set(&rule->sport_range))
rule               35 net/core/fib_rules.c 	if (fib_rule_port_range_set(&rule->dport_range))
rule               72 net/core/fib_rules.c 	struct fib_rule *rule;
rule               77 net/core/fib_rules.c 			rule = list_entry(pos->next, struct fib_rule, list);
rule               78 net/core/fib_rules.c 			if (rule->pref)
rule               79 net/core/fib_rules.c 				return rule->pref - 1;
rule               86 net/core/fib_rules.c static void notify_rule_change(int event, struct fib_rule *rule,
rule              174 net/core/fib_rules.c 	struct fib_rule *rule, *tmp;
rule              176 net/core/fib_rules.c 	list_for_each_entry_safe(rule, tmp, &ops->rules_list, list) {
rule              177 net/core/fib_rules.c 		list_del_rcu(&rule->list);
rule              179 net/core/fib_rules.c 			ops->delete(rule);
rule              180 net/core/fib_rules.c 		fib_rule_put(rule);
rule              245 net/core/fib_rules.c static int fib_rule_match(struct fib_rule *rule, struct fib_rules_ops *ops,
rule              251 net/core/fib_rules.c 	if (rule->iifindex && (rule->iifindex != fl->flowi_iif))
rule              254 net/core/fib_rules.c 	if (rule->oifindex && (rule->oifindex != fl->flowi_oif))
rule              257 net/core/fib_rules.c 	if ((rule->mark ^ fl->flowi_mark) & rule->mark_mask)
rule              260 net/core/fib_rules.c 	if (rule->tun_id && (rule->tun_id != fl->flowi_tun_key.tun_id))
rule              263 net/core/fib_rules.c 	if (rule->l3mdev && !l3mdev_fib_rule_match(rule->fr_net, fl, arg))
rule              266 net/core/fib_rules.c 	if (uid_lt(fl->flowi_uid, rule->uid_range.start) ||
rule              267 net/core/fib_rules.c 	    uid_gt(fl->flowi_uid, rule->uid_range.end))
rule              270 net/core/fib_rules.c 	ret = ops->match(rule, fl, flags);
rule              272 net/core/fib_rules.c 	return (rule->flags & FIB_RULE_INVERT) ? !ret : ret;
rule              278 net/core/fib_rules.c 	struct fib_rule *rule;
rule              283 net/core/fib_rules.c 	list_for_each_entry_rcu(rule, &ops->rules_list, list) {
rule              285 net/core/fib_rules.c 		if (!fib_rule_match(rule, ops, fl, flags, arg))
rule              288 net/core/fib_rules.c 		if (rule->action == FR_ACT_GOTO) {
rule              291 net/core/fib_rules.c 			target = rcu_dereference(rule->ctarget);
rule              295 net/core/fib_rules.c 				rule = target;
rule              298 net/core/fib_rules.c 		} else if (rule->action == FR_ACT_NOP)
rule              301 net/core/fib_rules.c 			err = ops->action(rule, fl, flags, arg);
rule              303 net/core/fib_rules.c 		if (!err && ops->suppress && ops->suppress(rule, arg))
rule              308 net/core/fib_rules.c 			    likely(refcount_inc_not_zero(&rule->refcnt))) {
rule              309 net/core/fib_rules.c 				arg->rule = rule;
rule              326 net/core/fib_rules.c 				  struct fib_rule *rule, int family)
rule              330 net/core/fib_rules.c 		.rule = rule,
rule              338 net/core/fib_rules.c 				   struct fib_rule *rule,
rule              345 net/core/fib_rules.c 		.rule = rule,
rule              356 net/core/fib_rules.c 	struct fib_rule *rule;
rule              361 net/core/fib_rules.c 	list_for_each_entry_rcu(rule, &ops->rules_list, list)
rule              362 net/core/fib_rules.c 		call_fib_rule_notifier(nb, net, FIB_EVENT_RULE_ADD, rule,
rule              390 net/core/fib_rules.c 				  struct fib_rule *rule,
rule              396 net/core/fib_rules.c 		if (rule->action && r->action != rule->action)
rule              399 net/core/fib_rules.c 		if (rule->table && r->table != rule->table)
rule              402 net/core/fib_rules.c 		if (user_priority && r->pref != rule->pref)
rule              405 net/core/fib_rules.c 		if (rule->iifname[0] &&
rule              406 net/core/fib_rules.c 		    memcmp(r->iifname, rule->iifname, IFNAMSIZ))
rule              409 net/core/fib_rules.c 		if (rule->oifname[0] &&
rule              410 net/core/fib_rules.c 		    memcmp(r->oifname, rule->oifname, IFNAMSIZ))
rule              413 net/core/fib_rules.c 		if (rule->mark && r->mark != rule->mark)
rule              416 net/core/fib_rules.c 		if (rule->suppress_ifgroup != -1 &&
rule              417 net/core/fib_rules.c 		    r->suppress_ifgroup != rule->suppress_ifgroup)
rule              420 net/core/fib_rules.c 		if (rule->suppress_prefixlen != -1 &&
rule              421 net/core/fib_rules.c 		    r->suppress_prefixlen != rule->suppress_prefixlen)
rule              424 net/core/fib_rules.c 		if (rule->mark_mask && r->mark_mask != rule->mark_mask)
rule              427 net/core/fib_rules.c 		if (rule->tun_id && r->tun_id != rule->tun_id)
rule              430 net/core/fib_rules.c 		if (r->fr_net != rule->fr_net)
rule              433 net/core/fib_rules.c 		if (rule->l3mdev && r->l3mdev != rule->l3mdev)
rule              436 net/core/fib_rules.c 		if (uid_range_set(&rule->uid_range) &&
rule              437 net/core/fib_rules.c 		    (!uid_eq(r->uid_range.start, rule->uid_range.start) ||
rule              438 net/core/fib_rules.c 		    !uid_eq(r->uid_range.end, rule->uid_range.end)))
rule              441 net/core/fib_rules.c 		if (rule->ip_proto && r->ip_proto != rule->ip_proto)
rule              444 net/core/fib_rules.c 		if (rule->proto && r->proto != rule->proto)
rule              447 net/core/fib_rules.c 		if (fib_rule_port_range_set(&rule->sport_range) &&
rule              449 net/core/fib_rules.c 						 &rule->sport_range))
rule              452 net/core/fib_rules.c 		if (fib_rule_port_range_set(&rule->dport_range) &&
rule              454 net/core/fib_rules.c 						 &rule->dport_range))
rule              490 net/core/fib_rules.c 		       struct fib_rule **rule,
rule              646 net/core/fib_rules.c 	*rule = nlrule;
rule              657 net/core/fib_rules.c 		       struct nlattr **tb, struct fib_rule *rule)
rule              662 net/core/fib_rules.c 		if (r->action != rule->action)
rule              665 net/core/fib_rules.c 		if (r->table != rule->table)
rule              668 net/core/fib_rules.c 		if (r->pref != rule->pref)
rule              671 net/core/fib_rules.c 		if (memcmp(r->iifname, rule->iifname, IFNAMSIZ))
rule              674 net/core/fib_rules.c 		if (memcmp(r->oifname, rule->oifname, IFNAMSIZ))
rule              677 net/core/fib_rules.c 		if (r->mark != rule->mark)
rule              680 net/core/fib_rules.c 		if (r->suppress_ifgroup != rule->suppress_ifgroup)
rule              683 net/core/fib_rules.c 		if (r->suppress_prefixlen != rule->suppress_prefixlen)
rule              686 net/core/fib_rules.c 		if (r->mark_mask != rule->mark_mask)
rule              689 net/core/fib_rules.c 		if (r->tun_id != rule->tun_id)
rule              692 net/core/fib_rules.c 		if (r->fr_net != rule->fr_net)
rule              695 net/core/fib_rules.c 		if (r->l3mdev != rule->l3mdev)
rule              698 net/core/fib_rules.c 		if (!uid_eq(r->uid_range.start, rule->uid_range.start) ||
rule              699 net/core/fib_rules.c 		    !uid_eq(r->uid_range.end, rule->uid_range.end))
rule              702 net/core/fib_rules.c 		if (r->ip_proto != rule->ip_proto)
rule              705 net/core/fib_rules.c 		if (r->proto != rule->proto)
rule              709 net/core/fib_rules.c 						 &rule->sport_range))
rule              713 net/core/fib_rules.c 						 &rule->dport_range))
rule              729 net/core/fib_rules.c 	struct fib_rule *rule = NULL, *r, *last = NULL;
rule              753 net/core/fib_rules.c 	err = fib_nl2rule(skb, nlh, extack, ops, tb, &rule, &user_priority);
rule              758 net/core/fib_rules.c 	    rule_exists(ops, frh, tb, rule)) {
rule              763 net/core/fib_rules.c 	err = ops->configure(rule, skb, frh, tb, extack);
rule              767 net/core/fib_rules.c 	err = call_fib_rule_notifiers(net, FIB_EVENT_RULE_ADD, rule, ops,
rule              773 net/core/fib_rules.c 		if (r->pref == rule->target) {
rule              774 net/core/fib_rules.c 			RCU_INIT_POINTER(rule->ctarget, r);
rule              779 net/core/fib_rules.c 	if (rcu_dereference_protected(rule->ctarget, 1) == NULL)
rule              783 net/core/fib_rules.c 		if (r->pref > rule->pref)
rule              789 net/core/fib_rules.c 		list_add_rcu(&rule->list, &last->list);
rule              791 net/core/fib_rules.c 		list_add_rcu(&rule->list, &ops->rules_list);
rule              800 net/core/fib_rules.c 			    r->target == rule->pref &&
rule              802 net/core/fib_rules.c 				rcu_assign_pointer(r->ctarget, rule);
rule              809 net/core/fib_rules.c 	if (rule->action == FR_ACT_GOTO)
rule              815 net/core/fib_rules.c 	if (rule->tun_id)
rule              818 net/core/fib_rules.c 	notify_rule_change(RTM_NEWRULE, rule, ops, nlh, NETLINK_CB(skb).portid);
rule              824 net/core/fib_rules.c 	kfree(rule);
rule              837 net/core/fib_rules.c 	struct fib_rule *rule = NULL, *r, *nlrule = NULL;
rule              865 net/core/fib_rules.c 	rule = rule_find(ops, frh, tb, nlrule, user_priority);
rule              866 net/core/fib_rules.c 	if (!rule) {
rule              871 net/core/fib_rules.c 	if (rule->flags & FIB_RULE_PERMANENT) {
rule              877 net/core/fib_rules.c 		err = ops->delete(rule);
rule              882 net/core/fib_rules.c 	if (rule->tun_id)
rule              885 net/core/fib_rules.c 	list_del_rcu(&rule->list);
rule              887 net/core/fib_rules.c 	if (rule->action == FR_ACT_GOTO) {
rule              889 net/core/fib_rules.c 		if (rtnl_dereference(rule->ctarget) == NULL)
rule              903 net/core/fib_rules.c 		n = list_next_entry(rule, list);
rule              904 net/core/fib_rules.c 		if (&n->list == &ops->rules_list || n->pref != rule->pref)
rule              907 net/core/fib_rules.c 			if (rtnl_dereference(r->ctarget) != rule)
rule              915 net/core/fib_rules.c 	call_fib_rule_notifiers(net, FIB_EVENT_RULE_DEL, rule, ops,
rule              917 net/core/fib_rules.c 	notify_rule_change(RTM_DELRULE, rule, ops, nlh,
rule              919 net/core/fib_rules.c 	fib_rule_put(rule);
rule              933 net/core/fib_rules.c 					 struct fib_rule *rule)
rule              952 net/core/fib_rules.c 		payload += ops->nlmsg_payload(rule);
rule              957 net/core/fib_rules.c static int fib_nl_fill_rule(struct sk_buff *skb, struct fib_rule *rule,
rule              970 net/core/fib_rules.c 	frh->table = rule->table < 256 ? rule->table : RT_TABLE_COMPAT;
rule              971 net/core/fib_rules.c 	if (nla_put_u32(skb, FRA_TABLE, rule->table))
rule              973 net/core/fib_rules.c 	if (nla_put_u32(skb, FRA_SUPPRESS_PREFIXLEN, rule->suppress_prefixlen))
rule              977 net/core/fib_rules.c 	frh->action = rule->action;
rule              978 net/core/fib_rules.c 	frh->flags = rule->flags;
rule              980 net/core/fib_rules.c 	if (nla_put_u8(skb, FRA_PROTOCOL, rule->proto))
rule              983 net/core/fib_rules.c 	if (rule->action == FR_ACT_GOTO &&
rule              984 net/core/fib_rules.c 	    rcu_access_pointer(rule->ctarget) == NULL)
rule              987 net/core/fib_rules.c 	if (rule->iifname[0]) {
rule              988 net/core/fib_rules.c 		if (nla_put_string(skb, FRA_IIFNAME, rule->iifname))
rule              990 net/core/fib_rules.c 		if (rule->iifindex == -1)
rule              994 net/core/fib_rules.c 	if (rule->oifname[0]) {
rule              995 net/core/fib_rules.c 		if (nla_put_string(skb, FRA_OIFNAME, rule->oifname))
rule              997 net/core/fib_rules.c 		if (rule->oifindex == -1)
rule             1001 net/core/fib_rules.c 	if ((rule->pref &&
rule             1002 net/core/fib_rules.c 	     nla_put_u32(skb, FRA_PRIORITY, rule->pref)) ||
rule             1003 net/core/fib_rules.c 	    (rule->mark &&
rule             1004 net/core/fib_rules.c 	     nla_put_u32(skb, FRA_FWMARK, rule->mark)) ||
rule             1005 net/core/fib_rules.c 	    ((rule->mark_mask || rule->mark) &&
rule             1006 net/core/fib_rules.c 	     nla_put_u32(skb, FRA_FWMASK, rule->mark_mask)) ||
rule             1007 net/core/fib_rules.c 	    (rule->target &&
rule             1008 net/core/fib_rules.c 	     nla_put_u32(skb, FRA_GOTO, rule->target)) ||
rule             1009 net/core/fib_rules.c 	    (rule->tun_id &&
rule             1010 net/core/fib_rules.c 	     nla_put_be64(skb, FRA_TUN_ID, rule->tun_id, FRA_PAD)) ||
rule             1011 net/core/fib_rules.c 	    (rule->l3mdev &&
rule             1012 net/core/fib_rules.c 	     nla_put_u8(skb, FRA_L3MDEV, rule->l3mdev)) ||
rule             1013 net/core/fib_rules.c 	    (uid_range_set(&rule->uid_range) &&
rule             1014 net/core/fib_rules.c 	     nla_put_uid_range(skb, &rule->uid_range)) ||
rule             1015 net/core/fib_rules.c 	    (fib_rule_port_range_set(&rule->sport_range) &&
rule             1016 net/core/fib_rules.c 	     nla_put_port_range(skb, FRA_SPORT_RANGE, &rule->sport_range)) ||
rule             1017 net/core/fib_rules.c 	    (fib_rule_port_range_set(&rule->dport_range) &&
rule             1018 net/core/fib_rules.c 	     nla_put_port_range(skb, FRA_DPORT_RANGE, &rule->dport_range)) ||
rule             1019 net/core/fib_rules.c 	    (rule->ip_proto && nla_put_u8(skb, FRA_IP_PROTO, rule->ip_proto)))
rule             1022 net/core/fib_rules.c 	if (rule->suppress_ifgroup != -1) {
rule             1023 net/core/fib_rules.c 		if (nla_put_u32(skb, FRA_SUPPRESS_IFGROUP, rule->suppress_ifgroup))
rule             1027 net/core/fib_rules.c 	if (ops->fill(rule, skb, frh) < 0)
rule             1042 net/core/fib_rules.c 	struct fib_rule *rule;
rule             1046 net/core/fib_rules.c 	list_for_each_entry_rcu(rule, &ops->rules_list, list) {
rule             1050 net/core/fib_rules.c 		err = fib_nl_fill_rule(skb, rule, NETLINK_CB(cb->skb).portid,
rule             1135 net/core/fib_rules.c static void notify_rule_change(int event, struct fib_rule *rule,
rule             1144 net/core/fib_rules.c 	skb = nlmsg_new(fib_rule_nlmsg_size(ops, rule), GFP_KERNEL);
rule             1148 net/core/fib_rules.c 	err = fib_nl_fill_rule(skb, rule, pid, nlh->nlmsg_seq, event, 0, ops);
rule             1165 net/core/fib_rules.c 	struct fib_rule *rule;
rule             1167 net/core/fib_rules.c 	list_for_each_entry(rule, rules, list) {
rule             1168 net/core/fib_rules.c 		if (rule->iifindex == -1 &&
rule             1169 net/core/fib_rules.c 		    strcmp(dev->name, rule->iifname) == 0)
rule             1170 net/core/fib_rules.c 			rule->iifindex = dev->ifindex;
rule             1171 net/core/fib_rules.c 		if (rule->oifindex == -1 &&
rule             1172 net/core/fib_rules.c 		    strcmp(dev->name, rule->oifname) == 0)
rule             1173 net/core/fib_rules.c 			rule->oifindex = dev->ifindex;
rule             1179 net/core/fib_rules.c 	struct fib_rule *rule;
rule             1181 net/core/fib_rules.c 	list_for_each_entry(rule, rules, list) {
rule             1182 net/core/fib_rules.c 		if (rule->iifindex == dev->ifindex)
rule             1183 net/core/fib_rules.c 			rule->iifindex = -1;
rule             1184 net/core/fib_rules.c 		if (rule->oifindex == dev->ifindex)
rule             1185 net/core/fib_rules.c 			rule->oifindex = -1;
rule               10 net/core/flow_offload.c 	struct flow_rule *rule;
rule               12 net/core/flow_offload.c 	rule = kzalloc(struct_size(rule, action.entries, num_actions),
rule               14 net/core/flow_offload.c 	if (!rule)
rule               17 net/core/flow_offload.c 	rule->action.num_entries = num_actions;
rule               19 net/core/flow_offload.c 	return rule;
rule               30 net/core/flow_offload.c void flow_rule_match_meta(const struct flow_rule *rule,
rule               33 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_META, out);
rule               37 net/core/flow_offload.c void flow_rule_match_basic(const struct flow_rule *rule,
rule               40 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_BASIC, out);
rule               44 net/core/flow_offload.c void flow_rule_match_control(const struct flow_rule *rule,
rule               47 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_CONTROL, out);
rule               51 net/core/flow_offload.c void flow_rule_match_eth_addrs(const struct flow_rule *rule,
rule               54 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS, out);
rule               58 net/core/flow_offload.c void flow_rule_match_vlan(const struct flow_rule *rule,
rule               61 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_VLAN, out);
rule               65 net/core/flow_offload.c void flow_rule_match_cvlan(const struct flow_rule *rule,
rule               68 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_CVLAN, out);
rule               72 net/core/flow_offload.c void flow_rule_match_ipv4_addrs(const struct flow_rule *rule,
rule               75 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_IPV4_ADDRS, out);
rule               79 net/core/flow_offload.c void flow_rule_match_ipv6_addrs(const struct flow_rule *rule,
rule               82 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_IPV6_ADDRS, out);
rule               86 net/core/flow_offload.c void flow_rule_match_ip(const struct flow_rule *rule,
rule               89 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_IP, out);
rule               93 net/core/flow_offload.c void flow_rule_match_ports(const struct flow_rule *rule,
rule               96 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_PORTS, out);
rule              100 net/core/flow_offload.c void flow_rule_match_tcp(const struct flow_rule *rule,
rule              103 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_TCP, out);
rule              107 net/core/flow_offload.c void flow_rule_match_icmp(const struct flow_rule *rule,
rule              110 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ICMP, out);
rule              114 net/core/flow_offload.c void flow_rule_match_mpls(const struct flow_rule *rule,
rule              117 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_MPLS, out);
rule              121 net/core/flow_offload.c void flow_rule_match_enc_control(const struct flow_rule *rule,
rule              124 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_CONTROL, out);
rule              128 net/core/flow_offload.c void flow_rule_match_enc_ipv4_addrs(const struct flow_rule *rule,
rule              131 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS, out);
rule              135 net/core/flow_offload.c void flow_rule_match_enc_ipv6_addrs(const struct flow_rule *rule,
rule              138 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS, out);
rule              142 net/core/flow_offload.c void flow_rule_match_enc_ip(const struct flow_rule *rule,
rule              145 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_IP, out);
rule              149 net/core/flow_offload.c void flow_rule_match_enc_ports(const struct flow_rule *rule,
rule              152 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_PORTS, out);
rule              156 net/core/flow_offload.c void flow_rule_match_enc_keyid(const struct flow_rule *rule,
rule              159 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_KEYID, out);
rule              163 net/core/flow_offload.c void flow_rule_match_enc_opts(const struct flow_rule *rule,
rule              166 net/core/flow_offload.c 	FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_ENC_OPTS, out);
rule               63 net/decnet/dn_rules.c 	res->r = arg.rule;
rule               68 net/decnet/dn_rules.c static int dn_fib_rule_action(struct fib_rule *rule, struct flowi *flp,
rule               75 net/decnet/dn_rules.c 	switch(rule->action) {
rule               93 net/decnet/dn_rules.c 	tbl = dn_fib_get_table(rule->table, 0);
rule              108 net/decnet/dn_rules.c static int dn_fib_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
rule              110 net/decnet/dn_rules.c 	struct dn_fib_rule *r = (struct dn_fib_rule *)rule;
rule              122 net/decnet/dn_rules.c static int dn_fib_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
rule              128 net/decnet/dn_rules.c 	struct dn_fib_rule *r = (struct dn_fib_rule *)rule;
rule              135 net/decnet/dn_rules.c 	if (rule->table == RT_TABLE_UNSPEC) {
rule              136 net/decnet/dn_rules.c 		if (rule->action == FR_ACT_TO_TBL) {
rule              145 net/decnet/dn_rules.c 			rule->table = table->n;
rule              164 net/decnet/dn_rules.c static int dn_fib_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
rule              167 net/decnet/dn_rules.c 	struct dn_fib_rule *r = (struct dn_fib_rule *)rule;
rule              202 net/decnet/dn_rules.c static int dn_fib_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
rule              205 net/decnet/dn_rules.c 	struct dn_fib_rule *r = (struct dn_fib_rule *)rule;
rule              877 net/dsa/slave.c 	if (!flow_offload_has_one_action(&cls->rule->action))
rule              880 net/dsa/slave.c 	act = &cls->rule->action.entries[0];
rule               47 net/ipv4/fib_rules.c static bool fib4_rule_matchall(const struct fib_rule *rule)
rule               49 net/ipv4/fib_rules.c 	struct fib4_rule *r = container_of(rule, struct fib4_rule, common);
rule               53 net/ipv4/fib_rules.c 	return fib_rule_matchall(rule);
rule               56 net/ipv4/fib_rules.c bool fib4_rule_default(const struct fib_rule *rule)
rule               58 net/ipv4/fib_rules.c 	if (!fib4_rule_matchall(rule) || rule->action != FR_ACT_TO_TBL ||
rule               59 net/ipv4/fib_rules.c 	    rule->l3mdev)
rule               61 net/ipv4/fib_rules.c 	if (rule->table != RT_TABLE_LOCAL && rule->table != RT_TABLE_MAIN &&
rule               62 net/ipv4/fib_rules.c 	    rule->table != RT_TABLE_DEFAULT)
rule               92 net/ipv4/fib_rules.c 	if (arg.rule)
rule               93 net/ipv4/fib_rules.c 		res->tclassid = ((struct fib4_rule *)arg.rule)->tclassid;
rule              105 net/ipv4/fib_rules.c static int fib4_rule_action(struct fib_rule *rule, struct flowi *flp,
rule              112 net/ipv4/fib_rules.c 	switch (rule->action) {
rule              129 net/ipv4/fib_rules.c 	tb_id = fib_rule_get_table(rule, arg);
rule              130 net/ipv4/fib_rules.c 	tbl = fib_get_table(rule->fr_net, tb_id);
rule              140 net/ipv4/fib_rules.c static bool fib4_rule_suppress(struct fib_rule *rule, struct fib_lookup_arg *arg)
rule              154 net/ipv4/fib_rules.c 	if (result->prefixlen <= rule->suppress_prefixlen)
rule              160 net/ipv4/fib_rules.c 	if (rule->suppress_ifgroup != -1 && dev && dev->group == rule->suppress_ifgroup)
rule              171 net/ipv4/fib_rules.c static int fib4_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
rule              173 net/ipv4/fib_rules.c 	struct fib4_rule *r = (struct fib4_rule *) rule;
rule              185 net/ipv4/fib_rules.c 	if (rule->ip_proto && (rule->ip_proto != fl4->flowi4_proto))
rule              188 net/ipv4/fib_rules.c 	if (fib_rule_port_range_set(&rule->sport_range) &&
rule              189 net/ipv4/fib_rules.c 	    !fib_rule_port_inrange(&rule->sport_range, fl4->fl4_sport))
rule              192 net/ipv4/fib_rules.c 	if (fib_rule_port_range_set(&rule->dport_range) &&
rule              193 net/ipv4/fib_rules.c 	    !fib_rule_port_inrange(&rule->dport_range, fl4->fl4_dport))
rule              218 net/ipv4/fib_rules.c static int fib4_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
rule              225 net/ipv4/fib_rules.c 	struct fib4_rule *rule4 = (struct fib4_rule *) rule;
rule              237 net/ipv4/fib_rules.c 	if (rule->table == RT_TABLE_UNSPEC && !rule->l3mdev) {
rule              238 net/ipv4/fib_rules.c 		if (rule->action == FR_ACT_TO_TBL) {
rule              247 net/ipv4/fib_rules.c 			rule->table = table->tb_id;
rule              265 net/ipv4/fib_rules.c 	if (fib_rule_requires_fldissect(rule))
rule              281 net/ipv4/fib_rules.c static int fib4_rule_delete(struct fib_rule *rule)
rule              283 net/ipv4/fib_rules.c 	struct net *net = rule->fr_net;
rule              292 net/ipv4/fib_rules.c 	if (((struct fib4_rule *)rule)->tclassid)
rule              298 net/ipv4/fib_rules.c 	    fib_rule_requires_fldissect(rule))
rule              304 net/ipv4/fib_rules.c static int fib4_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
rule              307 net/ipv4/fib_rules.c 	struct fib4_rule *rule4 = (struct fib4_rule *) rule;
rule              332 net/ipv4/fib_rules.c static int fib4_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
rule              335 net/ipv4/fib_rules.c 	struct fib4_rule *rule4 = (struct fib4_rule *) rule;
rule              357 net/ipv4/fib_rules.c static size_t fib4_rule_nlmsg_payload(struct fib_rule *rule)
rule              164 net/ipv4/ipmr.c static int ipmr_rule_action(struct fib_rule *rule, struct flowi *flp,
rule              170 net/ipv4/ipmr.c 	switch (rule->action) {
rule              182 net/ipv4/ipmr.c 	arg->table = fib_rule_get_table(rule, arg);
rule              184 net/ipv4/ipmr.c 	mrt = ipmr_get_table(rule->fr_net, arg->table);
rule              191 net/ipv4/ipmr.c static int ipmr_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
rule              200 net/ipv4/ipmr.c static int ipmr_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
rule              207 net/ipv4/ipmr.c static int ipmr_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
rule              213 net/ipv4/ipmr.c static int ipmr_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
rule              291 net/ipv4/ipmr.c bool ipmr_rule_default(const struct fib_rule *rule)
rule              293 net/ipv4/ipmr.c 	return fib_rule_matchall(rule) && rule->table == RT_TABLE_DEFAULT;
rule              349 net/ipv4/ipmr.c bool ipmr_rule_default(const struct fib_rule *rule)
rule             1459 net/ipv6/addrconf.c 	int			rule;
rule             1521 net/ipv6/addrconf.c 	if (i <= score->rule) {
rule             1643 net/ipv6/addrconf.c 	score->rule = i;
rule             1682 net/ipv6/addrconf.c 		score->rule = -1;
rule             1762 net/ipv6/addrconf.c 	scores[hiscore_idx].rule = -1;
rule               30 net/ipv6/fib6_rules.c static bool fib6_rule_matchall(const struct fib_rule *rule)
rule               32 net/ipv6/fib6_rules.c 	struct fib6_rule *r = container_of(rule, struct fib6_rule, common);
rule               36 net/ipv6/fib6_rules.c 	return fib_rule_matchall(rule);
rule               39 net/ipv6/fib6_rules.c bool fib6_rule_default(const struct fib_rule *rule)
rule               41 net/ipv6/fib6_rules.c 	if (!fib6_rule_matchall(rule) || rule->action != FR_ACT_TO_TBL ||
rule               42 net/ipv6/fib6_rules.c 	    rule->l3mdev)
rule               44 net/ipv6/fib6_rules.c 	if (rule->table != RT6_TABLE_LOCAL && rule->table != RT6_TABLE_MAIN)
rule              128 net/ipv6/fib6_rules.c static int fib6_rule_saddr(struct net *net, struct fib_rule *rule, int flags,
rule              131 net/ipv6/fib6_rules.c 	struct fib6_rule *r = (struct fib6_rule *)rule;
rule              136 net/ipv6/fib6_rules.c 	if ((rule->flags & FIB_RULE_FIND_SADDR) &&
rule              153 net/ipv6/fib6_rules.c static int fib6_rule_action_alt(struct fib_rule *rule, struct flowi *flp,
rule              158 net/ipv6/fib6_rules.c 	struct net *net = rule->fr_net;
rule              163 net/ipv6/fib6_rules.c 	switch (rule->action) {
rule              175 net/ipv6/fib6_rules.c 	tb_id = fib_rule_get_table(rule, arg);
rule              183 net/ipv6/fib6_rules.c 		err = fib6_rule_saddr(net, rule, flags, flp6,
rule              191 net/ipv6/fib6_rules.c static int __fib6_rule_action(struct fib_rule *rule, struct flowi *flp,
rule              198 net/ipv6/fib6_rules.c 	struct net *net = rule->fr_net;
rule              203 net/ipv6/fib6_rules.c 	switch (rule->action) {
rule              221 net/ipv6/fib6_rules.c 	tb_id = fib_rule_get_table(rule, arg);
rule              230 net/ipv6/fib6_rules.c 		err = fib6_rule_saddr(net, rule, flags, flp6,
rule              254 net/ipv6/fib6_rules.c static int fib6_rule_action(struct fib_rule *rule, struct flowi *flp,
rule              258 net/ipv6/fib6_rules.c 		return fib6_rule_action_alt(rule, flp, flags, arg);
rule              260 net/ipv6/fib6_rules.c 	return __fib6_rule_action(rule, flp, flags, arg);
rule              263 net/ipv6/fib6_rules.c static bool fib6_rule_suppress(struct fib_rule *rule, struct fib_lookup_arg *arg)
rule              278 net/ipv6/fib6_rules.c 	if (rt->rt6i_dst.plen <= rule->suppress_prefixlen)
rule              284 net/ipv6/fib6_rules.c 	if (rule->suppress_ifgroup != -1 && dev && dev->group == rule->suppress_ifgroup)
rule              295 net/ipv6/fib6_rules.c static int fib6_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
rule              297 net/ipv6/fib6_rules.c 	struct fib6_rule *r = (struct fib6_rule *) rule;
rule              321 net/ipv6/fib6_rules.c 	if (rule->ip_proto && (rule->ip_proto != fl6->flowi6_proto))
rule              324 net/ipv6/fib6_rules.c 	if (fib_rule_port_range_set(&rule->sport_range) &&
rule              325 net/ipv6/fib6_rules.c 	    !fib_rule_port_inrange(&rule->sport_range, fl6->fl6_sport))
rule              328 net/ipv6/fib6_rules.c 	if (fib_rule_port_range_set(&rule->dport_range) &&
rule              329 net/ipv6/fib6_rules.c 	    !fib_rule_port_inrange(&rule->dport_range, fl6->fl6_dport))
rule              339 net/ipv6/fib6_rules.c static int fib6_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
rule              346 net/ipv6/fib6_rules.c 	struct fib6_rule *rule6 = (struct fib6_rule *) rule;
rule              348 net/ipv6/fib6_rules.c 	if (rule->action == FR_ACT_TO_TBL && !rule->l3mdev) {
rule              349 net/ipv6/fib6_rules.c 		if (rule->table == RT6_TABLE_UNSPEC) {
rule              354 net/ipv6/fib6_rules.c 		if (fib6_new_table(net, rule->table) == NULL) {
rule              370 net/ipv6/fib6_rules.c 	if (fib_rule_requires_fldissect(rule))
rule              379 net/ipv6/fib6_rules.c static int fib6_rule_delete(struct fib_rule *rule)
rule              381 net/ipv6/fib6_rules.c 	struct net *net = rule->fr_net;
rule              384 net/ipv6/fib6_rules.c 	    fib_rule_requires_fldissect(rule))
rule              390 net/ipv6/fib6_rules.c static int fib6_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
rule              393 net/ipv6/fib6_rules.c 	struct fib6_rule *rule6 = (struct fib6_rule *) rule;
rule              415 net/ipv6/fib6_rules.c static int fib6_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
rule              418 net/ipv6/fib6_rules.c 	struct fib6_rule *rule6 = (struct fib6_rule *) rule;
rule              435 net/ipv6/fib6_rules.c static size_t fib6_rule_nlmsg_payload(struct fib_rule *rule)
rule              151 net/ipv6/ip6mr.c static int ip6mr_rule_action(struct fib_rule *rule, struct flowi *flp,
rule              157 net/ipv6/ip6mr.c 	switch (rule->action) {
rule              169 net/ipv6/ip6mr.c 	arg->table = fib_rule_get_table(rule, arg);
rule              171 net/ipv6/ip6mr.c 	mrt = ip6mr_get_table(rule->fr_net, arg->table);
rule              178 net/ipv6/ip6mr.c static int ip6mr_rule_match(struct fib_rule *rule, struct flowi *flp, int flags)
rule              187 net/ipv6/ip6mr.c static int ip6mr_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
rule              194 net/ipv6/ip6mr.c static int ip6mr_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
rule              200 net/ipv6/ip6mr.c static int ip6mr_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
rule              278 net/ipv6/ip6mr.c bool ip6mr_rule_default(const struct fib_rule *rule)
rule              280 net/ipv6/ip6mr.c 	return fib_rule_matchall(rule) && rule->action == FR_ACT_TO_TBL &&
rule              281 net/ipv6/ip6mr.c 	       rule->table == RT6_TABLE_DFLT && !rule->l3mdev;
rule               66 net/netfilter/nf_dup_netdev.c 	entry = &flow->rule->action.entries[ctx->num_actions++];
rule              252 net/netfilter/nf_tables_api.c 				   struct nft_rule *rule)
rule              256 net/netfilter/nf_tables_api.c 	expr = nft_expr_first(rule);
rule              257 net/netfilter/nf_tables_api.c 	while (expr != nft_expr_last(rule) && expr->ops) {
rule              266 net/netfilter/nf_tables_api.c 				     struct nft_rule *rule,
rule              271 net/netfilter/nf_tables_api.c 	expr = nft_expr_first(rule);
rule              272 net/netfilter/nf_tables_api.c 	while (expr != nft_expr_last(rule) && expr->ops) {
rule              281 net/netfilter/nf_tables_api.c nf_tables_delrule_deactivate(struct nft_ctx *ctx, struct nft_rule *rule)
rule              284 net/netfilter/nf_tables_api.c 	if (nft_is_active_next(ctx->net, rule)) {
rule              285 net/netfilter/nf_tables_api.c 		nft_deactivate_next(ctx->net, rule);
rule              293 net/netfilter/nf_tables_api.c 					    struct nft_rule *rule)
rule              305 net/netfilter/nf_tables_api.c 	nft_trans_rule(trans) = rule;
rule              311 net/netfilter/nf_tables_api.c static int nft_delrule(struct nft_ctx *ctx, struct nft_rule *rule)
rule              316 net/netfilter/nf_tables_api.c 	trans = nft_trans_rule_add(ctx, NFT_MSG_DELRULE, rule);
rule              320 net/netfilter/nf_tables_api.c 	err = nf_tables_delrule_deactivate(ctx, rule);
rule              325 net/netfilter/nf_tables_api.c 	nft_rule_expr_deactivate(ctx, rule, NFT_TRANS_PREPARE);
rule              332 net/netfilter/nf_tables_api.c 	struct nft_rule *rule;
rule              335 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &ctx->chain->rules, list) {
rule              336 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(ctx->net, rule))
rule              339 net/netfilter/nf_tables_api.c 		err = nft_delrule(ctx, rule);
rule             1980 net/netfilter/nf_tables_api.c 	struct nft_rule *rule;
rule             2012 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &chain->rules, list) {
rule             2013 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(net, rule))
rule             2017 net/netfilter/nf_tables_api.c 		err = nft_delrule(&ctx, rule);
rule             2305 net/netfilter/nf_tables_api.c 	struct nft_rule *rule;
rule             2308 net/netfilter/nf_tables_api.c 	list_for_each_entry_rcu(rule, &chain->rules, list) {
rule             2309 net/netfilter/nf_tables_api.c 		if (handle == rule->handle)
rule             2310 net/netfilter/nf_tables_api.c 			return rule;
rule             2345 net/netfilter/nf_tables_api.c 				    const struct nft_rule *rule,
rule             2367 net/netfilter/nf_tables_api.c 	if (nla_put_be64(skb, NFTA_RULE_HANDLE, cpu_to_be64(rule->handle),
rule             2381 net/netfilter/nf_tables_api.c 	nft_rule_for_each_expr(expr, next, rule) {
rule             2387 net/netfilter/nf_tables_api.c 	if (rule->udata) {
rule             2388 net/netfilter/nf_tables_api.c 		struct nft_userdata *udata = nft_userdata(rule);
rule             2403 net/netfilter/nf_tables_api.c 				  const struct nft_rule *rule, int event)
rule             2418 net/netfilter/nf_tables_api.c 				       ctx->chain, rule, NULL);
rule             2443 net/netfilter/nf_tables_api.c 	const struct nft_rule *rule, *prule;
rule             2447 net/netfilter/nf_tables_api.c 	list_for_each_entry_rcu(rule, &chain->rules, list) {
rule             2448 net/netfilter/nf_tables_api.c 		if (!nft_is_active(net, rule))
rule             2461 net/netfilter/nf_tables_api.c 					table, chain, rule, prule) < 0)
rule             2466 net/netfilter/nf_tables_api.c 		prule = rule;
rule             2581 net/netfilter/nf_tables_api.c 	const struct nft_rule *rule;
rule             2611 net/netfilter/nf_tables_api.c 	rule = nft_rule_lookup(chain, nla[NFTA_RULE_HANDLE]);
rule             2612 net/netfilter/nf_tables_api.c 	if (IS_ERR(rule)) {
rule             2614 net/netfilter/nf_tables_api.c 		return PTR_ERR(rule);
rule             2623 net/netfilter/nf_tables_api.c 				       family, table, chain, rule, NULL);
rule             2635 net/netfilter/nf_tables_api.c 				   struct nft_rule *rule)
rule             2643 net/netfilter/nf_tables_api.c 	expr = nft_expr_first(rule);
rule             2644 net/netfilter/nf_tables_api.c 	while (expr != nft_expr_last(rule) && expr->ops) {
rule             2649 net/netfilter/nf_tables_api.c 	kfree(rule);
rule             2653 net/netfilter/nf_tables_api.c 				   struct nft_rule *rule)
rule             2655 net/netfilter/nf_tables_api.c 	nft_rule_expr_deactivate(ctx, rule, NFT_TRANS_RELEASE);
rule             2656 net/netfilter/nf_tables_api.c 	nf_tables_rule_destroy(ctx, rule);
rule             2663 net/netfilter/nf_tables_api.c 	struct nft_rule *rule;
rule             2669 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &chain->rules, list) {
rule             2670 net/netfilter/nf_tables_api.c 		if (!nft_is_active_next(ctx->net, rule))
rule             2673 net/netfilter/nf_tables_api.c 		nft_rule_for_each_expr(expr, last, rule) {
rule             2726 net/netfilter/nf_tables_api.c 	struct nft_rule *rule, *old_rule = NULL;
rule             2752 net/netfilter/nf_tables_api.c 		rule = __nft_rule_lookup(chain, handle);
rule             2753 net/netfilter/nf_tables_api.c 		if (IS_ERR(rule)) {
rule             2755 net/netfilter/nf_tables_api.c 			return PTR_ERR(rule);
rule             2763 net/netfilter/nf_tables_api.c 			old_rule = rule;
rule             2827 net/netfilter/nf_tables_api.c 	rule = kzalloc(sizeof(*rule) + size + usize, GFP_KERNEL);
rule             2828 net/netfilter/nf_tables_api.c 	if (rule == NULL)
rule             2831 net/netfilter/nf_tables_api.c 	nft_activate_next(net, rule);
rule             2833 net/netfilter/nf_tables_api.c 	rule->handle = handle;
rule             2834 net/netfilter/nf_tables_api.c 	rule->dlen   = size;
rule             2835 net/netfilter/nf_tables_api.c 	rule->udata  = ulen ? 1 : 0;
rule             2838 net/netfilter/nf_tables_api.c 		udata = nft_userdata(rule);
rule             2843 net/netfilter/nf_tables_api.c 	expr = nft_expr_first(rule);
rule             2857 net/netfilter/nf_tables_api.c 		trans = nft_trans_rule_add(&ctx, NFT_MSG_NEWRULE, rule);
rule             2868 net/netfilter/nf_tables_api.c 		list_add_tail_rcu(&rule->list, &old_rule->list);
rule             2870 net/netfilter/nf_tables_api.c 		trans = nft_trans_rule_add(&ctx, NFT_MSG_NEWRULE, rule);
rule             2878 net/netfilter/nf_tables_api.c 				list_add_rcu(&rule->list, &old_rule->list);
rule             2880 net/netfilter/nf_tables_api.c 				list_add_tail_rcu(&rule->list, &chain->rules);
rule             2883 net/netfilter/nf_tables_api.c 				list_add_tail_rcu(&rule->list, &old_rule->list);
rule             2885 net/netfilter/nf_tables_api.c 				list_add_rcu(&rule->list, &chain->rules);
rule             2895 net/netfilter/nf_tables_api.c 		flow = nft_flow_rule_create(net, rule);
rule             2904 net/netfilter/nf_tables_api.c 	nf_tables_rule_release(&ctx, rule);
rule             2924 net/netfilter/nf_tables_api.c 		struct nft_rule *rule = nft_trans_rule(trans);
rule             2928 net/netfilter/nf_tables_api.c 			return rule;
rule             2942 net/netfilter/nf_tables_api.c 	struct nft_rule *rule;
rule             2965 net/netfilter/nf_tables_api.c 			rule = nft_rule_lookup(chain, nla[NFTA_RULE_HANDLE]);
rule             2966 net/netfilter/nf_tables_api.c 			if (IS_ERR(rule)) {
rule             2968 net/netfilter/nf_tables_api.c 				return PTR_ERR(rule);
rule             2971 net/netfilter/nf_tables_api.c 			err = nft_delrule(&ctx, rule);
rule             2973 net/netfilter/nf_tables_api.c 			rule = nft_rule_lookup_byid(net, nla[NFTA_RULE_ID]);
rule             2974 net/netfilter/nf_tables_api.c 			if (IS_ERR(rule)) {
rule             2976 net/netfilter/nf_tables_api.c 				return PTR_ERR(rule);
rule             2979 net/netfilter/nf_tables_api.c 			err = nft_delrule(&ctx, rule);
rule             6610 net/netfilter/nf_tables_api.c 	struct nft_rule *rule;
rule             6618 net/netfilter/nf_tables_api.c 	rule = list_entry(&chain->rules, struct nft_rule, list);
rule             6621 net/netfilter/nf_tables_api.c 	list_for_each_entry_continue(rule, &chain->rules, list) {
rule             6622 net/netfilter/nf_tables_api.c 		if (nft_is_active_next(net, rule))
rule             6630 net/netfilter/nf_tables_api.c 	list_for_each_entry_continue(rule, &chain->rules, list) {
rule             6631 net/netfilter/nf_tables_api.c 		if (nft_is_active_next(net, rule))
rule             6632 net/netfilter/nf_tables_api.c 			chain->rules_next[i++] = rule;
rule             7253 net/netfilter/nf_tables_api.c 	const struct nft_rule *rule;
rule             7262 net/netfilter/nf_tables_api.c 	list_for_each_entry(rule, &chain->rules, list) {
rule             7263 net/netfilter/nf_tables_api.c 		nft_rule_for_each_expr(expr, last, rule) {
rule             7669 net/netfilter/nf_tables_api.c 	struct nft_rule *rule, *nr;
rule             7675 net/netfilter/nf_tables_api.c 	list_for_each_entry_safe(rule, nr, &ctx->chain->rules, list) {
rule             7676 net/netfilter/nf_tables_api.c 		list_del(&rule->list);
rule             7678 net/netfilter/nf_tables_api.c 		nf_tables_rule_release(ctx, rule);
rule             7694 net/netfilter/nf_tables_api.c 	struct nft_rule *rule, *nr;
rule             7710 net/netfilter/nf_tables_api.c 			list_for_each_entry_safe(rule, nr, &chain->rules, list) {
rule             7711 net/netfilter/nf_tables_api.c 				list_del(&rule->list);
rule             7713 net/netfilter/nf_tables_api.c 				nf_tables_rule_release(&ctx, rule);
rule               41 net/netfilter/nf_tables_core.c 				    const struct nft_rule *rule,
rule               45 net/netfilter/nf_tables_core.c 		info->rule = rule;
rule              154 net/netfilter/nf_tables_core.c 	const struct nft_rule *rule;
rule              172 net/netfilter/nf_tables_core.c 	rule = *rules;
rule              175 net/netfilter/nf_tables_core.c 		rule = *rules;
rule              176 net/netfilter/nf_tables_core.c 		nft_rule_for_each_expr(expr, last, rule) {
rule              192 net/netfilter/nf_tables_core.c 			nft_trace_packet(&info, chain, rule,
rule              204 net/netfilter/nf_tables_core.c 		nft_trace_packet(&info, chain, rule,
rule              218 net/netfilter/nf_tables_core.c 		nft_trace_packet(&info, chain, rule,
rule              225 net/netfilter/nf_tables_core.c 		nft_trace_packet(&info, chain, rule,
rule               18 net/netfilter/nf_tables_offload.c 	flow->rule = flow_rule_alloc(num_actions);
rule               19 net/netfilter/nf_tables_offload.c 	if (!flow->rule) {
rule               24 net/netfilter/nf_tables_offload.c 	flow->rule->match.dissector	= &flow->match.dissector;
rule               25 net/netfilter/nf_tables_offload.c 	flow->rule->match.mask		= &flow->match.mask;
rule               26 net/netfilter/nf_tables_offload.c 	flow->rule->match.key		= &flow->match.key;
rule               32 net/netfilter/nf_tables_offload.c 					   const struct nft_rule *rule)
rule               39 net/netfilter/nf_tables_offload.c 	expr = nft_expr_first(rule);
rule               40 net/netfilter/nf_tables_offload.c 	while (expr->ops && expr != nft_expr_last(rule)) {
rule               54 net/netfilter/nf_tables_offload.c 	expr = nft_expr_first(rule);
rule               64 net/netfilter/nf_tables_offload.c 	while (expr->ops && expr != nft_expr_last(rule)) {
rule               91 net/netfilter/nf_tables_offload.c 	flow_action_for_each(i, entry, &flow->rule->action) {
rule              101 net/netfilter/nf_tables_offload.c 	kfree(flow->rule);
rule              162 net/netfilter/nf_tables_offload.c 				 struct nft_rule *rule,
rule              182 net/netfilter/nf_tables_offload.c 	cls_flow.cookie = (unsigned long) rule;
rule              184 net/netfilter/nf_tables_offload.c 		cls_flow.rule = flow->rule;
rule              451 net/netfilter/nf_tables_offload.c 	struct nft_rule *rule;
rule              453 net/netfilter/nf_tables_offload.c 	list_for_each_entry(rule, &chain->rules, list) {
rule              454 net/netfilter/nf_tables_offload.c 		nft_flow_offload_rule(chain, rule,
rule              145 net/netfilter/nf_tables_trace.c 	if (!info->rule)
rule              158 net/netfilter/nf_tables_trace.c 			    cpu_to_be64(info->rule->handle),
rule              135 net/netfilter/nft_immediate.c 	entry = &flow->rule->action.entries[ctx->num_actions++];
rule              439 net/sched/cls_flower.c 	cls_flower.rule = flow_rule_alloc(tcf_exts_num_actions(&f->exts));
rule              440 net/sched/cls_flower.c 	if (!cls_flower.rule)
rule              446 net/sched/cls_flower.c 	cls_flower.rule->match.dissector = &f->mask->dissector;
rule              447 net/sched/cls_flower.c 	cls_flower.rule->match.mask = &f->mask->key;
rule              448 net/sched/cls_flower.c 	cls_flower.rule->match.key = &f->mkey;
rule              451 net/sched/cls_flower.c 	err = tc_setup_flow_action(&cls_flower.rule->action, &f->exts,
rule              454 net/sched/cls_flower.c 		kfree(cls_flower.rule);
rule              464 net/sched/cls_flower.c 	tc_cleanup_flow_action(&cls_flower.rule->action);
rule              465 net/sched/cls_flower.c 	kfree(cls_flower.rule);
rule             1799 net/sched/cls_flower.c 		cls_flower.rule =
rule             1801 net/sched/cls_flower.c 		if (!cls_flower.rule) {
rule             1811 net/sched/cls_flower.c 		cls_flower.rule->match.dissector = &f->mask->dissector;
rule             1812 net/sched/cls_flower.c 		cls_flower.rule->match.mask = &f->mask->key;
rule             1813 net/sched/cls_flower.c 		cls_flower.rule->match.key = &f->mkey;
rule             1815 net/sched/cls_flower.c 		err = tc_setup_flow_action(&cls_flower.rule->action, &f->exts,
rule             1818 net/sched/cls_flower.c 			kfree(cls_flower.rule);
rule             1833 net/sched/cls_flower.c 		tc_cleanup_flow_action(&cls_flower.rule->action);
rule             1834 net/sched/cls_flower.c 		kfree(cls_flower.rule);
rule             1877 net/sched/cls_flower.c 	cls_flower.rule = flow_rule_alloc(0);
rule             1878 net/sched/cls_flower.c 	if (!cls_flower.rule)
rule             1884 net/sched/cls_flower.c 	cls_flower.rule->match.dissector = &tmplt->dissector;
rule             1885 net/sched/cls_flower.c 	cls_flower.rule->match.mask = &tmplt->mask;
rule             1886 net/sched/cls_flower.c 	cls_flower.rule->match.key = &tmplt->dummy_key;
rule             1892 net/sched/cls_flower.c 	kfree(cls_flower.rule);
rule               92 net/sched/cls_matchall.c 	cls_mall.rule =	flow_rule_alloc(tcf_exts_num_actions(&head->exts));
rule               93 net/sched/cls_matchall.c 	if (!cls_mall.rule)
rule              100 net/sched/cls_matchall.c 	err = tc_setup_flow_action(&cls_mall.rule->action, &head->exts, true);
rule              102 net/sched/cls_matchall.c 		kfree(cls_mall.rule);
rule              114 net/sched/cls_matchall.c 	tc_cleanup_flow_action(&cls_mall.rule->action);
rule              115 net/sched/cls_matchall.c 	kfree(cls_mall.rule);
rule              296 net/sched/cls_matchall.c 	cls_mall.rule =	flow_rule_alloc(tcf_exts_num_actions(&head->exts));
rule              297 net/sched/cls_matchall.c 	if (!cls_mall.rule)
rule              305 net/sched/cls_matchall.c 	err = tc_setup_flow_action(&cls_mall.rule->action, &head->exts, true);
rule              307 net/sched/cls_matchall.c 		kfree(cls_mall.rule);
rule              318 net/sched/cls_matchall.c 	tc_cleanup_flow_action(&cls_mall.rule->action);
rule              319 net/sched/cls_matchall.c 	kfree(cls_mall.rule);
rule              865 net/wireless/nl80211.c 				     const struct ieee80211_reg_rule *rule)
rule              881 net/wireless/nl80211.c 				rule->wmm_rule.client[j].cw_min) ||
rule              883 net/wireless/nl80211.c 				rule->wmm_rule.client[j].cw_max) ||
rule              885 net/wireless/nl80211.c 			       rule->wmm_rule.client[j].aifsn) ||
rule              887 net/wireless/nl80211.c 			        rule->wmm_rule.client[j].cot))
rule              977 net/wireless/nl80211.c 		const struct ieee80211_reg_rule *rule =
rule              980 net/wireless/nl80211.c 		if (!IS_ERR_OR_NULL(rule) && rule->has_wmm) {
rule              981 net/wireless/nl80211.c 			if (nl80211_msg_put_wmm_rules(msg, rule))
rule             1519 net/wireless/nl80211.c 	struct nl80211_coalesce_rule_support rule;
rule             1524 net/wireless/nl80211.c 	rule.max_rules = rdev->wiphy.coalesce->n_rules;
rule             1525 net/wireless/nl80211.c 	rule.max_delay = rdev->wiphy.coalesce->max_delay;
rule             1526 net/wireless/nl80211.c 	rule.pat.max_patterns = rdev->wiphy.coalesce->n_patterns;
rule             1527 net/wireless/nl80211.c 	rule.pat.min_pattern_len = rdev->wiphy.coalesce->pattern_min_len;
rule             1528 net/wireless/nl80211.c 	rule.pat.max_pattern_len = rdev->wiphy.coalesce->pattern_max_len;
rule             1529 net/wireless/nl80211.c 	rule.pat.max_pkt_offset = rdev->wiphy.coalesce->max_pkt_offset;
rule             1531 net/wireless/nl80211.c 	if (nla_put(msg, NL80211_ATTR_COALESCE_RULE, sizeof(rule), &rule))
rule             11765 net/wireless/nl80211.c 	struct cfg80211_coalesce_rules *rule;
rule             11779 net/wireless/nl80211.c 		rule = &rdev->coalesce->rules[i];
rule             11781 net/wireless/nl80211.c 				rule->delay))
rule             11785 net/wireless/nl80211.c 				rule->condition))
rule             11793 net/wireless/nl80211.c 		for (j = 0; j < rule->n_patterns; j++) {
rule             11797 net/wireless/nl80211.c 			pat_len = rule->patterns[j].pattern_len;
rule             11800 net/wireless/nl80211.c 				    rule->patterns[j].mask) ||
rule             11802 net/wireless/nl80211.c 				    rule->patterns[j].pattern) ||
rule             11804 net/wireless/nl80211.c 					rule->patterns[j].pkt_offset))
rule             11849 net/wireless/nl80211.c 	struct cfg80211_coalesce_rules *rule;
rule             11855 net/wireless/nl80211.c 		rule = &coalesce->rules[i];
rule             11856 net/wireless/nl80211.c 		for (j = 0; j < rule->n_patterns; j++)
rule             11857 net/wireless/nl80211.c 			kfree(rule->patterns[j].mask);
rule             11858 net/wireless/nl80211.c 		kfree(rule->patterns);
rule             11866 net/wireless/nl80211.c 				       struct nlattr *rule,
rule             11876 net/wireless/nl80211.c 					  rule, nl80211_coalesce_policy, NULL);
rule             11963 net/wireless/nl80211.c 	struct nlattr *rule;
rule             11975 net/wireless/nl80211.c 	nla_for_each_nested(rule, info->attrs[NL80211_ATTR_COALESCE_RULE],
rule             11989 net/wireless/nl80211.c 	nla_for_each_nested(rule, info->attrs[NL80211_ATTR_COALESCE_RULE],
rule             11991 net/wireless/nl80211.c 		err = nl80211_parse_coalesce_rule(rdev, rule,
rule              641 net/wireless/reg.c static bool valid_wmm(struct fwdb_wmm_rule *rule)
rule              643 net/wireless/reg.c 	struct fwdb_wmm_ac *ac = (struct fwdb_wmm_ac *)rule;
rule              663 net/wireless/reg.c 	struct fwdb_rule *rule = (void *)(data + (rule_ptr << 2));
rule              665 net/wireless/reg.c 	if ((u8 *)rule + sizeof(rule->len) > data + size)
rule              669 net/wireless/reg.c 	if (rule->len < offsetofend(struct fwdb_rule, max_bw))
rule              671 net/wireless/reg.c 	if (rule->len >= offsetofend(struct fwdb_rule, wmm_ptr)) {
rule              672 net/wireless/reg.c 		u32 wmm_ptr = be16_to_cpu(rule->wmm_ptr) << 2;
rule              859 net/wireless/reg.c 			 const struct fwdb_rule *rule,
rule              866 net/wireless/reg.c 	wmm_ptr = be16_to_cpu(rule->wmm_ptr) << 2;
rule              871 net/wireless/reg.c 		       be32_to_cpu(rule->start), be32_to_cpu(rule->end),
rule              903 net/wireless/reg.c 		struct fwdb_rule *rule = (void *)((u8 *)db + rule_ptr);
rule              905 net/wireless/reg.c 		if (rule->len < offsetofend(struct fwdb_rule, wmm_ptr))
rule              908 net/wireless/reg.c 		if (freq >= KHZ_TO_MHZ(be32_to_cpu(rule->start)) &&
rule              909 net/wireless/reg.c 		    freq <= KHZ_TO_MHZ(be32_to_cpu(rule->end))) {
rule              910 net/wireless/reg.c 			set_wmm_rule(db, country, rule, rrule);
rule              918 net/wireless/reg.c int reg_query_regdb_wmm(char *alpha2, int freq, struct ieee80211_reg_rule *rule)
rule              932 net/wireless/reg.c 			return __regdb_query_wmm(regdb, country, freq, rule);
rule              962 net/wireless/reg.c 		struct fwdb_rule *rule = (void *)((u8 *)db + rule_ptr);
rule              965 net/wireless/reg.c 		rrule->freq_range.start_freq_khz = be32_to_cpu(rule->start);
rule              966 net/wireless/reg.c 		rrule->freq_range.end_freq_khz = be32_to_cpu(rule->end);
rule              967 net/wireless/reg.c 		rrule->freq_range.max_bandwidth_khz = be32_to_cpu(rule->max_bw);
rule              970 net/wireless/reg.c 		rrule->power_rule.max_eirp = be16_to_cpu(rule->max_eirp);
rule              973 net/wireless/reg.c 		if (rule->flags & FWDB_FLAG_NO_OFDM)
rule              975 net/wireless/reg.c 		if (rule->flags & FWDB_FLAG_NO_OUTDOOR)
rule              977 net/wireless/reg.c 		if (rule->flags & FWDB_FLAG_DFS)
rule              979 net/wireless/reg.c 		if (rule->flags & FWDB_FLAG_NO_IR)
rule              981 net/wireless/reg.c 		if (rule->flags & FWDB_FLAG_AUTO_BW)
rule              987 net/wireless/reg.c 		if (rule->len >= offsetofend(struct fwdb_rule, cac_timeout))
rule              989 net/wireless/reg.c 				1000 * be16_to_cpu(rule->cac_timeout);
rule              990 net/wireless/reg.c 		if (rule->len >= offsetofend(struct fwdb_rule, wmm_ptr))
rule              991 net/wireless/reg.c 			set_wmm_rule(db, country, rule, rrule);
rule             1148 net/wireless/reg.c 				 const struct ieee80211_reg_rule *rule)
rule             1150 net/wireless/reg.c 	const struct ieee80211_freq_range *freq_range = &rule->freq_range;
rule             1156 net/wireless/reg.c 		if (rule == &rd->reg_rules[idx])
rule             1178 net/wireless/reg.c 	freq_range = &rule->freq_range;
rule             1197 net/wireless/reg.c 				   const struct ieee80211_reg_rule *rule)
rule             1199 net/wireless/reg.c 	unsigned int bw = reg_get_max_bandwidth_from_range(rd, rule);
rule             1201 net/wireless/reg.c 	if (rule->flags & NL80211_RRF_NO_160MHZ)
rule             1203 net/wireless/reg.c 	if (rule->flags & NL80211_RRF_NO_80MHZ)
rule             1210 net/wireless/reg.c 	if (rule->flags & NL80211_RRF_NO_HT40MINUS &&
rule             1211 net/wireless/reg.c 	    rule->flags & NL80211_RRF_NO_HT40PLUS)
rule             1218 net/wireless/reg.c static bool is_valid_reg_rule(const struct ieee80211_reg_rule *rule)
rule             1220 net/wireless/reg.c 	const struct ieee80211_freq_range *freq_range = &rule->freq_range;
rule             1446 net/wireless/reg.c static void add_rule(struct ieee80211_reg_rule *rule,
rule             1455 net/wireless/reg.c 		if (rule_contains(tmp_rule, rule))
rule             1459 net/wireless/reg.c 		if (rule_contains(rule, tmp_rule)) {
rule             1460 net/wireless/reg.c 			memcpy(tmp_rule, rule, sizeof(*rule));
rule             1465 net/wireless/reg.c 	memcpy(&reg_rules[*n_rules], rule, sizeof(*rule));
rule               63 net/wireless/reg.h 				   const struct ieee80211_reg_rule *rule);
rule              169 security/apparmor/audit.c 	struct aa_audit_rule *rule = vrule;
rule              171 security/apparmor/audit.c 	if (rule) {
rule              172 security/apparmor/audit.c 		if (!IS_ERR(rule->label))
rule              173 security/apparmor/audit.c 			aa_put_label(rule->label);
rule              174 security/apparmor/audit.c 		kfree(rule);
rule              180 security/apparmor/audit.c 	struct aa_audit_rule *rule;
rule              191 security/apparmor/audit.c 	rule = kzalloc(sizeof(struct aa_audit_rule), GFP_KERNEL);
rule              193 security/apparmor/audit.c 	if (!rule)
rule              197 security/apparmor/audit.c 	rule->label = aa_label_parse(&root_ns->unconfined->label, rulestr,
rule              199 security/apparmor/audit.c 	if (IS_ERR(rule->label)) {
rule              200 security/apparmor/audit.c 		int err = PTR_ERR(rule->label);
rule              201 security/apparmor/audit.c 		aa_audit_rule_free(rule);
rule              205 security/apparmor/audit.c 	*vrule = rule;
rule              209 security/apparmor/audit.c int aa_audit_rule_known(struct audit_krule *rule)
rule              213 security/apparmor/audit.c 	for (i = 0; i < rule->field_count; i++) {
rule              214 security/apparmor/audit.c 		struct audit_field *f = &rule->fields[i];
rule              227 security/apparmor/audit.c 	struct aa_audit_rule *rule = vrule;
rule              236 security/apparmor/audit.c 	if (aa_label_is_subset(label, rule->label))
rule              190 security/apparmor/include/audit.h int aa_audit_rule_known(struct audit_krule *rule);
rule               77 security/integrity/ima/ima_policy.c 		void *rule;	/* LSM file metadata specific */
rule              257 security/integrity/ima/ima_policy.c 		kfree(entry->lsm[i].rule);
rule              292 security/integrity/ima/ima_policy.c 					  &nentry->lsm[i].rule);
rule              293 security/integrity/ima/ima_policy.c 		if (!nentry->lsm[i].rule)
rule              369 security/integrity/ima/ima_policy.c static bool ima_match_rules(struct ima_rule_entry *rule, struct inode *inode,
rule              376 security/integrity/ima/ima_policy.c 		if ((rule->flags & IMA_FUNC) && (rule->func == func))
rule              380 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_FUNC) &&
rule              381 security/integrity/ima/ima_policy.c 	    (rule->func != func && func != POST_SETATTR))
rule              383 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_MASK) &&
rule              384 security/integrity/ima/ima_policy.c 	    (rule->mask != mask && func != POST_SETATTR))
rule              386 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_INMASK) &&
rule              387 security/integrity/ima/ima_policy.c 	    (!(rule->mask & mask) && func != POST_SETATTR))
rule              389 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_FSMAGIC)
rule              390 security/integrity/ima/ima_policy.c 	    && rule->fsmagic != inode->i_sb->s_magic)
rule              392 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_FSNAME)
rule              393 security/integrity/ima/ima_policy.c 	    && strcmp(rule->fsname, inode->i_sb->s_type->name))
rule              395 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_FSUUID) &&
rule              396 security/integrity/ima/ima_policy.c 	    !uuid_equal(&rule->fsuuid, &inode->i_sb->s_uuid))
rule              398 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_UID) && !rule->uid_op(cred->uid, rule->uid))
rule              400 security/integrity/ima/ima_policy.c 	if (rule->flags & IMA_EUID) {
rule              402 security/integrity/ima/ima_policy.c 			if (!rule->uid_op(cred->euid, rule->uid)
rule              403 security/integrity/ima/ima_policy.c 			    && !rule->uid_op(cred->suid, rule->uid)
rule              404 security/integrity/ima/ima_policy.c 			    && !rule->uid_op(cred->uid, rule->uid))
rule              406 security/integrity/ima/ima_policy.c 		} else if (!rule->uid_op(cred->euid, rule->uid))
rule              410 security/integrity/ima/ima_policy.c 	if ((rule->flags & IMA_FOWNER) &&
rule              411 security/integrity/ima/ima_policy.c 	    !rule->fowner_op(inode->i_uid, rule->fowner))
rule              417 security/integrity/ima/ima_policy.c 		if (!rule->lsm[i].rule) {
rule              418 security/integrity/ima/ima_policy.c 			if (!rule->lsm[i].args_p)
rule              429 security/integrity/ima/ima_policy.c 							rule->lsm[i].type,
rule              431 security/integrity/ima/ima_policy.c 							rule->lsm[i].rule);
rule              437 security/integrity/ima/ima_policy.c 							rule->lsm[i].type,
rule              439 security/integrity/ima/ima_policy.c 							rule->lsm[i].rule);
rule              453 security/integrity/ima/ima_policy.c static int get_subaction(struct ima_rule_entry *rule, enum ima_hooks func)
rule              455 security/integrity/ima/ima_policy.c 	if (!(rule->flags & IMA_FUNC))
rule              601 security/integrity/ima/ima_policy.c static int ima_parse_rule(char *rule, struct ima_rule_entry *entry);
rule              625 security/integrity/ima/ima_policy.c 		char rule[255];
rule              628 security/integrity/ima/ima_policy.c 		result = strlcpy(rule, *rules, sizeof(rule));
rule              631 security/integrity/ima/ima_policy.c 		result = ima_parse_rule(rule, &arch_policy_entry[i]);
rule              634 security/integrity/ima/ima_policy.c 				rule);
rule              814 security/integrity/ima/ima_policy.c 	if (entry->lsm[lsm_rule].rule)
rule              825 security/integrity/ima/ima_policy.c 					   &entry->lsm[lsm_rule].rule);
rule              826 security/integrity/ima/ima_policy.c 	if (!entry->lsm[lsm_rule].rule) {
rule              891 security/integrity/ima/ima_policy.c static int ima_parse_rule(char *rule, struct ima_rule_entry *entry)
rule              908 security/integrity/ima/ima_policy.c 	while ((p = strsep(&rule, " \t")) != NULL) {
rule             1251 security/integrity/ima/ima_policy.c ssize_t ima_parse_add_rule(char *rule)
rule             1259 security/integrity/ima/ima_policy.c 	p = strsep(&rule, "\n");
rule             1474 security/integrity/ima/ima_policy.c 		if (entry->lsm[i].rule) {
rule               33 security/safesetid/lsm.c 	struct setuid_rule *rule;
rule               36 security/safesetid/lsm.c 	hash_for_each_possible(policy->rules, rule, next, __kuid_val(src)) {
rule               37 security/safesetid/lsm.c 		if (!uid_eq(rule->src_uid, src))
rule               39 security/safesetid/lsm.c 		if (uid_eq(rule->dst_uid, dst))
rule               31 security/safesetid/securityfs.c 	struct setuid_rule *rule)
rule               52 security/safesetid/securityfs.c 	rule->src_uid = make_kuid(file->f_cred->user_ns, parsed_parent);
rule               53 security/safesetid/securityfs.c 	rule->dst_uid = make_kuid(file->f_cred->user_ns, parsed_child);
rule               54 security/safesetid/securityfs.c 	if (!uid_valid(rule->src_uid) || !uid_valid(rule->dst_uid))
rule               65 security/safesetid/securityfs.c 	struct setuid_rule *rule;
rule               68 security/safesetid/securityfs.c 	hash_for_each_safe(pol->rules, bucket, tmp, rule, next)
rule               69 security/safesetid/securityfs.c 		kfree(rule);
rule               79 security/safesetid/securityfs.c static void insert_rule(struct setuid_ruleset *pol, struct setuid_rule *rule)
rule               81 security/safesetid/securityfs.c 	hash_add(pol->rules, &rule->next, __kuid_val(rule->src_uid));
rule               87 security/safesetid/securityfs.c 	struct setuid_rule *rule, *nrule;
rule               90 security/safesetid/securityfs.c 	hash_for_each(pol->rules, bucket, rule, next) {
rule               91 security/safesetid/securityfs.c 		if (_setuid_policy_lookup(pol, rule->dst_uid, INVALID_UID) ==
rule               94 security/safesetid/securityfs.c 				__kuid_val(rule->src_uid),
rule               95 security/safesetid/securityfs.c 				__kuid_val(rule->dst_uid));
rule              102 security/safesetid/securityfs.c 			nrule->src_uid = rule->dst_uid;
rule              103 security/safesetid/securityfs.c 			nrule->dst_uid = rule->dst_uid;
rule              136 security/safesetid/securityfs.c 		struct setuid_rule *rule;
rule              145 security/safesetid/securityfs.c 		rule = kmalloc(sizeof(struct setuid_rule), GFP_KERNEL);
rule              146 security/safesetid/securityfs.c 		if (!rule) {
rule              151 security/safesetid/securityfs.c 		err = parse_policy_line(file, p, rule);
rule              155 security/safesetid/securityfs.c 		if (_setuid_policy_lookup(pol, rule->src_uid, rule->dst_uid) ==
rule              162 security/safesetid/securityfs.c 		insert_rule(pol, rule);
rule              167 security/safesetid/securityfs.c 		kfree(rule);
rule               26 security/selinux/include/audit.h int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **rule);
rule               35 security/selinux/include/audit.h void selinux_audit_rule_free(void *rule);
rule               47 security/selinux/include/audit.h int selinux_audit_rule_match(u32 sid, u32 field, u32 op, void *rule);
rule             3272 security/selinux/ss/services.c 	struct selinux_audit_rule *rule = vrule;
rule             3274 security/selinux/ss/services.c 	if (rule) {
rule             3275 security/selinux/ss/services.c 		context_destroy(&rule->au_ctxt);
rule             3276 security/selinux/ss/services.c 		kfree(rule);
rule             3288 security/selinux/ss/services.c 	struct selinux_audit_rule **rule = (struct selinux_audit_rule **)vrule;
rule             3291 security/selinux/ss/services.c 	*rule = NULL;
rule             3374 security/selinux/ss/services.c 	*rule = tmprule;
rule             3380 security/selinux/ss/services.c int selinux_audit_rule_known(struct audit_krule *rule)
rule             3384 security/selinux/ss/services.c 	for (i = 0; i < rule->field_count; i++) {
rule             3385 security/selinux/ss/services.c 		struct audit_field *f = &rule->fields[i];
rule             3409 security/selinux/ss/services.c 	struct selinux_audit_rule *rule = vrule;
rule             3412 security/selinux/ss/services.c 	if (unlikely(!rule)) {
rule             3419 security/selinux/ss/services.c 	if (rule->au_seqno < state->ss->latest_granting) {
rule             3439 security/selinux/ss/services.c 			match = (ctxt->user == rule->au_ctxt.user);
rule             3442 security/selinux/ss/services.c 			match = (ctxt->user != rule->au_ctxt.user);
rule             3450 security/selinux/ss/services.c 			match = (ctxt->role == rule->au_ctxt.role);
rule             3453 security/selinux/ss/services.c 			match = (ctxt->role != rule->au_ctxt.role);
rule             3461 security/selinux/ss/services.c 			match = (ctxt->type == rule->au_ctxt.type);
rule             3464 security/selinux/ss/services.c 			match = (ctxt->type != rule->au_ctxt.type);
rule             3477 security/selinux/ss/services.c 			match = mls_level_eq(&rule->au_ctxt.range.level[0],
rule             3481 security/selinux/ss/services.c 			match = !mls_level_eq(&rule->au_ctxt.range.level[0],
rule             3485 security/selinux/ss/services.c 			match = (mls_level_dom(&rule->au_ctxt.range.level[0],
rule             3487 security/selinux/ss/services.c 				 !mls_level_eq(&rule->au_ctxt.range.level[0],
rule             3491 security/selinux/ss/services.c 			match = mls_level_dom(&rule->au_ctxt.range.level[0],
rule             3496 security/selinux/ss/services.c 					      &rule->au_ctxt.range.level[0]) &&
rule             3498 security/selinux/ss/services.c 					       &rule->au_ctxt.range.level[0]));
rule             3502 security/selinux/ss/services.c 					      &rule->au_ctxt.range.level[0]);
rule             4341 security/smack/smack_lsm.c 	char **rule = (char **)vrule;
rule             4342 security/smack/smack_lsm.c 	*rule = NULL;
rule             4354 security/smack/smack_lsm.c 	*rule = skp->smk_known;
rule             4395 security/smack/smack_lsm.c 	char *rule = vrule;
rule             4397 security/smack/smack_lsm.c 	if (unlikely(!rule)) {
rule             4413 security/smack/smack_lsm.c 		return (rule == skp->smk_known);
rule             4415 security/smack/smack_lsm.c 		return (rule != skp->smk_known);
rule              316 security/smack/smackfs.c 				struct smack_parsed_rule *rule, int import,
rule              323 security/smack/smackfs.c 		rule->smk_subject = smk_import_entry(subject, len);
rule              324 security/smack/smackfs.c 		if (IS_ERR(rule->smk_subject))
rule              325 security/smack/smackfs.c 			return PTR_ERR(rule->smk_subject);
rule              327 security/smack/smackfs.c 		rule->smk_object = smk_import_entry(object, len);
rule              328 security/smack/smackfs.c 		if (IS_ERR(rule->smk_object))
rule              329 security/smack/smackfs.c 			return PTR_ERR(rule->smk_object);
rule              338 security/smack/smackfs.c 		rule->smk_subject = skp;
rule              347 security/smack/smackfs.c 		rule->smk_object = skp;
rule              350 security/smack/smackfs.c 	rule->smk_access1 = smk_perm_from_str(access1);
rule              352 security/smack/smackfs.c 		rule->smk_access2 = smk_perm_from_str(access2);
rule              354 security/smack/smackfs.c 		rule->smk_access2 = ~rule->smk_access1;
rule              367 security/smack/smackfs.c static int smk_parse_rule(const char *data, struct smack_parsed_rule *rule,
rule              373 security/smack/smackfs.c 			   data + SMK_LABELLEN + SMK_LABELLEN, NULL, rule,
rule              387 security/smack/smackfs.c static ssize_t smk_parse_long_rule(char *data, struct smack_parsed_rule *rule,
rule              417 security/smack/smackfs.c 	rc = smk_fill_rule(tok[0], tok[1], tok[2], tok[3], rule, import, 0);
rule              448 security/smack/smackfs.c 	struct smack_parsed_rule rule;
rule              496 security/smack/smackfs.c 			rc = smk_parse_rule(data, &rule, 1);
rule              501 security/smack/smackfs.c 			rc = smk_parse_long_rule(data + cnt, &rule, 1, tokens);
rule              512 security/smack/smackfs.c 			rc = smk_set_access(&rule, &rule.smk_subject->smk_rules,
rule              513 security/smack/smackfs.c 				&rule.smk_subject->smk_rules_lock);
rule              515 security/smack/smackfs.c 			rc = smk_set_access(&rule, rule_list, rule_lock);
rule              842 security/smack/smackfs.c 	char *rule;
rule              863 security/smack/smackfs.c 	rule = data;
rule              870 security/smack/smackfs.c 	skp = smk_import_entry(rule, 0);
rule              877 security/smack/smackfs.c 		rule += SMK_LABELLEN;
rule              879 security/smack/smackfs.c 		rule += strlen(skp->smk_known) + 1;
rule              881 security/smack/smackfs.c 	if (rule > data + count) {
rule              886 security/smack/smackfs.c 	ret = sscanf(rule, "%d", &maplevel);
rule              890 security/smack/smackfs.c 	rule += SMK_DIGITLEN;
rule              891 security/smack/smackfs.c 	if (rule > data + count) {
rule              896 security/smack/smackfs.c 	ret = sscanf(rule, "%d", &catlen);
rule              907 security/smack/smackfs.c 		rule += SMK_DIGITLEN;
rule              908 security/smack/smackfs.c 		ret = sscanf(rule, "%u", &cat);
rule             2271 security/smack/smackfs.c 	struct smack_parsed_rule rule;
rule             2282 security/smack/smackfs.c 		res = smk_parse_rule(data, &rule, 0);
rule             2287 security/smack/smackfs.c 		res = smk_parse_long_rule(data, &rule, 0, 3);
rule             2291 security/smack/smackfs.c 		res = smk_access(rule.smk_subject, rule.smk_object,
rule             2292 security/smack/smackfs.c 				 rule.smk_access1, NULL);
rule              381 sound/arm/aaci.c 	struct snd_pcm_hw_rule *rule)
rule              384 sound/arm/aaci.c 	struct aaci *aaci = rule->private;
rule              395 sound/arm/aaci.c 	return snd_interval_list(hw_param_interval(p, rule->var),
rule               26 sound/core/pcm_drm_eld.c 			   struct snd_pcm_hw_rule *rule)
rule               28 sound/core/pcm_drm_eld.c 	struct snd_interval *r = hw_param_interval(params, rule->var);
rule               31 sound/core/pcm_drm_eld.c 	const u8 *sad, *eld = rule->private;
rule               54 sound/core/pcm_drm_eld.c 			      struct snd_pcm_hw_rule *rule)
rule               56 sound/core/pcm_drm_eld.c 	struct snd_interval *c = hw_param_interval(params, rule->var);
rule               60 sound/core/pcm_drm_eld.c 	const u8 *sad, *eld = rule->private;
rule             1242 sound/core/pcm_lib.c 				struct snd_pcm_hw_rule *rule)
rule             1244 sound/core/pcm_lib.c 	struct snd_pcm_hw_constraint_list *list = rule->private;
rule             1245 sound/core/pcm_lib.c 	return snd_interval_list(hw_param_interval(params, rule->var), list->count, list->list, list->mask);
rule             1272 sound/core/pcm_lib.c 				  struct snd_pcm_hw_rule *rule)
rule             1274 sound/core/pcm_lib.c 	struct snd_pcm_hw_constraint_ranges *r = rule->private;
rule             1275 sound/core/pcm_lib.c 	return snd_interval_ranges(hw_param_interval(params, rule->var),
rule             1303 sound/core/pcm_lib.c 				   struct snd_pcm_hw_rule *rule)
rule             1305 sound/core/pcm_lib.c 	const struct snd_pcm_hw_constraint_ratnums *r = rule->private;
rule             1308 sound/core/pcm_lib.c 	err = snd_interval_ratnum(hw_param_interval(params, rule->var),
rule             1310 sound/core/pcm_lib.c 	if (err >= 0 && den && rule->var == SNDRV_PCM_HW_PARAM_RATE) {
rule             1338 sound/core/pcm_lib.c 				   struct snd_pcm_hw_rule *rule)
rule             1340 sound/core/pcm_lib.c 	const struct snd_pcm_hw_constraint_ratdens *r = rule->private;
rule             1342 sound/core/pcm_lib.c 	int err = snd_interval_ratden(hw_param_interval(params, rule->var),
rule             1344 sound/core/pcm_lib.c 	if (err >= 0 && den && rule->var == SNDRV_PCM_HW_PARAM_RATE) {
rule             1372 sound/core/pcm_lib.c 				  struct snd_pcm_hw_rule *rule)
rule             1374 sound/core/pcm_lib.c 	unsigned int l = (unsigned long) rule->private;
rule             1418 sound/core/pcm_lib.c 				struct snd_pcm_hw_rule *rule)
rule             1420 sound/core/pcm_lib.c 	unsigned long step = (unsigned long) rule->private;
rule             1421 sound/core/pcm_lib.c 	return snd_interval_step(hw_param_interval(params, rule->var), step);
rule             1444 sound/core/pcm_lib.c static int snd_pcm_hw_rule_pow2(struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule *rule)
rule             1452 sound/core/pcm_lib.c 	return snd_interval_list(hw_param_interval(params, rule->var),
rule             1475 sound/core/pcm_lib.c 					   struct snd_pcm_hw_rule *rule)
rule             1477 sound/core/pcm_lib.c 	unsigned int base_rate = (unsigned int)(uintptr_t)rule->private;
rule             2103 sound/core/pcm_native.c 			       struct snd_pcm_hw_rule *rule)
rule             2106 sound/core/pcm_native.c 	snd_interval_mul(hw_param_interval_c(params, rule->deps[0]),
rule             2107 sound/core/pcm_native.c 		     hw_param_interval_c(params, rule->deps[1]), &t);
rule             2108 sound/core/pcm_native.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule             2112 sound/core/pcm_native.c 			       struct snd_pcm_hw_rule *rule)
rule             2115 sound/core/pcm_native.c 	snd_interval_div(hw_param_interval_c(params, rule->deps[0]),
rule             2116 sound/core/pcm_native.c 		     hw_param_interval_c(params, rule->deps[1]), &t);
rule             2117 sound/core/pcm_native.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule             2121 sound/core/pcm_native.c 				   struct snd_pcm_hw_rule *rule)
rule             2124 sound/core/pcm_native.c 	snd_interval_muldivk(hw_param_interval_c(params, rule->deps[0]),
rule             2125 sound/core/pcm_native.c 			 hw_param_interval_c(params, rule->deps[1]),
rule             2126 sound/core/pcm_native.c 			 (unsigned long) rule->private, &t);
rule             2127 sound/core/pcm_native.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule             2131 sound/core/pcm_native.c 				   struct snd_pcm_hw_rule *rule)
rule             2134 sound/core/pcm_native.c 	snd_interval_mulkdiv(hw_param_interval_c(params, rule->deps[0]),
rule             2135 sound/core/pcm_native.c 			 (unsigned long) rule->private,
rule             2136 sound/core/pcm_native.c 			 hw_param_interval_c(params, rule->deps[1]), &t);
rule             2137 sound/core/pcm_native.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule             2141 sound/core/pcm_native.c 				  struct snd_pcm_hw_rule *rule)
rule             2145 sound/core/pcm_native.c 				hw_param_interval_c(params, rule->deps[0]);
rule             2163 sound/core/pcm_native.c 				       struct snd_pcm_hw_rule *rule)
rule             2184 sound/core/pcm_native.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule             2202 sound/core/pcm_native.c 				struct snd_pcm_hw_rule *rule)
rule             2204 sound/core/pcm_native.c 	struct snd_pcm_hardware *hw = rule->private;
rule             2205 sound/core/pcm_native.c 	return snd_interval_list(hw_param_interval(params, rule->var),
rule             2211 sound/core/pcm_native.c 					    struct snd_pcm_hw_rule *rule)
rule             2214 sound/core/pcm_native.c 	struct snd_pcm_substream *substream = rule->private;
rule             2220 sound/core/pcm_native.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule              604 sound/drivers/aloop.c 		       struct snd_pcm_hw_rule *rule)
rule              606 sound/drivers/aloop.c 	struct loopback_pcm *dpcm = rule->private;
rule              615 sound/drivers/aloop.c 	return snd_mask_refine(hw_param_mask(params, rule->var), &m);
rule              619 sound/drivers/aloop.c 		     struct snd_pcm_hw_rule *rule)
rule              621 sound/drivers/aloop.c 	struct loopback_pcm *dpcm = rule->private;
rule              631 sound/drivers/aloop.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule              635 sound/drivers/aloop.c 			 struct snd_pcm_hw_rule *rule)
rule              637 sound/drivers/aloop.c 	struct loopback_pcm *dpcm = rule->private;
rule              647 sound/drivers/aloop.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule              153 sound/firewire/amdtp-stream.c 				    struct snd_pcm_hw_rule *rule)
rule              155 sound/firewire/amdtp-stream.c 	struct snd_interval *s = hw_param_interval(params, rule->var);
rule               11 sound/firewire/bebob/bebob_pcm.c hw_rule_rate(struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule *rule)
rule               13 sound/firewire/bebob/bebob_pcm.c 	struct snd_bebob_stream_formation *formations = rule->private;
rule               39 sound/firewire/bebob/bebob_pcm.c hw_rule_channels(struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule *rule)
rule               41 sound/firewire/bebob/bebob_pcm.c 	struct snd_bebob_stream_formation *formations = rule->private;
rule               12 sound/firewire/dice/dice-pcm.c 				struct snd_pcm_hw_rule *rule)
rule               14 sound/firewire/dice/dice-pcm.c 	struct snd_pcm_substream *substream = rule->private;
rule               50 sound/firewire/dice/dice-pcm.c 				    struct snd_pcm_hw_rule *rule)
rule               52 sound/firewire/dice/dice-pcm.c 	struct snd_pcm_substream *substream = rule->private;
rule               11 sound/firewire/digi00x/digi00x-pcm.c 			struct snd_pcm_hw_rule *rule)
rule               35 sound/firewire/digi00x/digi00x-pcm.c 			    struct snd_pcm_hw_rule *rule)
rule               11 sound/firewire/fireface/ff-pcm.c 			struct snd_pcm_hw_rule *rule)
rule               13 sound/firewire/fireface/ff-pcm.c 	const unsigned int *pcm_channels = rule->private;
rule               42 sound/firewire/fireface/ff-pcm.c 			    struct snd_pcm_hw_rule *rule)
rule               44 sound/firewire/fireface/ff-pcm.c 	const unsigned int *pcm_channels = rule->private;
rule               64 sound/firewire/fireworks/fireworks_pcm.c hw_rule_rate(struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule *rule)
rule               66 sound/firewire/fireworks/fireworks_pcm.c 	unsigned int *pcm_channels = rule->private;
rule               89 sound/firewire/fireworks/fireworks_pcm.c hw_rule_channels(struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule *rule)
rule               91 sound/firewire/fireworks/fireworks_pcm.c 	unsigned int *pcm_channels = rule->private;
rule               12 sound/firewire/motu/motu-pcm.c 				struct snd_pcm_hw_rule *rule)
rule               14 sound/firewire/motu/motu-pcm.c 	struct snd_motu_packet_format *formats = rule->private;
rule               42 sound/firewire/motu/motu-pcm.c 				    struct snd_pcm_hw_rule *rule)
rule               44 sound/firewire/motu/motu-pcm.c 	struct snd_motu_packet_format *formats = rule->private;
rule               11 sound/firewire/oxfw/oxfw-pcm.c 			struct snd_pcm_hw_rule *rule)
rule               13 sound/firewire/oxfw/oxfw-pcm.c 	u8 **formats = rule->private;
rule               42 sound/firewire/oxfw/oxfw-pcm.c 			    struct snd_pcm_hw_rule *rule)
rule               44 sound/firewire/oxfw/oxfw-pcm.c 	u8 **formats = rule->private;
rule               63 sound/isa/sb/sb8_main.c 					       struct snd_pcm_hw_rule *rule)
rule               80 sound/isa/sb/sb8_main.c 					       struct snd_pcm_hw_rule *rule)
rule              684 sound/pci/ac97/ac97_pcm.c 					  struct snd_pcm_hw_rule *rule)
rule              699 sound/pci/ac97/ac97_pcm.c 					      struct snd_pcm_hw_rule *rule)
rule              107 sound/pci/echoaudio/echoaudio.c 					      struct snd_pcm_hw_rule *rule)
rule              135 sound/pci/echoaudio/echoaudio.c 					      struct snd_pcm_hw_rule *rule)
rule              169 sound/pci/echoaudio/echoaudio.c 					       struct snd_pcm_hw_rule *rule)
rule              204 sound/pci/echoaudio/echoaudio.c 					       struct snd_pcm_hw_rule *rule)
rule              242 sound/pci/echoaudio/echoaudio.c 			       struct snd_pcm_hw_rule *rule)
rule              246 sound/pci/echoaudio/echoaudio.c 	struct echoaudio *chip = rule->private;
rule             4271 sound/pci/rme9652/hdsp.c 					struct snd_pcm_hw_rule *rule)
rule             4273 sound/pci/rme9652/hdsp.c 	struct hdsp *hdsp = rule->private;
rule             4290 sound/pci/rme9652/hdsp.c 					struct snd_pcm_hw_rule *rule)
rule             4293 sound/pci/rme9652/hdsp.c 	struct hdsp *hdsp = rule->private;
rule             4308 sound/pci/rme9652/hdsp.c 					     struct snd_pcm_hw_rule *rule)
rule             4310 sound/pci/rme9652/hdsp.c 	struct hdsp *hdsp = rule->private;
rule             4339 sound/pci/rme9652/hdsp.c 					     struct snd_pcm_hw_rule *rule)
rule             4341 sound/pci/rme9652/hdsp.c 	struct hdsp *hdsp = rule->private;
rule             4370 sound/pci/rme9652/hdsp.c 					     struct snd_pcm_hw_rule *rule)
rule             4372 sound/pci/rme9652/hdsp.c 	struct hdsp *hdsp = rule->private;
rule             4401 sound/pci/rme9652/hdsp.c 					     struct snd_pcm_hw_rule *rule)
rule             4403 sound/pci/rme9652/hdsp.c 	struct hdsp *hdsp = rule->private;
rule             5874 sound/pci/rme9652/hdspm.c 					   struct snd_pcm_hw_rule *rule)
rule             5876 sound/pci/rme9652/hdspm.c 	struct hdspm *hdspm = rule->private;
rule             5909 sound/pci/rme9652/hdspm.c 					   struct snd_pcm_hw_rule * rule)
rule             5911 sound/pci/rme9652/hdspm.c 	struct hdspm *hdspm = rule->private;
rule             5944 sound/pci/rme9652/hdspm.c 					   struct snd_pcm_hw_rule * rule)
rule             5946 sound/pci/rme9652/hdspm.c 	struct hdspm *hdspm = rule->private;
rule             5978 sound/pci/rme9652/hdspm.c 					   struct snd_pcm_hw_rule *rule)
rule             5980 sound/pci/rme9652/hdspm.c 	struct hdspm *hdspm = rule->private;
rule             6013 sound/pci/rme9652/hdspm.c 				      struct snd_pcm_hw_rule *rule)
rule             6016 sound/pci/rme9652/hdspm.c 	struct hdspm *hdspm = rule->private;
rule             6027 sound/pci/rme9652/hdspm.c 				      struct snd_pcm_hw_rule *rule)
rule             6030 sound/pci/rme9652/hdspm.c 	struct hdspm *hdspm = rule->private;
rule             2225 sound/pci/rme9652/rme9652.c 					struct snd_pcm_hw_rule *rule)
rule             2227 sound/pci/rme9652/rme9652.c 	struct snd_rme9652 *rme9652 = rule->private;
rule             2234 sound/pci/rme9652/rme9652.c 					     struct snd_pcm_hw_rule *rule)
rule             2236 sound/pci/rme9652/rme9652.c 	struct snd_rme9652 *rme9652 = rule->private;
rule             2258 sound/pci/rme9652/rme9652.c 					     struct snd_pcm_hw_rule *rule)
rule             2260 sound/pci/rme9652/rme9652.c 	struct snd_rme9652 *rme9652 = rule->private;
rule              544 sound/pci/sonicvibes.c 						 struct snd_pcm_hw_rule *rule)
rule              540 sound/ppc/pmac.c 				 struct snd_pcm_hw_rule *rule)
rule              542 sound/ppc/pmac.c 	struct snd_pmac *chip = rule->private;
rule              543 sound/ppc/pmac.c 	struct pmac_stream *rec = snd_pmac_get_stream(chip, rule->deps[0]);
rule              554 sound/ppc/pmac.c 	return snd_interval_list(hw_param_interval(params, rule->var),
rule              559 sound/ppc/pmac.c 				   struct snd_pcm_hw_rule *rule)
rule              561 sound/ppc/pmac.c 	struct snd_pmac *chip = rule->private;
rule              562 sound/ppc/pmac.c 	struct pmac_stream *rec = snd_pmac_get_stream(chip, rule->deps[0]);
rule              192 sound/soc/atmel/atmel_ssc_dai.c 				  struct snd_pcm_hw_rule *rule)
rule              194 sound/soc/atmel/atmel_ssc_dai.c 	struct atmel_ssc_info *ssc_p = rule->private;
rule              196 sound/soc/atmel/atmel_ssc_dai.c 	struct snd_interval *i = hw_param_interval(params, rule->var);
rule              240 sound/soc/atmel/atmel_ssc_dai.c 		if (ret >= 0 && den && rule->var == SNDRV_PCM_HW_PARAM_RATE) {
rule               58 sound/soc/codecs/lochnagar-sc.c 				     struct snd_pcm_hw_rule *rule)
rule               62 sound/soc/codecs/lochnagar-sc.c 		.max = 24576000 / hw_param_interval(params, rule->deps[0])->max,
rule               65 sound/soc/codecs/lochnagar-sc.c 	return snd_interval_refine(hw_param_interval(params, rule->var),
rule              546 sound/soc/codecs/pcm512x.c 				struct snd_pcm_hw_rule *rule)
rule              548 sound/soc/codecs/pcm512x.c 	struct pcm512x_priv *pcm512x = rule->private;
rule              575 sound/soc/codecs/pcm512x.c 	return snd_interval_ranges(hw_param_interval(params, rule->var),
rule              916 sound/soc/sh/rcar/core.c 				 struct snd_pcm_hw_rule *rule)
rule              921 sound/soc/sh/rcar/core.c 	struct rsnd_dai_stream *io = rule->private;
rule              939 sound/soc/sh/rcar/core.c 				     struct snd_pcm_hw_rule *rule)
rule              944 sound/soc/sh/rcar/core.c 	struct rsnd_dai_stream *io = rule->private;
rule              164 sound/soc/sti/sti_uniperif.c 			       struct snd_pcm_hw_rule *rule)
rule              166 sound/soc/sti/sti_uniperif.c 	struct uniperif *uni = rule->private;
rule              175 sound/soc/sti/sti_uniperif.c 	return snd_interval_refine(hw_param_interval(params, rule->var), &t);
rule              179 sound/soc/sti/sti_uniperif.c 				 struct snd_pcm_hw_rule *rule)
rule              181 sound/soc/sti/sti_uniperif.c 	struct uniperif *uni = rule->private;
rule              182 sound/soc/sti/sti_uniperif.c 	struct snd_mask *maskp = hw_param_mask(params, rule->var);
rule             1411 sound/soc/sti/uniperif.h 			       struct snd_pcm_hw_rule *rule);
rule             1414 sound/soc/sti/uniperif.h 				 struct snd_pcm_hw_rule *rule);
rule             1274 sound/soc/ti/davinci-mcasp.c 					    struct snd_pcm_hw_rule *rule)
rule             1276 sound/soc/ti/davinci-mcasp.c 	struct davinci_mcasp_ruledata *rd = rule->private;
rule             1296 sound/soc/ti/davinci-mcasp.c 					      struct snd_pcm_hw_rule *rule)
rule             1298 sound/soc/ti/davinci-mcasp.c 	struct davinci_mcasp_ruledata *rd = rule->private;
rule             1325 sound/soc/ti/davinci-mcasp.c 				      struct snd_pcm_hw_rule *rule)
rule             1327 sound/soc/ti/davinci-mcasp.c 	struct davinci_mcasp_ruledata *rd = rule->private;
rule             1370 sound/soc/ti/davinci-mcasp.c 	return snd_interval_refine(hw_param_interval(params, rule->var),
rule             1375 sound/soc/ti/davinci-mcasp.c 					struct snd_pcm_hw_rule *rule)
rule             1377 sound/soc/ti/davinci-mcasp.c 	struct davinci_mcasp_ruledata *rd = rule->private;
rule             1418 sound/soc/ti/davinci-mcasp.c 		struct snd_pcm_hw_params *params, struct snd_pcm_hw_rule *rule)
rule              767 sound/soc/ti/omap-mcbsp.c 				    struct snd_pcm_hw_rule *rule)
rule              773 sound/soc/ti/omap-mcbsp.c 	struct omap_mcbsp *mcbsp = rule->private;
rule             2011 sound/sparc/dbri.c 			      struct snd_pcm_hw_rule *rule)
rule             2027 sound/sparc/dbri.c 				struct snd_pcm_hw_rule *rule)
rule             1012 sound/usb/pcm.c 			struct snd_pcm_hw_rule *rule)
rule             1014 sound/usb/pcm.c 	struct snd_usb_substream *subs = rule->private;
rule             1064 sound/usb/pcm.c 			    struct snd_pcm_hw_rule *rule)
rule             1066 sound/usb/pcm.c 	struct snd_usb_substream *subs = rule->private;
rule             1115 sound/usb/pcm.c 			  struct snd_pcm_hw_rule *rule)
rule             1117 sound/usb/pcm.c 	struct snd_usb_substream *subs = rule->private;
rule             1146 sound/usb/pcm.c 			       struct snd_pcm_hw_rule *rule)
rule             1148 sound/usb/pcm.c 	struct snd_usb_substream *subs = rule->private;
rule              257 sound/xen/xen_snd_front_alsa.c 			struct snd_pcm_hw_rule *rule)
rule              259 sound/xen/xen_snd_front_alsa.c 	struct xen_snd_front_pcm_stream_info *stream = rule->private;