Symbol: arfs_rule
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
425
struct arfs_rule *arfs_rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
433
mlx5e_for_each_arfs_rule(arfs_rule, htmp, arfs->arfs_tables, i, j) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
434
if (!work_pending(&arfs_rule->arfs_work) &&
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
436
arfs_rule->rxq, arfs_rule->flow_id,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
437
arfs_rule->filter_id)) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
438
hlist_del_init(&arfs_rule->hlist);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
439
hlist_add_head(&arfs_rule->hlist, &del_list);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
445
hlist_for_each_entry_safe(arfs_rule, htmp, &del_list, hlist) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
446
if (arfs_rule->rule) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
447
mlx5_del_flow_rules(arfs_rule->rule);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
448
priv->channel_stats[arfs_rule->rxq]->rq.arfs_expired++;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
450
hlist_del(&arfs_rule->hlist);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
451
kfree(arfs_rule);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
459
struct arfs_rule *rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
513
struct arfs_rule *arfs_rule)
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
516
struct arfs_tuple *tuple = &arfs_rule->tuple;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
527
priv->channel_stats[arfs_rule->rxq]->rq.arfs_err++;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
596
dest.tir_num = mlx5e_rx_res_get_tirn_direct(priv->rx_res, arfs_rule->rxq);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
600
priv->channel_stats[arfs_rule->rxq]->rq.arfs_err++;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
603
__func__, arfs_rule->filter_id, arfs_rule->rxq,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
630
struct arfs_rule *arfs_rule = container_of(work,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
631
struct arfs_rule,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
633
struct mlx5e_priv *priv = arfs_rule->priv;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
641
if (!arfs_rule->rule) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
642
rule = arfs_add_rule(priv, arfs_rule);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
645
arfs_rule->rule = rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
646
priv->channel_stats[arfs_rule->rxq]->rq.arfs_add++;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
648
arfs_modify_rule_rq(priv, arfs_rule->rule,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
649
arfs_rule->rxq);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
655
static struct arfs_rule *arfs_alloc_rule(struct mlx5e_priv *priv,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
661
struct arfs_rule *rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
715
static struct arfs_rule *arfs_find_rule(struct arfs_table *arfs_t,
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
718
struct arfs_rule *arfs_rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
722
hlist_for_each_entry(arfs_rule, head, hlist) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
723
if (arfs_cmp(&arfs_rule->tuple, fk))
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
724
return arfs_rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
735
struct arfs_rule *arfs_rule;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
760
arfs_rule = arfs_find_rule(arfs_t, &fk);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
761
if (arfs_rule) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
762
if (arfs_rule->rxq == rxq_index || work_busy(&arfs_rule->arfs_work)) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
764
return arfs_rule->filter_id;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
768
priv->channel_stats[arfs_rule->rxq]->rq.arfs_request_out++;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
769
arfs_rule->rxq = rxq_index;
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
771
arfs_rule = arfs_alloc_rule(priv, arfs_t, &fk, rxq_index, flow_id);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
772
if (!arfs_rule) {
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
777
queue_work(arfs->wq, &arfs_rule->arfs_work);
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
779
return arfs_rule->filter_id;