/linux/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
H A D | ipsec_fs.c | 59 static struct mlx5e_ipsec_rx *ipsec_rx(struct mlx5e_ipsec *ipsec, u32 family, int type) in ipsec_rx() argument 61 if (ipsec->is_uplink_rep && type == XFRM_DEV_OFFLOAD_PACKET) in ipsec_rx() 62 return ipsec->rx_esw; in ipsec_rx() 65 return ipsec->rx_ipv4; in ipsec_rx() 67 return ipsec->rx_ipv6; in ipsec_rx() 70 static struct mlx5e_ipsec_tx *ipsec_tx(struct mlx5e_ipsec *ipsec, int type) in ipsec_tx() argument 72 if (ipsec->is_uplink_rep && type == XFRM_DEV_OFFLOAD_PACKET) in ipsec_tx() 73 return ipsec->tx_esw; in ipsec_tx() 75 return ipsec->tx; in ipsec_tx() 147 static void ipsec_rx_status_drop_destroy(struct mlx5e_ipsec *ipsec, in ipsec_rx_status_drop_destroy() argument [all …]
|
H A D | ipsec.c | 86 queue_delayed_work(sa_entry->ipsec->wq, &dwork->dwork, in mlx5e_ipsec_handle_sw_limits() 687 struct mlx5e_ipsec *ipsec; in mlx5e_xfrm_add_state() local 693 if (!priv->ipsec) in mlx5e_xfrm_add_state() 696 ipsec = priv->ipsec; in mlx5e_xfrm_add_state() 703 sa_entry->ipsec = ipsec; in mlx5e_xfrm_add_state() 758 err = xa_insert_bh(&ipsec->sadb, sa_entry->ipsec_obj_id, sa_entry, in mlx5e_xfrm_add_state() 766 queue_delayed_work(ipsec->wq, &sa_entry->dwork->dwork, in mlx5e_xfrm_add_state() 771 xa_lock_bh(&ipsec->sadb); in mlx5e_xfrm_add_state() 772 __xa_set_mark(&ipsec->sadb, sa_entry->ipsec_obj_id, in mlx5e_xfrm_add_state() 774 xa_unlock_bh(&ipsec->sadb); in mlx5e_xfrm_add_state() [all …]
|
H A D | ipsec_stats.c | 68 if (!priv->ipsec) in MLX5E_DECLARE_STATS_GRP_OP_NUM_STATS() 80 if (!priv->ipsec) in MLX5E_DECLARE_STATS_GRP_OP_FILL_STRS() 91 if (!priv->ipsec) in MLX5E_DECLARE_STATS_GRP_OP_FILL_STATS() 94 mlx5e_accel_ipsec_fs_read_stats(priv, &priv->ipsec->hw_stats); in MLX5E_DECLARE_STATS_GRP_OP_FILL_STATS() 98 MLX5E_READ_CTR_ATOMIC64(&priv->ipsec->hw_stats, in MLX5E_DECLARE_STATS_GRP_OP_FILL_STATS() 104 return priv->ipsec ? NUM_IPSEC_SW_COUNTERS : 0; in MLX5E_DECLARE_STATS_GRP_OP_NUM_STATS() 113 if (priv->ipsec) in MLX5E_DECLARE_STATS_GRP_OP_FILL_STRS() 122 if (priv->ipsec) in MLX5E_DECLARE_STATS_GRP_OP_FILL_STATS() 126 &priv->ipsec->sw_stats, in MLX5E_DECLARE_STATS_GRP_OP_FILL_STATS()
|
H A D | ipsec_rxtx.c | 273 atomic64_inc(&priv->ipsec->sw_stats.ipsec_tx_drop_bundle); in mlx5e_ipsec_handle_tx_skb() 279 atomic64_inc(&priv->ipsec->sw_stats.ipsec_tx_drop_no_state); in mlx5e_ipsec_handle_tx_skb() 286 atomic64_inc(&priv->ipsec->sw_stats.ipsec_tx_drop_not_ip); in mlx5e_ipsec_handle_tx_skb() 292 atomic64_inc(&priv->ipsec->sw_stats.ipsec_tx_drop_trailer); in mlx5e_ipsec_handle_tx_skb() 312 struct mlx5e_ipsec *ipsec = priv->ipsec; in mlx5e_ipsec_offload_handle_rx_skb() local 321 atomic64_inc(&ipsec->sw_stats.ipsec_rx_drop_sp_alloc); in mlx5e_ipsec_offload_handle_rx_skb() 326 sa_entry = xa_load(&ipsec->sadb, sa_handle); in mlx5e_ipsec_offload_handle_rx_skb() 329 atomic64_inc(&ipsec->sw_stats.ipsec_rx_drop_sadb_miss); in mlx5e_ipsec_offload_handle_rx_skb() 345 struct mlx5e_ipsec *ipsec = priv->ipsec; in mlx5_esw_ipsec_rx_make_metadata() local 349 if (!ipsec || !ipsec->is_uplink_rep) in mlx5_esw_ipsec_rx_make_metadata() [all …]
|
H A D | ipsec_offload.c | 374 struct mlx5e_ipsec *ipsec = sa_entry->ipsec; in mlx5e_ipsec_handle_limits() local 375 struct mlx5e_ipsec_aso *aso = ipsec->aso; in mlx5e_ipsec_handle_limits() 461 aso = sa_entry->ipsec->aso; in mlx5e_ipsec_handle_event() 487 struct mlx5e_ipsec *ipsec = container_of(nb, struct mlx5e_ipsec, nb); in mlx5e_ipsec_event() local 503 sa_entry = xa_load(&ipsec->sadb, be32_to_cpu(object->obj_id)); in mlx5e_ipsec_event() 514 queue_work(ipsec->wq, &work->work); in mlx5e_ipsec_event() 518 int mlx5e_ipsec_aso_init(struct mlx5e_ipsec *ipsec) in mlx5e_ipsec_aso_init() argument 520 struct mlx5_core_dev *mdev = ipsec->mdev; in mlx5e_ipsec_aso_init() 526 aso = kzalloc(sizeof(*ipsec->aso), GFP_KERNEL); in mlx5e_ipsec_aso_init() 546 ipsec->nb.notifier_call = mlx5e_ipsec_event; in mlx5e_ipsec_aso_init() [all …]
|
H A D | ipsec.h | 263 struct mlx5e_ipsec *ipsec; member 298 struct mlx5e_ipsec *ipsec; member 309 void mlx5e_accel_ipsec_fs_cleanup(struct mlx5e_ipsec *ipsec); 310 int mlx5e_accel_ipsec_fs_init(struct mlx5e_ipsec *ipsec, struct mlx5_devcom_comp_dev **devcom); 326 int mlx5e_ipsec_aso_init(struct mlx5e_ipsec *ipsec); 327 void mlx5e_ipsec_aso_cleanup(struct mlx5e_ipsec *ipsec); 343 return sa_entry->ipsec->mdev; in mlx5e_ipsec_sa2dev() 349 return pol_entry->ipsec->mdev; in mlx5e_ipsec_pol2dev()
|
/linux/drivers/net/ethernet/intel/ixgbevf/ |
H A D | ipsec.c | 103 struct ixgbevf_ipsec *ipsec = adapter->ipsec; in ixgbevf_ipsec_restore() local 112 struct rx_sa *r = &ipsec->rx_tbl[i]; in ixgbevf_ipsec_restore() 113 struct tx_sa *t = &ipsec->tx_tbl[i]; in ixgbevf_ipsec_restore() 140 int ixgbevf_ipsec_find_empty_idx(struct ixgbevf_ipsec *ipsec, bool rxtable) in ixgbevf_ipsec_find_empty_idx() argument 145 if (ipsec->num_rx_sa == IXGBE_IPSEC_MAX_SA_COUNT) in ixgbevf_ipsec_find_empty_idx() 150 if (!ipsec->rx_tbl[i].used) in ixgbevf_ipsec_find_empty_idx() 154 if (ipsec->num_tx_sa == IXGBE_IPSEC_MAX_SA_COUNT) in ixgbevf_ipsec_find_empty_idx() 159 if (!ipsec->tx_tbl[i].used) in ixgbevf_ipsec_find_empty_idx() 178 struct xfrm_state *ixgbevf_ipsec_find_rx_state(struct ixgbevf_ipsec *ipsec, in ixgbevf_ipsec_find_rx_state() argument 186 hash_for_each_possible_rcu(ipsec->rx_sa_list, rsa, hlist, in ixgbevf_ipsec_find_rx_state() [all …]
|
H A D | Makefile | 10 ixgbevf-$(CONFIG_IXGBEVF_IPSEC) += ipsec.o
|
/linux/drivers/net/ethernet/intel/ixgbe/ |
H A D | ixgbe_ipsec.c | 305 struct ixgbe_ipsec *ipsec = adapter->ipsec; in ixgbe_ipsec_restore() local 319 struct rx_sa *r = &ipsec->rx_tbl[i]; in ixgbe_ipsec_restore() 320 struct tx_sa *t = &ipsec->tx_tbl[i]; in ixgbe_ipsec_restore() 341 struct rx_ip_sa *ipsa = &ipsec->ip_tbl[i]; in ixgbe_ipsec_restore() 355 static int ixgbe_ipsec_find_empty_idx(struct ixgbe_ipsec *ipsec, bool rxtable) in ixgbe_ipsec_find_empty_idx() argument 360 if (ipsec->num_rx_sa == IXGBE_IPSEC_MAX_SA_COUNT) in ixgbe_ipsec_find_empty_idx() 365 if (!ipsec->rx_tbl[i].used) in ixgbe_ipsec_find_empty_idx() 369 if (ipsec->num_tx_sa == IXGBE_IPSEC_MAX_SA_COUNT) in ixgbe_ipsec_find_empty_idx() 374 if (!ipsec->tx_tbl[i].used) in ixgbe_ipsec_find_empty_idx() 392 static struct xfrm_state *ixgbe_ipsec_find_rx_state(struct ixgbe_ipsec *ipsec, in ixgbe_ipsec_find_rx_state() argument [all …]
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
H A D | ipsec_fs.c | 24 void mlx5_esw_ipsec_rx_create_attr_set(struct mlx5e_ipsec *ipsec, in mlx5_esw_ipsec_rx_create_attr_set() argument 34 int mlx5_esw_ipsec_rx_status_pass_dest_get(struct mlx5e_ipsec *ipsec, in mlx5_esw_ipsec_rx_status_pass_dest_get() argument 38 dest->ft = mlx5_chains_get_table(esw_chains(ipsec->mdev->priv.eswitch), 0, 1, 0); in mlx5_esw_ipsec_rx_status_pass_dest_get() 47 struct mlx5e_ipsec *ipsec = sa_entry->ipsec; in mlx5_esw_ipsec_rx_setup_modify_header() local 48 struct mlx5_core_dev *mdev = ipsec->mdev; in mlx5_esw_ipsec_rx_setup_modify_header() 53 err = xa_alloc_bh(&ipsec->ipsec_obj_id_map, &mapped_id, in mlx5_esw_ipsec_rx_setup_modify_header() 84 xa_erase_bh(&ipsec->ipsec_obj_id_map, mapped_id); in mlx5_esw_ipsec_rx_setup_modify_header() 90 struct mlx5e_ipsec *ipsec = sa_entry->ipsec; in mlx5_esw_ipsec_rx_id_mapping_remove() local 93 xa_erase_bh(&ipsec->ipsec_obj_id_map, in mlx5_esw_ipsec_rx_id_mapping_remove() 100 struct mlx5e_ipsec *ipsec = priv->ipsec; in mlx5_esw_ipsec_rx_ipsec_obj_id_search() local [all …]
|
H A D | ipsec_fs.h | 11 void mlx5_esw_ipsec_rx_create_attr_set(struct mlx5e_ipsec *ipsec, 13 int mlx5_esw_ipsec_rx_status_pass_dest_get(struct mlx5e_ipsec *ipsec, 20 void mlx5_esw_ipsec_tx_create_attr_set(struct mlx5e_ipsec *ipsec, 24 static inline void mlx5_esw_ipsec_rx_create_attr_set(struct mlx5e_ipsec *ipsec, in mlx5_esw_ipsec_rx_create_attr_set() argument 27 static inline int mlx5_esw_ipsec_rx_status_pass_dest_get(struct mlx5e_ipsec *ipsec, in mlx5_esw_ipsec_rx_status_pass_dest_get() argument 47 static inline void mlx5_esw_ipsec_tx_create_attr_set(struct mlx5e_ipsec *ipsec, in mlx5_esw_ipsec_tx_create_attr_set() argument
|
/linux/drivers/net/ethernet/netronome/nfp/ |
H A D | Makefile | 83 nfp-$(CONFIG_NFP_NET_IPSEC) += crypto/ipsec.o nfd3/ipsec.o nfdk/ipsec.o
|
/linux/drivers/net/netdevsim/ |
H A D | Makefile | 14 netdevsim-objs += ipsec.o
|
H A D | netdevsim.h | 130 struct nsim_ipsec ipsec; member
|
/linux/tools/testing/selftests/net/ |
H A D | .gitignore | 16 ipsec
|
H A D | xfrm_policy.sh | 402 ip netns exec ${ns[3]} iptables -p icmp -A FORWARD -m policy --dir out --pol ipsec 403 ip netns exec ${ns[4]} iptables -p icmp -A FORWARD -m policy --dir out --pol ipsec
|
H A D | Makefile | 71 TEST_GEN_FILES += ipsec
|
H A D | rtnetlink.sh | 673 sysfsf=$sysfsd/ipsec
|
/linux/drivers/net/bonding/ |
H A D | bond_main.c | 467 struct bond_ipsec *ipsec; in bond_ipsec_add_sa() local 494 ipsec = kmalloc(sizeof(*ipsec), GFP_KERNEL); in bond_ipsec_add_sa() 495 if (!ipsec) { in bond_ipsec_add_sa() 503 ipsec->xs = xs; in bond_ipsec_add_sa() 504 INIT_LIST_HEAD(&ipsec->list); in bond_ipsec_add_sa() 506 list_add(&ipsec->list, &bond->ipsec_list); in bond_ipsec_add_sa() 509 kfree(ipsec); in bond_ipsec_add_sa() 520 struct bond_ipsec *ipsec; in bond_ipsec_add_sa_all() local 539 list_for_each_entry(ipsec, &bond->ipsec_list, list) { in bond_ipsec_add_sa_all() 541 if (ipsec->xs->xso.real_dev == real_dev) in bond_ipsec_add_sa_all() [all …]
|
/linux/net/sched/ |
H A D | cls_flower.c | 86 struct flow_dissector_key_ipsec ipsec; member 837 fl_set_key_val(tb, &key->ipsec.spi, in fl_set_key_spi() 839 &mask->ipsec.spi, TCA_FLOWER_KEY_SPI_MASK, in fl_set_key_spi() 840 sizeof(key->ipsec.spi)); in fl_set_key_spi() 2227 FLOW_DISSECTOR_KEY_IPSEC, ipsec); in fl_init_dissector() 3612 if (key->ipsec.spi && in fl_dump_key() 3613 fl_dump_key_val(skb, &key->ipsec.spi, TCA_FLOWER_KEY_SPI, in fl_dump_key() 3614 &mask->ipsec.spi, TCA_FLOWER_KEY_SPI_MASK, in fl_dump_key() 3615 sizeof(key->ipsec.spi))) in fl_dump_key()
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
H A D | ipsec_fs_roce.c | 389 if (!peer_priv || !peer_priv->ipsec) { in ipsec_fs_roce_tx_mpv_create() 459 if (!peer_priv || !peer_priv->ipsec) { in ipsec_fs_roce_rx_mpv_create()
|
/linux/Documentation/security/ |
H A D | SCTP.rst | 342 7) IPSEC is not supported as RFC 3554 - sctp/ipsec support has not been
|
/linux/Documentation/networking/ |
H A D | pktgen.rst | 373 spi (ipsec)
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en.h | 925 struct mlx5e_ipsec *ipsec; member
|
/linux/Documentation/networking/device_drivers/ethernet/intel/ |
H A D | ixgbe.rst | 531 ethtool --set-priv-flags eth<x> vf-ipsec on
|