Lines Matching refs:ul_rif

446 	struct mlxsw_sp_rif *ul_rif;  member
7712 mlxsw_sp_rif_ipip_lb_ul_rif_op(struct mlxsw_sp_rif *ul_rif, bool enable) in mlxsw_sp_rif_ipip_lb_ul_rif_op() argument
7714 struct mlxsw_sp *mlxsw_sp = ul_rif->mlxsw_sp; in mlxsw_sp_rif_ipip_lb_ul_rif_op()
7718 ul_rif->rif_index, ul_rif->vr_id, IP_MAX_MTU); in mlxsw_sp_rif_ipip_lb_ul_rif_op()
7729 struct mlxsw_sp_rif *ul_rif; in mlxsw_sp_ul_rif_create() local
7739 ul_rif = mlxsw_sp_rif_alloc(sizeof(*ul_rif), rif_index, vr->id, NULL); in mlxsw_sp_ul_rif_create()
7740 if (!ul_rif) in mlxsw_sp_ul_rif_create()
7743 mlxsw_sp->router->rifs[rif_index] = ul_rif; in mlxsw_sp_ul_rif_create()
7744 ul_rif->mlxsw_sp = mlxsw_sp; in mlxsw_sp_ul_rif_create()
7745 err = mlxsw_sp_rif_ipip_lb_ul_rif_op(ul_rif, true); in mlxsw_sp_ul_rif_create()
7749 return ul_rif; in mlxsw_sp_ul_rif_create()
7753 kfree(ul_rif); in mlxsw_sp_ul_rif_create()
7757 static void mlxsw_sp_ul_rif_destroy(struct mlxsw_sp_rif *ul_rif) in mlxsw_sp_ul_rif_destroy() argument
7759 struct mlxsw_sp *mlxsw_sp = ul_rif->mlxsw_sp; in mlxsw_sp_ul_rif_destroy()
7761 mlxsw_sp_rif_ipip_lb_ul_rif_op(ul_rif, false); in mlxsw_sp_ul_rif_destroy()
7762 mlxsw_sp->router->rifs[ul_rif->rif_index] = NULL; in mlxsw_sp_ul_rif_destroy()
7763 kfree(ul_rif); in mlxsw_sp_ul_rif_destroy()
7778 return vr->ul_rif; in mlxsw_sp_ul_rif_get()
7780 vr->ul_rif = mlxsw_sp_ul_rif_create(mlxsw_sp, vr, extack); in mlxsw_sp_ul_rif_get()
7781 if (IS_ERR(vr->ul_rif)) { in mlxsw_sp_ul_rif_get()
7782 err = PTR_ERR(vr->ul_rif); in mlxsw_sp_ul_rif_get()
7789 return vr->ul_rif; in mlxsw_sp_ul_rif_get()
7796 static void mlxsw_sp_ul_rif_put(struct mlxsw_sp_rif *ul_rif) in mlxsw_sp_ul_rif_put() argument
7798 struct mlxsw_sp *mlxsw_sp = ul_rif->mlxsw_sp; in mlxsw_sp_ul_rif_put()
7801 vr = &mlxsw_sp->router->vrs[ul_rif->vr_id]; in mlxsw_sp_ul_rif_put()
7807 mlxsw_sp_ul_rif_destroy(ul_rif); in mlxsw_sp_ul_rif_put()
7814 struct mlxsw_sp_rif *ul_rif; in mlxsw_sp_router_ul_rif_get() local
7818 ul_rif = mlxsw_sp_ul_rif_get(mlxsw_sp, ul_tb_id, NULL); in mlxsw_sp_router_ul_rif_get()
7819 if (IS_ERR(ul_rif)) in mlxsw_sp_router_ul_rif_get()
7820 return PTR_ERR(ul_rif); in mlxsw_sp_router_ul_rif_get()
7821 *ul_rif_index = ul_rif->rif_index; in mlxsw_sp_router_ul_rif_get()
7828 struct mlxsw_sp_rif *ul_rif; in mlxsw_sp_router_ul_rif_put() local
7832 ul_rif = mlxsw_sp->router->rifs[ul_rif_index]; in mlxsw_sp_router_ul_rif_put()
7833 if (WARN_ON(!ul_rif)) in mlxsw_sp_router_ul_rif_put()
7836 mlxsw_sp_ul_rif_put(ul_rif); in mlxsw_sp_router_ul_rif_put()
7845 struct mlxsw_sp_rif *ul_rif; in mlxsw_sp2_rif_ipip_lb_configure() local
7848 ul_rif = mlxsw_sp_ul_rif_get(mlxsw_sp, ul_tb_id, NULL); in mlxsw_sp2_rif_ipip_lb_configure()
7849 if (IS_ERR(ul_rif)) in mlxsw_sp2_rif_ipip_lb_configure()
7850 return PTR_ERR(ul_rif); in mlxsw_sp2_rif_ipip_lb_configure()
7852 err = mlxsw_sp_rif_ipip_lb_op(lb_rif, 0, ul_rif->rif_index, true); in mlxsw_sp2_rif_ipip_lb_configure()
7857 lb_rif->ul_rif_id = ul_rif->rif_index; in mlxsw_sp2_rif_ipip_lb_configure()
7862 mlxsw_sp_ul_rif_put(ul_rif); in mlxsw_sp2_rif_ipip_lb_configure()
7870 struct mlxsw_sp_rif *ul_rif; in mlxsw_sp2_rif_ipip_lb_deconfigure() local
7872 ul_rif = mlxsw_sp_rif_by_index(mlxsw_sp, lb_rif->ul_rif_id); in mlxsw_sp2_rif_ipip_lb_deconfigure()
7874 mlxsw_sp_ul_rif_put(ul_rif); in mlxsw_sp2_rif_ipip_lb_deconfigure()