sa_entry          109 drivers/crypto/chelsio/chcr_ipsec.c 					 struct ipsec_sa_entry *sa_entry)
sa_entry          114 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry->authsize = authsize;
sa_entry          133 drivers/crypto/chelsio/chcr_ipsec.c 				    struct ipsec_sa_entry *sa_entry)
sa_entry          144 drivers/crypto/chelsio/chcr_ipsec.c 		memcpy(sa_entry->salt, key + keylen, 4);
sa_entry          159 drivers/crypto/chelsio/chcr_ipsec.c 	memcpy(sa_entry->key, key, keylen);
sa_entry          160 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry->enckey_len = keylen;
sa_entry          165 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry->key_ctx_hdr = FILL_KEY_CTX_HDR(ck_size,
sa_entry          175 drivers/crypto/chelsio/chcr_ipsec.c 		sa_entry->enckey_len = 0;
sa_entry          182 drivers/crypto/chelsio/chcr_ipsec.c 	memcpy(sa_entry->key + (DIV_ROUND_UP(sa_entry->enckey_len, 16) *
sa_entry          184 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry->kctx_len = ((DIV_ROUND_UP(sa_entry->enckey_len, 16)) << 4) +
sa_entry          197 drivers/crypto/chelsio/chcr_ipsec.c 	struct ipsec_sa_entry *sa_entry;
sa_entry          253 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry = kzalloc(sizeof(*sa_entry), GFP_KERNEL);
sa_entry          254 drivers/crypto/chelsio/chcr_ipsec.c 	if (!sa_entry) {
sa_entry          259 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry->hmac_ctrl = chcr_ipsec_setauthsize(x, sa_entry);
sa_entry          261 drivers/crypto/chelsio/chcr_ipsec.c 		sa_entry->esn = 1;
sa_entry          262 drivers/crypto/chelsio/chcr_ipsec.c 	chcr_ipsec_setkey(x, sa_entry);
sa_entry          263 drivers/crypto/chelsio/chcr_ipsec.c 	x->xso.offload_handle = (unsigned long)sa_entry;
sa_entry          278 drivers/crypto/chelsio/chcr_ipsec.c 	struct ipsec_sa_entry *sa_entry;
sa_entry          283 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry = (struct ipsec_sa_entry *)x->xso.offload_handle;
sa_entry          284 drivers/crypto/chelsio/chcr_ipsec.c 	kfree(sa_entry);
sa_entry          313 drivers/crypto/chelsio/chcr_ipsec.c 			     struct ipsec_sa_entry *sa_entry)
sa_entry          318 drivers/crypto/chelsio/chcr_ipsec.c 	kctx_len = sa_entry->kctx_len;
sa_entry          323 drivers/crypto/chelsio/chcr_ipsec.c 	if (sa_entry->esn)
sa_entry          332 drivers/crypto/chelsio/chcr_ipsec.c 					     struct ipsec_sa_entry *sa_entry,
sa_entry          340 drivers/crypto/chelsio/chcr_ipsec.c 	kctx_len = sa_entry->kctx_len;
sa_entry          341 drivers/crypto/chelsio/chcr_ipsec.c 	hdrlen = is_eth_imm(skb, sa_entry);
sa_entry          342 drivers/crypto/chelsio/chcr_ipsec.c 	aadivlen = sa_entry->esn ? DIV_ROUND_UP(sizeof(struct chcr_ipsec_aadiv),
sa_entry          377 drivers/crypto/chelsio/chcr_ipsec.c 			    struct ipsec_sa_entry *sa_entry)
sa_entry          417 drivers/crypto/chelsio/chcr_ipsec.c 	if (is_eth_imm(skb, sa_entry) && !skb_is_nonlinear(skb)) {
sa_entry          431 drivers/crypto/chelsio/chcr_ipsec.c 			      struct ipsec_sa_entry *sa_entry)
sa_entry          467 drivers/crypto/chelsio/chcr_ipsec.c 	if (sa_entry->esn)
sa_entry          468 drivers/crypto/chelsio/chcr_ipsec.c 		pos = copy_esn_pktxt(skb, dev, pos, sa_entry);
sa_entry          475 drivers/crypto/chelsio/chcr_ipsec.c 				struct ipsec_sa_entry *sa_entry)
sa_entry          488 drivers/crypto/chelsio/chcr_ipsec.c 	key_len = sa_entry->kctx_len;
sa_entry          500 drivers/crypto/chelsio/chcr_ipsec.c 	key_ctx->ctx_hdr = sa_entry->key_ctx_hdr;
sa_entry          501 drivers/crypto/chelsio/chcr_ipsec.c 	memcpy(key_ctx->salt, sa_entry->salt, MAX_SALT);
sa_entry          506 drivers/crypto/chelsio/chcr_ipsec.c 		memcpy(key_ctx->key, sa_entry->key, key_len);
sa_entry          509 drivers/crypto/chelsio/chcr_ipsec.c 		memcpy(pos, sa_entry->key, left);
sa_entry          510 drivers/crypto/chelsio/chcr_ipsec.c 		memcpy(q->q.desc, sa_entry->key + left,
sa_entry          515 drivers/crypto/chelsio/chcr_ipsec.c 	pos = copy_cpltx_pktxt(skb, dev, pos, sa_entry);
sa_entry          524 drivers/crypto/chelsio/chcr_ipsec.c 			       struct ipsec_sa_entry *sa_entry)
sa_entry          544 drivers/crypto/chelsio/chcr_ipsec.c 	unsigned int kctx_len = sa_entry->kctx_len;
sa_entry          549 drivers/crypto/chelsio/chcr_ipsec.c 	flits = calc_tx_sec_flits(skb, sa_entry, &immediate);
sa_entry          551 drivers/crypto/chelsio/chcr_ipsec.c 	if (sa_entry->esn)
sa_entry          557 drivers/crypto/chelsio/chcr_ipsec.c 	if (sa_entry->esn) {
sa_entry          591 drivers/crypto/chelsio/chcr_ipsec.c 	ivinoffset = sa_entry->esn ? (ESN_IV_INSERT_OFFSET + 1) :
sa_entry          602 drivers/crypto/chelsio/chcr_ipsec.c 	aadstart = sa_entry->esn ? 1 : (skb_transport_offset(skb) + 1);
sa_entry          603 drivers/crypto/chelsio/chcr_ipsec.c 	aadstop = sa_entry->esn ? ESN_IV_INSERT_OFFSET :
sa_entry          608 drivers/crypto/chelsio/chcr_ipsec.c 	ciphstart += sa_entry->esn ?  esnlen : 0;
sa_entry          617 drivers/crypto/chelsio/chcr_ipsec.c 					sa_entry->authsize,
sa_entry          618 drivers/crypto/chelsio/chcr_ipsec.c 					 sa_entry->authsize);
sa_entry          623 drivers/crypto/chelsio/chcr_ipsec.c 					 sa_entry->hmac_ctrl,
sa_entry          633 drivers/crypto/chelsio/chcr_ipsec.c 	pos = copy_key_cpltx_pktxt(skb, dev, pos, sa_entry);
sa_entry          676 drivers/crypto/chelsio/chcr_ipsec.c 	struct ipsec_sa_entry *sa_entry;
sa_entry          690 drivers/crypto/chelsio/chcr_ipsec.c 	sa_entry = (struct ipsec_sa_entry *)x->xso.offload_handle;
sa_entry          705 drivers/crypto/chelsio/chcr_ipsec.c 	flits = calc_tx_sec_flits(skb, sa_entry, &immediate);
sa_entry          729 drivers/crypto/chelsio/chcr_ipsec.c 				       credits, sa_entry);
sa_entry           63 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry *sa_entry;
sa_entry           67 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	hash_for_each_possible_rcu(ipsec->sadb_rx, sa_entry, hlist, handle)
sa_entry           68 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		if (sa_entry->handle == handle) {
sa_entry           69 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 			ret = sa_entry->x;
sa_entry           78 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c static int mlx5e_ipsec_sadb_rx_add(struct mlx5e_ipsec_sa_entry *sa_entry)
sa_entry           80 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec *ipsec = sa_entry->ipsec;
sa_entry           89 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->handle = ret;
sa_entry           90 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	hash_add_rcu(ipsec->sadb_rx, &sa_entry->hlist, sa_entry->handle);
sa_entry           96 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c static void mlx5e_ipsec_sadb_rx_del(struct mlx5e_ipsec_sa_entry *sa_entry)
sa_entry           98 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec *ipsec = sa_entry->ipsec;
sa_entry          102 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	hash_del_rcu(&sa_entry->hlist);
sa_entry          106 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c static void mlx5e_ipsec_sadb_rx_free(struct mlx5e_ipsec_sa_entry *sa_entry)
sa_entry          108 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec *ipsec = sa_entry->ipsec;
sa_entry          112 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	ida_simple_remove(&ipsec->halloc, sa_entry->handle);
sa_entry          115 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c static bool mlx5e_ipsec_update_esn_state(struct mlx5e_ipsec_sa_entry *sa_entry)
sa_entry          122 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (!(sa_entry->x->props.flags & XFRM_STATE_ESN)) {
sa_entry          123 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		sa_entry->esn_state.trigger = 0;
sa_entry          127 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	replay_esn = sa_entry->x->replay_esn;
sa_entry          129 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	overlap = sa_entry->esn_state.overlap;
sa_entry          131 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->esn_state.esn = xfrm_replay_seqhi(sa_entry->x,
sa_entry          133 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	esn = &sa_entry->esn_state.esn;
sa_entry          135 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->esn_state.trigger = 1;
sa_entry          138 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		sa_entry->esn_state.overlap = 0;
sa_entry          142 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		sa_entry->esn_state.overlap = 1;
sa_entry          150 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c mlx5e_ipsec_build_accel_xfrm_attrs(struct mlx5e_ipsec_sa_entry *sa_entry,
sa_entry          153 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct xfrm_state *x = sa_entry->x;
sa_entry          181 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (sa_entry->esn_state.trigger) {
sa_entry          183 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		attrs->esn = sa_entry->esn_state.esn;
sa_entry          184 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		if (sa_entry->esn_state.overlap)
sa_entry          189 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	attrs->sa_handle = sa_entry->handle;
sa_entry          283 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry *sa_entry = NULL;
sa_entry          297 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry = kzalloc(sizeof(*sa_entry), GFP_KERNEL);
sa_entry          298 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (!sa_entry) {
sa_entry          303 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->x = x;
sa_entry          304 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->ipsec = priv->ipsec;
sa_entry          310 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		err = mlx5e_ipsec_sadb_rx_add(sa_entry);
sa_entry          316 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		sa_entry->set_iv_op = (x->props.flags & XFRM_STATE_ESN) ?
sa_entry          321 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	mlx5e_ipsec_update_esn_state(sa_entry);
sa_entry          324 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	mlx5e_ipsec_build_accel_xfrm_attrs(sa_entry, &attrs);
sa_entry          325 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->xfrm =
sa_entry          328 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (IS_ERR(sa_entry->xfrm)) {
sa_entry          329 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		err = PTR_ERR(sa_entry->xfrm);
sa_entry          343 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	sa_entry->hw_context =
sa_entry          345 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 							 sa_entry->xfrm,
sa_entry          348 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (IS_ERR(sa_entry->hw_context)) {
sa_entry          349 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		err = PTR_ERR(sa_entry->hw_context);
sa_entry          353 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	x->xso.offload_handle = (unsigned long)sa_entry;
sa_entry          357 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	mlx5_accel_esp_destroy_xfrm(sa_entry->xfrm);
sa_entry          360 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		mlx5e_ipsec_sadb_rx_del(sa_entry);
sa_entry          361 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		mlx5e_ipsec_sadb_rx_free(sa_entry);
sa_entry          364 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	kfree(sa_entry);
sa_entry          371 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry *sa_entry = to_ipsec_sa_entry(x);
sa_entry          373 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (!sa_entry)
sa_entry          377 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		mlx5e_ipsec_sadb_rx_del(sa_entry);
sa_entry          382 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry *sa_entry = to_ipsec_sa_entry(x);
sa_entry          384 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (!sa_entry)
sa_entry          387 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (sa_entry->hw_context) {
sa_entry          388 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		flush_workqueue(sa_entry->ipsec->wq);
sa_entry          389 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		mlx5_accel_esp_free_hw_context(sa_entry->hw_context);
sa_entry          390 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		mlx5_accel_esp_destroy_xfrm(sa_entry->xfrm);
sa_entry          394 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		mlx5e_ipsec_sadb_rx_free(sa_entry);
sa_entry          396 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	kfree(sa_entry);
sa_entry          462 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry	*sa_entry;
sa_entry          470 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry *sa_entry = modify_work->sa_entry;
sa_entry          472 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	ret = mlx5_accel_esp_modify_xfrm(sa_entry->xfrm,
sa_entry          475 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 		netdev_warn(sa_entry->ipsec->en_priv->netdev,
sa_entry          483 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	struct mlx5e_ipsec_sa_entry *sa_entry = to_ipsec_sa_entry(x);
sa_entry          487 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	if (!sa_entry)
sa_entry          490 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	need_update = mlx5e_ipsec_update_esn_state(sa_entry);
sa_entry          498 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	mlx5e_ipsec_build_accel_xfrm_attrs(sa_entry, &modify_work->attrs);
sa_entry          499 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	modify_work->sa_entry = sa_entry;
sa_entry          502 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c 	WARN_ON(!queue_work(sa_entry->ipsec->wq, &modify_work->work));
sa_entry          243 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.c 	struct mlx5e_ipsec_sa_entry *sa_entry;
sa_entry          280 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.c 	sa_entry = (struct mlx5e_ipsec_sa_entry *)x->xso.offload_handle;
sa_entry          281 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec_rxtx.c 	sa_entry->set_iv_op(skb, x, xo);