Searched refs:xdst (Results 1 - 7 of 7) sorted by relevance

/linux-4.1.27/net/ipv6/
H A Dxfrm6_policy.c74 static void xfrm6_init_dst(struct net *net, struct xfrm_dst *xdst) xfrm6_init_dst() argument
76 struct rt6_info *rt = (struct rt6_info *)xdst; xfrm6_init_dst()
95 static int xfrm6_fill_dst(struct xfrm_dst *xdst, struct net_device *dev, xfrm6_fill_dst() argument
98 struct rt6_info *rt = (struct rt6_info *)xdst->route; xfrm6_fill_dst()
100 xdst->u.dst.dev = dev; xfrm6_fill_dst()
103 xdst->u.rt6.rt6i_idev = in6_dev_get(dev); xfrm6_fill_dst()
104 if (!xdst->u.rt6.rt6i_idev) { xfrm6_fill_dst()
109 rt6_transfer_peer(&xdst->u.rt6, rt); xfrm6_fill_dst()
113 xdst->u.rt6.rt6i_flags = rt->rt6i_flags & (RTF_ANYCAST | xfrm6_fill_dst()
115 xdst->u.rt6.rt6i_metric = rt->rt6i_metric; xfrm6_fill_dst()
116 xdst->u.rt6.rt6i_node = rt->rt6i_node; xfrm6_fill_dst()
118 xdst->route_cookie = rt->rt6i_node->fn_sernum; xfrm6_fill_dst()
119 xdst->u.rt6.rt6i_gateway = rt->rt6i_gateway; xfrm6_fill_dst()
120 xdst->u.rt6.rt6i_dst = rt->rt6i_dst; xfrm6_fill_dst()
121 xdst->u.rt6.rt6i_src = rt->rt6i_src; xfrm6_fill_dst()
236 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm6_update_pmtu() local
237 struct dst_entry *path = xdst->route; xfrm6_update_pmtu()
245 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm6_redirect() local
246 struct dst_entry *path = xdst->route; xfrm6_redirect()
253 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm6_dst_destroy() local
255 if (likely(xdst->u.rt6.rt6i_idev)) xfrm6_dst_destroy()
256 in6_dev_put(xdst->u.rt6.rt6i_idev); xfrm6_dst_destroy()
258 if (rt6_has_peer(&xdst->u.rt6)) { xfrm6_dst_destroy()
259 struct inet_peer *peer = rt6_peer_ptr(&xdst->u.rt6); xfrm6_dst_destroy()
262 xfrm_dst_destroy(xdst); xfrm6_dst_destroy()
268 struct xfrm_dst *xdst; xfrm6_dst_ifdown() local
273 xdst = (struct xfrm_dst *)dst; xfrm6_dst_ifdown()
274 if (xdst->u.rt6.rt6i_idev->dev == dev) { xfrm6_dst_ifdown()
280 in6_dev_put(xdst->u.rt6.rt6i_idev); xfrm6_dst_ifdown()
281 xdst->u.rt6.rt6i_idev = loopback_idev; xfrm6_dst_ifdown()
283 xdst = (struct xfrm_dst *)xdst->u.dst.child; xfrm6_dst_ifdown()
284 } while (xdst->u.dst.xfrm); xfrm6_dst_ifdown()
/linux-4.1.27/net/ipv4/
H A Dxfrm4_policy.c76 static int xfrm4_fill_dst(struct xfrm_dst *xdst, struct net_device *dev, xfrm4_fill_dst() argument
79 struct rtable *rt = (struct rtable *)xdst->route; xfrm4_fill_dst()
82 xdst->u.rt.rt_iif = fl4->flowi4_iif; xfrm4_fill_dst()
84 xdst->u.dst.dev = dev; xfrm4_fill_dst()
89 xdst->u.rt.rt_is_input = rt->rt_is_input; xfrm4_fill_dst()
90 xdst->u.rt.rt_flags = rt->rt_flags & (RTCF_BROADCAST | RTCF_MULTICAST | xfrm4_fill_dst()
92 xdst->u.rt.rt_type = rt->rt_type; xfrm4_fill_dst()
93 xdst->u.rt.rt_gateway = rt->rt_gateway; xfrm4_fill_dst()
94 xdst->u.rt.rt_uses_gateway = rt->rt_uses_gateway; xfrm4_fill_dst()
95 xdst->u.rt.rt_pmtu = rt->rt_pmtu; xfrm4_fill_dst()
96 INIT_LIST_HEAD(&xdst->u.rt.rt_uncached); xfrm4_fill_dst()
200 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm4_update_pmtu() local
201 struct dst_entry *path = xdst->route; xfrm4_update_pmtu()
209 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm4_redirect() local
210 struct dst_entry *path = xdst->route; xfrm4_redirect()
217 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm4_dst_destroy() local
221 xfrm_dst_destroy(xdst); xfrm4_dst_destroy()
/linux-4.1.27/net/xfrm/
H A Dxfrm_policy.c55 static int xfrm_bundle_ok(struct xfrm_dst *xdst);
1509 struct xfrm_dst *xdst = container_of(flo, struct xfrm_dst, flo); xfrm_bundle_flo_get() local
1510 struct dst_entry *dst = &xdst->u.dst; xfrm_bundle_flo_get()
1512 if (xdst->route == NULL) { xfrm_bundle_flo_get()
1516 if (xdst->num_xfrms > 0) xfrm_bundle_flo_get()
1532 struct xfrm_dst *xdst = container_of(flo, struct xfrm_dst, flo); xfrm_bundle_flo_check() local
1533 struct dst_entry *dst = &xdst->u.dst; xfrm_bundle_flo_check()
1535 if (!xdst->route) xfrm_bundle_flo_check()
1545 struct xfrm_dst *xdst = container_of(flo, struct xfrm_dst, flo); xfrm_bundle_flo_delete() local
1546 struct dst_entry *dst = &xdst->u.dst; xfrm_bundle_flo_delete()
1561 struct xfrm_dst *xdst; xfrm_alloc_dst() local
1578 xdst = dst_alloc(dst_ops, NULL, 0, DST_OBSOLETE_NONE, 0); xfrm_alloc_dst()
1580 if (likely(xdst)) { xfrm_alloc_dst()
1581 struct dst_entry *dst = &xdst->u.dst; xfrm_alloc_dst()
1583 memset(dst + 1, 0, sizeof(*xdst) - sizeof(*dst)); xfrm_alloc_dst()
1584 xdst->flo.ops = &xfrm_bundle_fc_ops; xfrm_alloc_dst()
1586 afinfo->init_dst(net, xdst); xfrm_alloc_dst()
1588 xdst = ERR_PTR(-ENOBUFS); xfrm_alloc_dst()
1592 return xdst; xfrm_alloc_dst()
1612 static inline int xfrm_fill_dst(struct xfrm_dst *xdst, struct net_device *dev, xfrm_fill_dst() argument
1616 xfrm_policy_get_afinfo(xdst->u.dst.ops->family); xfrm_fill_dst()
1622 err = afinfo->fill_dst(xdst, dev, fl); xfrm_fill_dst()
1664 struct xfrm_dst *xdst = xfrm_alloc_dst(net, family); xfrm_bundle_create() local
1665 struct dst_entry *dst1 = &xdst->u.dst; xfrm_bundle_create()
1667 err = PTR_ERR(xdst); xfrm_bundle_create()
1668 if (IS_ERR(xdst)) { xfrm_bundle_create()
1691 xdst->route = dst; xfrm_bundle_create()
1705 xdst->xfrm_genid = xfrm[i]->genid; xfrm_bundle_create()
1735 struct xfrm_dst *xdst = (struct xfrm_dst *)dst_prev; xfrm_bundle_create() local
1737 err = xfrm_fill_dst(xdst, dev, fl); xfrm_bundle_create()
1743 header_len -= xdst->u.dst.xfrm->props.header_len; xfrm_bundle_create()
1744 trailer_len -= xdst->u.dst.xfrm->props.trailer_len; xfrm_bundle_create()
1778 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm_dst_update_parent() local
1779 return xfrm_dst_alloc_copy((void **)&(xdst->partner), xfrm_dst_update_parent()
1790 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm_dst_update_origin() local
1791 return xfrm_dst_alloc_copy((void **)&(xdst->origin), fl, sizeof(*fl)); xfrm_dst_update_origin()
1849 struct xfrm_dst *xdst; xfrm_resolve_and_create_bundle() local
1866 xdst = (struct xfrm_dst *)dst; xfrm_resolve_and_create_bundle()
1867 xdst->num_xfrms = err; xfrm_resolve_and_create_bundle()
1878 xdst->num_pols = num_pols; xfrm_resolve_and_create_bundle()
1879 memcpy(xdst->pols, pols, sizeof(struct xfrm_policy *) * num_pols); xfrm_resolve_and_create_bundle()
1880 xdst->policy_genid = atomic_read(&pols[0]->genid); xfrm_resolve_and_create_bundle()
1882 return xdst; xfrm_resolve_and_create_bundle()
1966 struct xfrm_dst *xdst = (struct xfrm_dst *) dst; xdst_queue_output() local
1967 struct xfrm_policy *pol = xdst->pols[0]; xdst_queue_output()
2014 struct xfrm_dst *xdst; xfrm_create_dummy_bundle() local
2016 xdst = xfrm_alloc_dst(net, family); xfrm_create_dummy_bundle()
2017 if (IS_ERR(xdst)) xfrm_create_dummy_bundle()
2018 return xdst; xfrm_create_dummy_bundle()
2023 return xdst; xfrm_create_dummy_bundle()
2026 dst1 = &xdst->u.dst; xfrm_create_dummy_bundle()
2028 xdst->route = dst; xfrm_create_dummy_bundle()
2050 err = xfrm_fill_dst(xdst, dev, fl); xfrm_create_dummy_bundle()
2055 return xdst; xfrm_create_dummy_bundle()
2059 xdst = ERR_PTR(err); xfrm_create_dummy_bundle()
2069 struct xfrm_dst *xdst, *new_xdst; xfrm_bundle_lookup() local
2073 xdst = NULL; xfrm_bundle_lookup()
2075 xdst = container_of(oldflo, struct xfrm_dst, flo); xfrm_bundle_lookup()
2076 num_pols = xdst->num_pols; xfrm_bundle_lookup()
2077 num_xfrms = xdst->num_xfrms; xfrm_bundle_lookup()
2080 pols[i] = xdst->pols[i]; xfrm_bundle_lookup()
2084 dst_free(&xdst->u.dst); xfrm_bundle_lookup()
2085 xdst = NULL; xfrm_bundle_lookup()
2094 if (xdst == NULL) { xfrm_bundle_lookup()
2116 dst_hold(&xdst->u.dst); xfrm_bundle_lookup()
2122 xdst->num_xfrms = 0; xfrm_bundle_lookup()
2123 dst_hold(&xdst->u.dst); xfrm_bundle_lookup()
2128 if (xdst) { xfrm_bundle_lookup()
2130 xdst->num_pols = 0; xfrm_bundle_lookup()
2131 dst_free(&xdst->u.dst); xfrm_bundle_lookup()
2143 xdst = xfrm_create_dummy_bundle(net, xflo, fl, num_xfrms, family); xfrm_bundle_lookup()
2144 if (IS_ERR(xdst)) { xfrm_bundle_lookup()
2146 return ERR_CAST(xdst); xfrm_bundle_lookup()
2148 xdst->num_pols = num_pols; xfrm_bundle_lookup()
2149 xdst->num_xfrms = num_xfrms; xfrm_bundle_lookup()
2150 memcpy(xdst->pols, pols, sizeof(struct xfrm_policy *) * num_pols); xfrm_bundle_lookup()
2152 dst_hold(&xdst->u.dst); xfrm_bundle_lookup()
2153 return &xdst->flo; xfrm_bundle_lookup()
2158 if (xdst != NULL) xfrm_bundle_lookup()
2159 dst_free(&xdst->u.dst); xfrm_bundle_lookup()
2193 struct xfrm_dst *xdst; xfrm_lookup() local
2200 xdst = NULL; xfrm_lookup()
2217 xdst = xfrm_resolve_and_create_bundle( xfrm_lookup()
2220 if (IS_ERR(xdst)) { xfrm_lookup()
2222 err = PTR_ERR(xdst); xfrm_lookup()
2224 } else if (xdst == NULL) { xfrm_lookup()
2230 dst_hold(&xdst->u.dst); xfrm_lookup()
2231 xdst->u.dst.flags |= DST_NOCACHE; xfrm_lookup()
2232 route = xdst->route; xfrm_lookup()
2236 if (xdst == NULL) { xfrm_lookup()
2255 xdst = container_of(flo, struct xfrm_dst, flo); xfrm_lookup()
2257 num_pols = xdst->num_pols; xfrm_lookup()
2258 num_xfrms = xdst->num_xfrms; xfrm_lookup()
2259 memcpy(pols, xdst->pols, sizeof(struct xfrm_policy *) * num_pols); xfrm_lookup()
2260 route = xdst->route; xfrm_lookup()
2263 dst = &xdst->u.dst; xfrm_lookup()
2640 * X is the "xdst->route" of A (X is also the "dst->path" of A xfrm_dst_check()
2701 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm_init_pmtu() local
2705 xdst->child_mtu_cached = pmtu; xfrm_init_pmtu()
2709 route_mtu_cached = dst_mtu(xdst->route); xfrm_init_pmtu()
2710 xdst->route_mtu_cached = route_mtu_cached; xfrm_init_pmtu()
2739 struct xfrm_dst *xdst = (struct xfrm_dst *)dst; xfrm_bundle_ok() local
2743 if (xdst->xfrm_genid != dst->xfrm->genid) xfrm_bundle_ok()
2745 if (xdst->num_pols > 0 && xfrm_bundle_ok()
2746 xdst->policy_genid != atomic_read(&xdst->pols[0]->genid)) xfrm_bundle_ok()
2750 if (xdst->child_mtu_cached != mtu) { xfrm_bundle_ok()
2751 last = xdst; xfrm_bundle_ok()
2752 xdst->child_mtu_cached = mtu; xfrm_bundle_ok()
2755 if (!dst_check(xdst->route, xdst->route_cookie)) xfrm_bundle_ok()
2757 mtu = dst_mtu(xdst->route); xfrm_bundle_ok()
2758 if (xdst->route_mtu_cached != mtu) { xfrm_bundle_ok()
2759 last = xdst; xfrm_bundle_ok()
2760 xdst->route_mtu_cached = mtu; xfrm_bundle_ok()
/linux-4.1.27/include/net/
H A Dxfrm.h300 int (*fill_dst)(struct xfrm_dst *xdst,
961 static inline void xfrm_dst_destroy(struct xfrm_dst *xdst) xfrm_dst_destroy() argument
963 xfrm_pols_put(xdst->pols, xdst->num_pols); xfrm_dst_destroy()
964 dst_release(xdst->route); xfrm_dst_destroy()
965 if (likely(xdst->u.dst.xfrm)) xfrm_dst_destroy()
966 xfrm_state_put(xdst->u.dst.xfrm); xfrm_dst_destroy()
968 kfree(xdst->origin); xfrm_dst_destroy()
969 xdst->origin = NULL; xfrm_dst_destroy()
970 kfree(xdst->partner); xfrm_dst_destroy()
971 xdst->partner = NULL; xfrm_dst_destroy()
/linux-4.1.27/drivers/video/fbdev/mmp/hw/
H A Dmmp_ctrl.c157 writel_relaxed((win->ydst << 16) | win->xdst, &regs->v_size_z); overlay_set_win()
163 writel_relaxed((win->ydst << 16) | win->xdst, &regs->g_size_z); overlay_set_win()
/linux-4.1.27/include/video/
H A Dmmp_disp.h85 u16 xdst; member in struct:mmp_win
/linux-4.1.27/drivers/video/fbdev/mmp/fb/
H A Dmmpfb.c403 win.xsrc = win.xdst = fbi->mode.xres; mmpfb_set_win()

Completed in 279 milliseconds