| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | fs_tt_redirect.c | 84 struct mlx5_flow_table *ft = NULL; in mlx5e_fs_tt_redirect_udp_add_rule() local 97 ft = fs_udp->tables[type].t; in mlx5e_fs_tt_redirect_udp_add_rule() 103 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in mlx5e_fs_tt_redirect_udp_add_rule() 144 static int fs_udp_create_groups(struct mlx5e_flow_table *ft, enum fs_udp_type type) in fs_udp_create_groups() argument 153 ft->g = kzalloc_objs(*ft->g, MLX5E_FS_UDP_NUM_GROUPS); in fs_udp_create_groups() 155 if (!in || !ft->g) { in fs_udp_create_groups() 156 kfree(ft->g); in fs_udp_create_groups() 157 ft->g = NULL; in fs_udp_create_groups() 181 ft->g[ft->num_groups] = mlx5_create_flow_group(ft->t, in); in fs_udp_create_groups() 182 if (IS_ERR(ft->g[ft->num_groups])) in fs_udp_create_groups() [all …]
|
| H A D | tc_ct.c | 96 struct mlx5_flow_table *ft; member 840 attr->ft = nat ? ct_priv->ct_nat : ct_priv->ct; in mlx5_tc_ct_entry_add_rule() 1167 mlx5_tc_ct_block_flow_offload_update(struct mlx5_ct_ft *ft, struct flow_rule *flow_rule, in mlx5_tc_ct_block_flow_offload_update() argument 1170 struct mlx5_tc_ct_priv *ct_priv = ft->ct_priv; in mlx5_tc_ct_block_flow_offload_update() 1173 err = mlx5_tc_ct_entry_update_rules(ct_priv, flow_rule, entry, ft->zone_restore_id); in mlx5_tc_ct_block_flow_offload_update() 1181 entry = rhashtable_lookup_fast(&ft->ct_entries_ht, &cookie, cts_ht_params); in mlx5_tc_ct_block_flow_offload_update() 1183 rhashtable_remove_fast(&ft->ct_entries_ht, &entry->node, cts_ht_params); in mlx5_tc_ct_block_flow_offload_update() 1193 mlx5_tc_ct_block_flow_offload_add(struct mlx5_ct_ft *ft, in mlx5_tc_ct_block_flow_offload_add() argument 1197 struct mlx5_tc_ct_priv *ct_priv = ft->ct_priv; in mlx5_tc_ct_block_flow_offload_add() 1209 entry = rhashtable_lookup_fast(&ft->ct_entries_ht, &cookie, cts_ht_params); in mlx5_tc_ct_block_flow_offload_add() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
| H A D | fs_tcp.c | 80 struct mlx5e_flow_table *ft = NULL; in mlx5e_accel_fs_add_sk() local 94 ft = &fs_tcp->tables[ACCEL_FS_IPV4_TCP]; in mlx5e_accel_fs_add_sk() 106 ft = &fs_tcp->tables[ACCEL_FS_IPV4_TCP]; in mlx5e_accel_fs_add_sk() 109 ft = &fs_tcp->tables[ACCEL_FS_IPV6_TCP]; in mlx5e_accel_fs_add_sk() 117 if (!ft) { in mlx5e_accel_fs_add_sk() 138 flow = mlx5_add_flow_rules(ft->t, spec, &flow_act, &dest, 1); in mlx5e_accel_fs_add_sk() 179 static int accel_fs_tcp_create_groups(struct mlx5e_flow_table *ft, in accel_fs_tcp_create_groups() argument 189 ft->g = kzalloc_objs(*ft->g, MLX5E_ACCEL_FS_TCP_NUM_GROUPS); in accel_fs_tcp_create_groups() 191 if (!in || !ft->g) { in accel_fs_tcp_create_groups() 192 kfree(ft->g); in accel_fs_tcp_create_groups() [all …]
|
| H A D | ipsec_fs.c | 35 struct mlx5e_ipsec_ft ft; member 54 struct mlx5e_ipsec_ft ft; member 101 struct mlx5_flow_table *ft; in ipsec_chains_create() local 116 ft = mlx5_chains_get_table(chains, 0, 1, 0); in ipsec_chains_create() 117 if (IS_ERR(ft)) { in ipsec_chains_create() 118 err = PTR_ERR(ft); in ipsec_chains_create() 122 *root_ft = ft; in ipsec_chains_create() 202 struct mlx5_flow_table *ft = rx->ft.status; in rx_add_rule_drop_auth_trailer() local 235 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in rx_add_rule_drop_auth_trailer() 255 rule = mlx5_add_flow_rules(ft, spec, &flow_act, &dest, 1); in rx_add_rule_drop_auth_trailer() [all …]
|
| H A D | psp.c | 26 struct mlx5_flow_table *ft; member 32 struct mlx5_flow_table *ft; member 41 struct mlx5_flow_table *ft; member 49 struct mlx5_flow_table *ft; member 83 struct mlx5_flow_table **ft) in accel_psp_fs_create_ft() argument 88 *ft = mlx5_create_auto_grouped_flow_table(ns, ft_attr); in accel_psp_fs_create_ft() 89 if (IS_ERR(*ft)) { in accel_psp_fs_create_ft() 90 err = PTR_ERR(*ft); in accel_psp_fs_create_ft() 91 *ft = NULL; in accel_psp_fs_create_ft() 113 static int accel_psp_fs_create_miss_group(struct mlx5_flow_table *ft, in accel_psp_fs_create_miss_group() argument [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc/ |
| H A D | post_meter.c | 12 struct mlx5_flow_table *ft; member 21 struct mlx5_flow_table *ft; member 43 return post_meter->rate_steering_table.ft; in mlx5e_post_meter_get_ft() 49 return post_meter->mtu_tables.green_table.ft; in mlx5e_post_meter_get_mtu_true_ft() 55 return post_meter->mtu_tables.red_table.ft; in mlx5e_post_meter_get_mtu_false_ft() 102 table->fg = mlx5_create_flow_group(table->ft, flow_group_in); in mlx5e_post_meter_rate_fg_create() 165 red_attr->ft = post_meter->rate_steering_table.ft; in mlx5e_post_meter_rate_rules_create() 178 green_attr->ft = post_meter->rate_steering_table.ft; in mlx5e_post_meter_rate_rules_create() 218 mlx5_destroy_flow_table(post_meter->rate_steering_table.ft); in mlx5e_post_meter_rate_table_destroy() 244 mlx5_destroy_flow_table(mtu_tables->green_table.ft); in mlx5e_post_meter_mtu_table_destroy() [all …]
|
| H A D | post_act.c | 13 struct mlx5_flow_table *ft; member 50 post_act->ft = mlx5_chains_create_global_table(chains); in mlx5e_tc_post_act_init() 51 if (IS_ERR(post_act->ft)) { in mlx5e_tc_post_act_init() 52 err = PTR_ERR(post_act->ft); in mlx5e_tc_post_act_init() 75 mlx5_chains_destroy_global_table(post_act->chains, post_act->ft); in mlx5e_tc_post_act_destroy() 126 post_attr->ft = post_act->ft; in mlx5e_tc_post_act_add() 171 return post_act->ft; in mlx5e_tc_post_act_get_ft()
|
| /linux/kernel/printk/ |
| H A D | internal.h | 194 static inline void printk_get_console_flush_type(struct console_flush_type *ft) in printk_get_console_flush_type() argument 196 memset(ft, 0, sizeof(*ft)); in printk_get_console_flush_type() 202 ft->nbcon_offload = true; in printk_get_console_flush_type() 204 ft->nbcon_atomic = true; in printk_get_console_flush_type() 210 ft->legacy_direct = true; in printk_get_console_flush_type() 212 ft->legacy_offload = true; in printk_get_console_flush_type() 218 ft->nbcon_atomic = true; in printk_get_console_flush_type() 223 ft->legacy_direct = true; in printk_get_console_flush_type() 225 ft->legacy_offload = true; in printk_get_console_flush_type() 235 ft->nbcon_atomic = true; in printk_get_console_flush_type() [all …]
|
| H A D | printk.c | 2396 struct console_flush_type ft; in printk_legacy_allow_panic_sync() local 2400 printk_get_console_flush_type(&ft); in printk_legacy_allow_panic_sync() 2401 if (ft.legacy_direct) { in printk_legacy_allow_panic_sync() 2427 struct console_flush_type ft; in vprintk_emit() local 2444 printk_get_console_flush_type(&ft); in vprintk_emit() 2449 ft.legacy_offload |= ft.legacy_direct && !console_irqwork_blocked; in vprintk_emit() 2450 ft.legacy_direct = false; in vprintk_emit() 2457 if (ft.nbcon_atomic) in vprintk_emit() 2460 if (ft.nbcon_offload) in vprintk_emit() 2463 if (ft.legacy_direct) { in vprintk_emit() [all …]
|
| H A D | nbcon.c | 1622 struct console_flush_type ft; in nbcon_atomic_flush_pending_con() local 1644 printk_get_console_flush_type(&ft); in nbcon_atomic_flush_pending_con() 1645 if (!ft.nbcon_offload && in nbcon_atomic_flush_pending_con() 1749 struct console_flush_type ft; in nbcon_cpu_emergency_exit() local 1751 printk_get_console_flush_type(&ft); in nbcon_cpu_emergency_exit() 1752 if (ft.nbcon_offload) in nbcon_cpu_emergency_exit() 1910 struct console_flush_type ft; in nbcon_device_release() 1925 printk_get_console_flush_type(&ft); in nbcon_device_release() 1927 !ft.nbcon_offload && in nbcon_device_release() 1933 if (ft in nbcon_device_release() 1909 struct console_flush_type ft; nbcon_device_release() local [all...] |
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/ |
| H A D | fs_dr.c | 13 struct mlx5_flow_table *ft, in mlx5_cmd_dr_update_root_ft() argument 17 return mlx5_fs_cmd_get_fw_cmds()->update_root_ft(ns, ft, underlay_qpn, in mlx5_cmd_dr_update_root_ft() 22 struct mlx5_flow_table *ft, in set_miss_action() argument 36 old_miss_action = ft->fs_dr_table.miss_action; in set_miss_action() 37 err = mlx5dr_table_set_miss_action(ft->fs_dr_table.dr_table, action); in set_miss_action() 45 ft->fs_dr_table.miss_action = action; in set_miss_action() 57 struct mlx5_flow_table *ft, in mlx5_cmd_dr_create_flow_table() argument 65 if (mlx5_fs_cmd_is_fw_term_table(ft)) in mlx5_cmd_dr_create_flow_table() 66 return mlx5_fs_cmd_get_fw_cmds()->create_flow_table(ns, ft, in mlx5_cmd_dr_create_flow_table() 69 flags = ft->flags; in mlx5_cmd_dr_create_flow_table() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | en_arfs.c | 44 struct mlx5e_flow_table ft; member 168 dest.ft = arfs->arfs_tables[i].ft.t; in mlx5e_arfs_enable() 186 mlx5e_destroy_flow_table(&arfs_t->ft); in arfs_destroy_table() 197 if (!IS_ERR_OR_NULL(arfs->arfs_tables[i].ft.t)) in _mlx5e_cleanup_tables() 236 arfs_t->default_rule = mlx5_add_flow_rules(arfs_t->ft.t, NULL, in arfs_add_default_rule() 253 static int arfs_create_groups(struct mlx5e_flow_table *ft, in arfs_create_groups() argument 263 ft->g = kzalloc_objs(*ft->g, MLX5E_ARFS_NUM_GROUPS); in arfs_create_groups() 264 if (!ft->g) in arfs_create_groups() 319 ft->g[ft->num_groups] = mlx5_create_flow_group(ft->t, in); in arfs_create_groups() 320 if (IS_ERR(ft->g[ft->num_groups])) in arfs_create_groups() [all …]
|
| H A D | rdma.c | 19 mlx5_destroy_flow_table(roce->ft); in mlx5_rdma_disable_roce_steering() 31 struct mlx5_flow_table *ft; in mlx5_rdma_enable_roce_steering() local 58 ft = mlx5_create_flow_table(ns, &ft_attr); in mlx5_rdma_enable_roce_steering() 59 if (IS_ERR(ft)) { in mlx5_rdma_enable_roce_steering() 61 err = PTR_ERR(ft); in mlx5_rdma_enable_roce_steering() 68 fg = mlx5_create_flow_group(ft, flow_group_in); in mlx5_rdma_enable_roce_steering() 78 flow_rule = mlx5_add_flow_rules(ft, spec, &flow_act, NULL, 0); in mlx5_rdma_enable_roce_steering() 88 roce->ft = ft; in mlx5_rdma_enable_roce_steering() 97 mlx5_destroy_flow_table(ft); in mlx5_rdma_enable_roce_steering() 135 if (!roce->ft) in mlx5_rdma_disable_roce()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
| H A D | macsec_fs.c | 138 struct mlx5_flow_table *ft; member 196 static void macsec_fs_destroy_groups(struct mlx5_macsec_flow_table *ft) in macsec_fs_destroy_groups() argument 200 for (i = ft->num_groups - 1; i >= 0; i--) { in macsec_fs_destroy_groups() 201 if (!IS_ERR_OR_NULL(ft->g[i])) in macsec_fs_destroy_groups() 202 mlx5_destroy_flow_group(ft->g[i]); in macsec_fs_destroy_groups() 203 ft->g[i] = NULL; in macsec_fs_destroy_groups() 205 ft->num_groups = 0; in macsec_fs_destroy_groups() 208 static void macsec_fs_destroy_flow_table(struct mlx5_macsec_flow_table *ft) in macsec_fs_destroy_flow_table() argument 210 macsec_fs_destroy_groups(ft); in macsec_fs_destroy_flow_table() 211 kfree(ft->g); in macsec_fs_destroy_flow_table() [all …]
|
| H A D | fs_chains.c | 69 struct mlx5_flow_table *ft; member 146 struct mlx5_flow_table *ft) in mlx5_chains_set_end_ft() argument 148 chains_end_ft(chains) = ft; in mlx5_chains_set_end_ft() 157 struct mlx5_flow_table *ft; in mlx5_chains_create_table() local 207 ft = mlx5_create_auto_grouped_flow_table(ns, &ft_attr); in mlx5_chains_create_table() 208 if (IS_ERR(ft)) { in mlx5_chains_create_table() 210 (int)PTR_ERR(ft), chain, prio, level, sz); in mlx5_chains_create_table() 211 return ft; in mlx5_chains_create_table() 214 return ft; in mlx5_chains_create_table() 375 struct mlx5_flow_table *ft, in mlx5_chains_add_miss_rule() argument [all …]
|
| /linux/fs/smb/server/ |
| H A D | vfs_cache.c | 602 static void __ksmbd_remove_fd(struct ksmbd_file_table *ft, struct ksmbd_file *fp) in __ksmbd_remove_fd() argument 611 write_lock(&ft->lock); in __ksmbd_remove_fd() 612 idr_remove(ft->idr, fp->volatile_id); in __ksmbd_remove_fd() 613 write_unlock(&ft->lock); in __ksmbd_remove_fd() 616 static void __ksmbd_close_fd(struct ksmbd_file_table *ft, struct ksmbd_file *fp) in __ksmbd_close_fd() argument 624 if (ft) in __ksmbd_close_fd() 625 __ksmbd_remove_fd(ft, fp); in __ksmbd_close_fd() 806 static struct ksmbd_file *__ksmbd_lookup_fd(struct ksmbd_file_table *ft, in __ksmbd_lookup_fd() argument 814 read_lock(&ft->lock); in __ksmbd_lookup_fd() 815 fp = idr_find(ft->idr, id); in __ksmbd_lookup_fd() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
| H A D | indir_table.c | 31 struct mlx5_flow_table *ft; member 141 dest.ft = mlx5_chains_get_table(chains, 0, 1, 0); in mlx5_esw_indir_table_rule_get() 142 if (IS_ERR(dest.ft)) { in mlx5_esw_indir_table_rule_get() 143 err = PTR_ERR(dest.ft); in mlx5_esw_indir_table_rule_get() 146 handle = mlx5_add_flow_rules(e->ft, NULL, &flow_act, &dest, 1); in mlx5_esw_indir_table_rule_get() 201 e->recirc_grp = mlx5_create_flow_group(e->ft, in); in mlx5_create_indir_recirc_group() 224 e->fwd_grp = mlx5_create_flow_group(e->ft, in); in mlx5_create_indir_fwd_group() 236 e->fwd_rule = mlx5_add_flow_rules(e->ft, NULL, &flow_act, &dest, 1); in mlx5_create_indir_fwd_group() 254 struct mlx5_flow_table *ft; in mlx5_esw_indir_table_entry_create() local 270 ft = mlx5_create_flow_table(root_ns, &ft_attr); in mlx5_esw_indir_table_entry_create() [all …]
|
| /linux/net/netfilter/ |
| H A D | nf_flow_table_xdp.c | 12 struct nf_flowtable *ft; member 43 return ft_elem ? ft_elem->ft : NULL; in nf_flowtable_by_dev() 50 static int nf_flowtable_by_dev_insert(struct nf_flowtable *ft, in nf_flowtable_by_dev_insert() argument 61 ft_elem->ft = ft; in nf_flowtable_by_dev_insert() 94 static void nf_flowtable_by_dev_remove(struct nf_flowtable *ft, in nf_flowtable_by_dev_remove() argument 113 if (ft_elem->ft == ft) { in nf_flowtable_by_dev_remove()
|
| H A D | nf_flow_table_path.c | 103 struct nft_flowtable *ft); 107 unsigned char *ha, struct nft_flowtable *ft) in nft_dev_path_info() 193 if (nf_flowtable_hw_offload(&ft->data) && in nft_dev_path_info() 197 if (!nft_flowtable_find_dev(info->dev, ft)) in nft_dev_path_info() 208 struct nft_flowtable *ft) in nft_flowtable_find_dev() 213 list_for_each_entry_rcu(hook, &ft->hook_list, list) { in nft_flowtable_find_dev() 228 struct nft_flowtable *ft) in nft_dev_forward_path() 237 nft_dev_path_info(&stack, &info, ha, ft) < 0) in nft_dev_forward_path() 272 struct nft_flowtable *ft) in nft_flow_route() 313 nft_dev_forward_path(pkt, route, ct, dir, ft) < in nft_flow_route() 106 nft_dev_path_info(struct net_device_path_stack * stack,struct nft_forward_info * info,unsigned char * ha,struct nft_flowtable * ft) nft_dev_path_info() argument 205 nft_flowtable_find_dev(const struct net_device * dev,struct nft_flowtable * ft) nft_flowtable_find_dev() argument 225 nft_dev_forward_path(const struct nft_pktinfo * pkt,struct nf_flow_route * route,const struct nf_conn * ct,enum ip_conntrack_dir dir,struct nft_flowtable * ft) nft_dev_forward_path() argument 269 nft_flow_route(const struct nft_pktinfo * pkt,const struct nf_conn * ct,struct nf_flow_route * route,enum ip_conntrack_dir dir,struct nft_flowtable * ft) nft_flow_route() argument [all...] |
| H A D | nf_flow_table_core.c | 25 struct flow_offload_tuple *ft = &flow->tuplehash[dir].tuple; in flow_offload_fill_dir() local 28 ft->dir = dir; in flow_offload_fill_dir() 32 ft->src_v4 = ctt->src.u3.in; in flow_offload_fill_dir() 33 ft->dst_v4 = ctt->dst.u3.in; in flow_offload_fill_dir() 36 ft->src_v6 = ctt->src.u3.in6; in flow_offload_fill_dir() 37 ft->dst_v6 = ctt->dst.u3.in6; in flow_offload_fill_dir() 41 ft->l3proto = ctt->src.l3num; in flow_offload_fill_dir() 42 ft->l4proto = ctt->dst.protonum; in flow_offload_fill_dir() 47 ft->src_port = ctt->src.u.tcp.port; in flow_offload_fill_dir() 48 ft in flow_offload_fill_dir() [all...] |
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | fs_hws.c | 174 struct mlx5_flow_table *ft, in mlx5_fs_set_ft_default_miss() argument 184 if (!next_ft && !ft->fs_hws_table.miss_ft_set) in mlx5_fs_set_ft_default_miss() 188 err = mlx5hws_table_set_default_miss(ft->fs_hws_table.hws_table, next_tbl); in mlx5_fs_set_ft_default_miss() 193 ft->fs_hws_table.miss_ft_set = !!next_tbl; in mlx5_fs_set_ft_default_miss() 198 struct mlx5_flow_table *ft) in mlx5_fs_add_flow_table_dest_action() argument 207 ft->id, flags); in mlx5_fs_add_flow_table_dest_action() 214 err = xa_insert(dests_xa, ft->id, dest_ft_action, GFP_KERNEL); in mlx5_fs_add_flow_table_dest_action() 221 struct mlx5_flow_table *ft) in mlx5_fs_del_flow_table_dest_action() argument 229 dest_ft_action = xa_erase(dests_xa, ft->id); in mlx5_fs_del_flow_table_dest_action() 242 struct mlx5_flow_table *ft, in mlx5_cmd_hws_create_flow_table() argument [all …]
|
| /linux/samples/vfs/ |
| H A D | test-statx.c | 85 char buffer[256], ft = '?'; in dump_statx() local 97 case S_IFIFO: printf(" FIFO\n"); ft = 'p'; break; in dump_statx() 98 case S_IFCHR: printf(" character special file\n"); ft = 'c'; break; in dump_statx() 99 case S_IFDIR: printf(" directory\n"); ft = 'd'; break; in dump_statx() 100 case S_IFBLK: printf(" block special file\n"); ft = 'b'; break; in dump_statx() 101 case S_IFREG: printf(" regular file\n"); ft = '-'; break; in dump_statx() 102 case S_IFLNK: printf(" symbolic link\n"); ft = 'l'; break; in dump_statx() 103 case S_IFSOCK: printf(" socket\n"); ft = 's'; break; in dump_statx() 132 ft, in dump_statx()
|
| /linux/include/net/netfilter/ |
| H A D | nf_flow_table.h | 55 int (*init)(struct nf_flowtable *ft); 57 int (*setup)(struct nf_flowtable *ft, 64 void (*free)(struct nf_flowtable *ft); 65 void (*get)(struct nf_flowtable *ft); 66 void (*put)(struct nf_flowtable *ft); 250 struct nft_flowtable *ft); 418 #define NF_FLOW_TABLE_STAT_INC(net, count) __this_cpu_inc((net)->ft.stat->count) 419 #define NF_FLOW_TABLE_STAT_DEC(net, count) __this_cpu_dec((net)->ft.stat->count) 421 this_cpu_inc((net)->ft.stat->count) 423 this_cpu_dec((net)->ft [all...] |
| /linux/tools/include/uapi/linux/ |
| H A D | erspan.h | 25 ft:5, member 33 ft:5, member
|
| /linux/include/uapi/linux/ |
| H A D | erspan.h | 25 ft:5, member 33 ft:5, member
|