Lines Matching refs:maction
143 int parse_flow_flow_action(struct mlx5_ib_flow_action *maction, in parse_flow_flow_action() argument
148 switch (maction->ib_action.type) { in parse_flow_flow_action()
154 action->esp_id = (uintptr_t)maction->esp_aes_gcm.ctx; in parse_flow_flow_action()
160 if (maction->flow_action_raw.sub_type == in parse_flow_flow_action()
166 maction->flow_action_raw.modify_hdr; in parse_flow_flow_action()
169 if (maction->flow_action_raw.sub_type == in parse_flow_flow_action()
176 if (maction->flow_action_raw.sub_type == in parse_flow_flow_action()
184 maction->flow_action_raw.pkt_reformat; in parse_flow_flow_action()
1656 struct mlx5_ib_flow_action *maction = to_mflow_act(action); in mlx5_ib_modify_flow_action_esp() local
1671 if (!(maction->esp_aes_gcm.ib_flags & in mlx5_ib_modify_flow_action_esp()
1677 memcpy(&accel_attrs, &maction->esp_aes_gcm.ctx->attrs, in mlx5_ib_modify_flow_action_esp()
1686 err = mlx5_accel_esp_modify_xfrm(maction->esp_aes_gcm.ctx, in mlx5_ib_modify_flow_action_esp()
1691 maction->esp_aes_gcm.ib_flags &= in mlx5_ib_modify_flow_action_esp()
1693 maction->esp_aes_gcm.ib_flags |= in mlx5_ib_modify_flow_action_esp()
1699 static void destroy_flow_action_raw(struct mlx5_ib_flow_action *maction) in destroy_flow_action_raw() argument
1701 switch (maction->flow_action_raw.sub_type) { in destroy_flow_action_raw()
1703 mlx5_modify_header_dealloc(maction->flow_action_raw.dev->mdev, in destroy_flow_action_raw()
1704 maction->flow_action_raw.modify_hdr); in destroy_flow_action_raw()
1707 mlx5_packet_reformat_dealloc(maction->flow_action_raw.dev->mdev, in destroy_flow_action_raw()
1708 maction->flow_action_raw.pkt_reformat); in destroy_flow_action_raw()
1719 struct mlx5_ib_flow_action *maction = to_mflow_act(action); in mlx5_ib_destroy_flow_action() local
1727 mlx5_accel_esp_destroy_xfrm(maction->esp_aes_gcm.ctx); in mlx5_ib_destroy_flow_action()
1730 destroy_flow_action_raw(maction); in mlx5_ib_destroy_flow_action()
1737 kfree(maction); in mlx5_ib_destroy_flow_action()
1997 struct mlx5_ib_flow_action *maction = in UVERBS_HANDLER() local
2000 ret = parse_flow_flow_action(maction, false, &flow_act); in UVERBS_HANDLER()
2158 struct mlx5_ib_flow_action *maction; in mlx5_ib_create_modify_header() local
2165 maction = kzalloc(sizeof(*maction), GFP_KERNEL); in mlx5_ib_create_modify_header()
2166 if (!maction) in mlx5_ib_create_modify_header()
2169 maction->flow_action_raw.modify_hdr = in mlx5_ib_create_modify_header()
2172 if (IS_ERR(maction->flow_action_raw.modify_hdr)) { in mlx5_ib_create_modify_header()
2173 ret = PTR_ERR(maction->flow_action_raw.modify_hdr); in mlx5_ib_create_modify_header()
2174 kfree(maction); in mlx5_ib_create_modify_header()
2177 maction->flow_action_raw.sub_type = in mlx5_ib_create_modify_header()
2179 maction->flow_action_raw.dev = dev; in mlx5_ib_create_modify_header()
2181 return &maction->ib_action; in mlx5_ib_create_modify_header()
2284 struct mlx5_ib_flow_action *maction, in mlx5_ib_flow_action_create_packet_reformat_ctx() argument
2305 maction->flow_action_raw.pkt_reformat = in mlx5_ib_flow_action_create_packet_reformat_ctx()
2308 if (IS_ERR(maction->flow_action_raw.pkt_reformat)) { in mlx5_ib_flow_action_create_packet_reformat_ctx()
2309 ret = PTR_ERR(maction->flow_action_raw.pkt_reformat); in mlx5_ib_flow_action_create_packet_reformat_ctx()
2313 maction->flow_action_raw.sub_type = in mlx5_ib_flow_action_create_packet_reformat_ctx()
2315 maction->flow_action_raw.dev = dev; in mlx5_ib_flow_action_create_packet_reformat_ctx()
2328 struct mlx5_ib_flow_action *maction; in UVERBS_HANDLER() local
2344 maction = kzalloc(sizeof(*maction), GFP_KERNEL); in UVERBS_HANDLER()
2345 if (!maction) in UVERBS_HANDLER()
2350 maction->flow_action_raw.sub_type = in UVERBS_HANDLER()
2352 maction->flow_action_raw.dev = mdev; in UVERBS_HANDLER()
2368 maction, ft_type, dv_prt, in, len); in UVERBS_HANDLER()
2373 uverbs_flow_action_fill_action(&maction->ib_action, uobj, &mdev->ib_dev, in UVERBS_HANDLER()
2378 kfree(maction); in UVERBS_HANDLER()