/kernel/linux/linux-5.10/net/ipv4/ |
H A D | ipmr_base.c | 35 void (*table_set)(struct mr_table *mrt, in mr_table_alloc() 38 struct mr_table *mrt; in mr_table_alloc() local 41 mrt = kzalloc(sizeof(*mrt), GFP_KERNEL); in mr_table_alloc() 42 if (!mrt) in mr_table_alloc() 44 mrt->id = id; in mr_table_alloc() 45 write_pnet(&mrt->net, net); in mr_table_alloc() 47 mrt->ops = *ops; in mr_table_alloc() 48 err = rhltable_init(&mrt->mfc_hash, mrt in mr_table_alloc() 32 mr_table_alloc(struct net *net, u32 id, struct mr_table_ops *ops, void (*expire_func)(struct timer_list *t), void (*table_set)(struct mr_table *mrt, struct net *net)) mr_table_alloc() argument 64 mr_mfc_find_parent(struct mr_table *mrt, void *hasharg, int parent) mr_mfc_find_parent() argument 78 mr_mfc_find_any_parent(struct mr_table *mrt, int vifi) mr_mfc_find_any_parent() argument 93 mr_mfc_find_any(struct mr_table *mrt, int vifi, void *hasharg) mr_mfc_find_any() argument 116 struct mr_table *mrt = iter->mrt; mr_vif_seq_idx() local 132 struct mr_table *mrt = iter->mrt; mr_vif_seq_next() local 150 struct mr_table *mrt = it->mrt; mr_mfc_seq_idx() local 177 struct mr_table *mrt = it->mrt; mr_mfc_seq_next() local 208 mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, struct mr_mfc *c, struct rtmsg *rtm) mr_fill_mroute() argument 271 mr_mfc_uses_dev(const struct mr_table *mrt, const struct mr_mfc *c, const struct net_device *dev) mr_mfc_uses_dev() argument 289 mr_table_dump(struct mr_table *mrt, struct sk_buff *skb, struct netlink_callback *cb, int (*fill)(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags), spinlock_t *lock, struct fib_dump_filter *filter) mr_table_dump() argument 344 mr_rtm_dumproute(struct sk_buff *skb, struct netlink_callback *cb, struct mr_table *(*iter)(struct net *net, struct mr_table *mrt), int (*fill)(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags), spinlock_t *lock, struct fib_dump_filter *filter) mr_rtm_dumproute() argument 355 struct mr_table *mrt; mr_rtm_dumproute() local 387 mr_dump(struct net *net, struct notifier_block *nb, unsigned short family, int (*rules_dump)(struct net *net, struct notifier_block *nb, struct netlink_ext_ack *extack), struct mr_table *(*mr_iter)(struct net *net, struct mr_table *mrt), rwlock_t *mrt_lock, struct netlink_ext_ack *extack) mr_dump() argument 396 struct mr_table *mrt; mr_dump() local [all...] |
H A D | ipmr.c | 73 struct mr_table *mrt; member 76 /* Big lock, protecting vif table, mrt cache and mroute socket state. 98 static void ipmr_free_table(struct mr_table *mrt); 100 static void ip_mr_forward(struct net *net, struct mr_table *mrt, 103 static int ipmr_cache_report(struct mr_table *mrt, 105 static void mroute_netlink_event(struct mr_table *mrt, struct mfc_cache *mfc, 107 static void igmpmsg_netlink_event(struct mr_table *mrt, struct sk_buff *pkt); 108 static void mroute_clean_tables(struct mr_table *mrt, int flags); 112 #define ipmr_for_each_table(mrt, net) \ 113 list_for_each_entry_rcu(mrt, 117 ipmr_mr_table_iter(struct net *net, struct mr_table *mrt) ipmr_mr_table_iter() argument 136 struct mr_table *mrt; ipmr_get_table() local 145 ipmr_fib_lookup(struct net *net, struct flowi4 *flp4, struct mr_table **mrt) ipmr_fib_lookup() argument 170 struct mr_table *mrt; ipmr_rule_action() local 241 struct mr_table *mrt; ipmr_rules_init() local 274 struct mr_table *mrt, *next; ipmr_rules_exit() local 305 ipmr_mr_table_iter(struct net *net, struct mr_table *mrt) ipmr_mr_table_iter() argument 318 ipmr_fib_lookup(struct net *net, struct flowi4 *flp4, struct mr_table **mrt) ipmr_fib_lookup() argument 327 struct mr_table *mrt; ipmr_rules_init() local 381 ipmr_new_table_set(struct mr_table *mrt, struct net *net) ipmr_new_table_set() argument 401 struct mr_table *mrt; ipmr_new_table() local 415 ipmr_free_table(struct mr_table *mrt) ipmr_free_table() argument 497 struct mr_table *mrt; reg_vif_xmit() local 540 ipmr_reg_vif(struct net *net, struct mr_table *mrt) ipmr_reg_vif() argument 577 __pim_rcv(struct mr_table *mrt, struct sk_buff *skb, unsigned int pimlen) __pim_rcv() argument 615 ipmr_reg_vif(struct net *net, struct mr_table *mrt) ipmr_reg_vif() argument 646 vif_delete(struct mr_table *mrt, int vifi, int notify, struct list_head *head) vif_delete() argument 720 ipmr_destroy_unres(struct mr_table *mrt, struct mfc_cache *c) ipmr_destroy_unres() argument 751 struct mr_table *mrt = from_timer(mrt, t, ipmr_expire_timer); ipmr_expire_process() local 788 ipmr_update_thresholds(struct mr_table *mrt, struct mr_mfc *cache, unsigned char *ttls) ipmr_update_thresholds() argument 810 vif_add(struct net *net, struct mr_table *mrt, struct vifctl *vifc, int mrtsock) vif_add() argument 911 ipmr_cache_find(struct mr_table *mrt, __be32 origin, __be32 mcastgrp) ipmr_cache_find() argument 924 ipmr_cache_find_any(struct mr_table *mrt, __be32 mcastgrp, int vifi) ipmr_cache_find_any() argument 938 ipmr_cache_find_parent(struct mr_table *mrt, __be32 origin, __be32 mcastgrp, int parent) ipmr_cache_find_parent() argument 976 ipmr_cache_resolve(struct net *net, struct mr_table *mrt, struct mfc_cache *uc, struct mfc_cache *c) ipmr_cache_resolve() argument 1012 ipmr_cache_report(struct mr_table *mrt, struct sk_buff *pkt, vifi_t vifi, int assert) ipmr_cache_report() argument 1095 ipmr_cache_unresolved(struct mr_table *mrt, vifi_t vifi, struct sk_buff *skb, struct net_device *dev) ipmr_cache_unresolved() argument 1169 ipmr_mfc_delete(struct mr_table *mrt, struct mfcctl *mfc, int parent) ipmr_mfc_delete() argument 1190 ipmr_mfc_add(struct net *net, struct mr_table *mrt, struct mfcctl *mfc, int mrtsock, int parent) ipmr_mfc_add() argument 1271 mroute_clean_tables(struct mr_table *mrt, int flags) mroute_clean_tables() argument 1327 struct mr_table *mrt; mrtsock_destruct() local 1355 struct mr_table *mrt; ip_mroute_setsockopt() local 1548 struct mr_table *mrt; ip_mroute_getsockopt() local 1594 struct mr_table *mrt; ipmr_ioctl() local 1669 struct mr_table *mrt; ipmr_compat_ioctl() local 1725 struct mr_table *mrt; ipmr_device_event() local 1792 ipmr_forward_offloaded(struct sk_buff *skb, struct mr_table *mrt, int in_vifi, int out_vifi) ipmr_forward_offloaded() argument 1806 ipmr_forward_offloaded(struct sk_buff *skb, struct mr_table *mrt, int in_vifi, int out_vifi) ipmr_forward_offloaded() argument 1815 ipmr_queue_xmit(struct net *net, struct mr_table *mrt, int in_vifi, struct sk_buff *skb, int vifi) ipmr_queue_xmit() argument 1915 ipmr_find_vif(struct mr_table *mrt, struct net_device *dev) ipmr_find_vif() argument 1927 ip_mr_forward(struct net *net, struct mr_table *mrt, struct net_device *dev, struct sk_buff *skb, struct mfc_cache *c, int local) ip_mr_forward() argument 2061 struct mr_table *mrt; ipmr_rt_fib_lookup() local 2078 struct mr_table *mrt; ip_mr_input() local 2184 struct mr_table *mrt; pim_rcv_v1() local 2211 struct mr_table *mrt; pim_rcv() local 2239 struct mr_table *mrt; ipmr_get_route() local 2298 ipmr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mfc_cache *c, int cmd, int flags) ipmr_fill_mroute() argument 2342 _ipmr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags) _ipmr_fill_mroute() argument 2371 mroute_netlink_event(struct mr_table *mrt, struct mfc_cache *mfc, int cmd) mroute_netlink_event() argument 2413 igmpmsg_netlink_event(struct mr_table *mrt, struct sk_buff *pkt) igmpmsg_netlink_event() argument 2524 struct mr_table *mrt; ipmr_rtm_getroute() local 2587 struct mr_table *mrt; ipmr_rtm_dumproute() local 2647 struct mr_table *mrt; rtm_to_ipmr_mfcc() local 2733 ipmr_fill_table(struct mr_table *mrt, struct sk_buff *skb) ipmr_fill_table() argument 2751 ipmr_fill_vif(struct mr_table *mrt, u32 vifid, struct sk_buff *skb) ipmr_fill_vif() argument 2816 struct mr_table *mrt; ipmr_rtm_dumplink() local 2900 struct mr_table *mrt; __acquires() local 2921 struct mr_table *mrt = iter->mrt; ipmr_vif_seq_show() local 2951 struct mr_table *mrt; ipmr_mfc_seq_start() local 2970 const struct mr_table *mrt = it->mrt; ipmr_mfc_seq_show() local [all...] |
/kernel/linux/linux-6.6/net/ipv4/ |
H A D | ipmr_base.c | 35 void (*table_set)(struct mr_table *mrt, in mr_table_alloc() 38 struct mr_table *mrt; in mr_table_alloc() local 41 mrt = kzalloc(sizeof(*mrt), GFP_KERNEL); in mr_table_alloc() 42 if (!mrt) in mr_table_alloc() 44 mrt->id = id; in mr_table_alloc() 45 write_pnet(&mrt->net, net); in mr_table_alloc() 47 mrt->ops = *ops; in mr_table_alloc() 48 err = rhltable_init(&mrt->mfc_hash, mrt in mr_table_alloc() 32 mr_table_alloc(struct net *net, u32 id, struct mr_table_ops *ops, void (*expire_func)(struct timer_list *t), void (*table_set)(struct mr_table *mrt, struct net *net)) mr_table_alloc() argument 64 mr_mfc_find_parent(struct mr_table *mrt, void *hasharg, int parent) mr_mfc_find_parent() argument 78 mr_mfc_find_any_parent(struct mr_table *mrt, int vifi) mr_mfc_find_any_parent() argument 93 mr_mfc_find_any(struct mr_table *mrt, int vifi, void *hasharg) mr_mfc_find_any() argument 116 struct mr_table *mrt = iter->mrt; mr_vif_seq_idx() local 132 struct mr_table *mrt = iter->mrt; mr_vif_seq_next() local 150 struct mr_table *mrt = it->mrt; mr_mfc_seq_idx() local 177 struct mr_table *mrt = it->mrt; mr_mfc_seq_next() local 208 mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, struct mr_mfc *c, struct rtmsg *rtm) mr_fill_mroute() argument 279 mr_mfc_uses_dev(const struct mr_table *mrt, const struct mr_mfc *c, const struct net_device *dev) mr_mfc_uses_dev() argument 298 mr_table_dump(struct mr_table *mrt, struct sk_buff *skb, struct netlink_callback *cb, int (*fill)(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags), spinlock_t *lock, struct fib_dump_filter *filter) mr_table_dump() argument 353 mr_rtm_dumproute(struct sk_buff *skb, struct netlink_callback *cb, struct mr_table *(*iter)(struct net *net, struct mr_table *mrt), int (*fill)(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags), spinlock_t *lock, struct fib_dump_filter *filter) mr_rtm_dumproute() argument 364 struct mr_table *mrt; mr_rtm_dumproute() local 396 mr_dump(struct net *net, struct notifier_block *nb, unsigned short family, int (*rules_dump)(struct net *net, struct notifier_block *nb, struct netlink_ext_ack *extack), struct mr_table *(*mr_iter)(struct net *net, struct mr_table *mrt), struct netlink_ext_ack *extack) mr_dump() argument 404 struct mr_table *mrt; mr_dump() local [all...] |
H A D | ipmr.c | 73 struct mr_table *mrt; member 76 /* Big lock, protecting vif table, mrt cache and mroute socket state. 103 static void ipmr_free_table(struct mr_table *mrt); 105 static void ip_mr_forward(struct net *net, struct mr_table *mrt, 108 static int ipmr_cache_report(const struct mr_table *mrt, 110 static void mroute_netlink_event(struct mr_table *mrt, struct mfc_cache *mfc, 112 static void igmpmsg_netlink_event(const struct mr_table *mrt, struct sk_buff *pkt); 113 static void mroute_clean_tables(struct mr_table *mrt, int flags); 117 #define ipmr_for_each_table(mrt, net) \ 118 list_for_each_entry_rcu(mrt, 122 ipmr_mr_table_iter(struct net *net, struct mr_table *mrt) ipmr_mr_table_iter() argument 141 struct mr_table *mrt; ipmr_get_table() local 150 ipmr_fib_lookup(struct net *net, struct flowi4 *flp4, struct mr_table **mrt) ipmr_fib_lookup() argument 175 struct mr_table *mrt; ipmr_rule_action() local 241 struct mr_table *mrt; ipmr_rules_init() local 274 struct mr_table *mrt, *next; ipmr_rules_exit() local 304 ipmr_mr_table_iter(struct net *net, struct mr_table *mrt) ipmr_mr_table_iter() argument 317 ipmr_fib_lookup(struct net *net, struct flowi4 *flp4, struct mr_table **mrt) ipmr_fib_lookup() argument 326 struct mr_table *mrt; ipmr_rules_init() local 379 ipmr_new_table_set(struct mr_table *mrt, struct net *net) ipmr_new_table_set() argument 399 struct mr_table *mrt; ipmr_new_table() local 413 ipmr_free_table(struct mr_table *mrt) ipmr_free_table() argument 495 struct mr_table *mrt; reg_vif_xmit() local 542 ipmr_reg_vif(struct net *net, struct mr_table *mrt) ipmr_reg_vif() argument 579 __pim_rcv(struct mr_table *mrt, struct sk_buff *skb, unsigned int pimlen) __pim_rcv() argument 617 ipmr_reg_vif(struct net *net, struct mr_table *mrt) ipmr_reg_vif() argument 649 vif_delete(struct mr_table *mrt, int vifi, int notify, struct list_head *head) vif_delete() argument 720 ipmr_destroy_unres(struct mr_table *mrt, struct mfc_cache *c) ipmr_destroy_unres() argument 751 struct mr_table *mrt = from_timer(mrt, t, ipmr_expire_timer); ipmr_expire_process() local 788 ipmr_update_thresholds(struct mr_table *mrt, struct mr_mfc *cache, unsigned char *ttls) ipmr_update_thresholds() argument 810 vif_add(struct net *net, struct mr_table *mrt, struct vifctl *vifc, int mrtsock) vif_add() argument 915 ipmr_cache_find(struct mr_table *mrt, __be32 origin, __be32 mcastgrp) ipmr_cache_find() argument 928 ipmr_cache_find_any(struct mr_table *mrt, __be32 mcastgrp, int vifi) ipmr_cache_find_any() argument 942 ipmr_cache_find_parent(struct mr_table *mrt, __be32 origin, __be32 mcastgrp, int parent) ipmr_cache_find_parent() argument 980 ipmr_cache_resolve(struct net *net, struct mr_table *mrt, struct mfc_cache *uc, struct mfc_cache *c) ipmr_cache_resolve() argument 1018 ipmr_cache_report(const struct mr_table *mrt, struct sk_buff *pkt, vifi_t vifi, int assert) ipmr_cache_report() argument 1102 ipmr_cache_unresolved(struct mr_table *mrt, vifi_t vifi, struct sk_buff *skb, struct net_device *dev) ipmr_cache_unresolved() argument 1176 ipmr_mfc_delete(struct mr_table *mrt, struct mfcctl *mfc, int parent) ipmr_mfc_delete() argument 1197 ipmr_mfc_add(struct net *net, struct mr_table *mrt, struct mfcctl *mfc, int mrtsock, int parent) ipmr_mfc_add() argument 1278 mroute_clean_tables(struct mr_table *mrt, int flags) mroute_clean_tables() argument 1334 struct mr_table *mrt; mrtsock_destruct() local 1362 struct mr_table *mrt; ip_mroute_setsockopt() local 1578 struct mr_table *mrt; ip_mroute_getsockopt() local 1626 struct mr_table *mrt; ipmr_ioctl() local 1694 struct mr_table *mrt; ipmr_compat_ioctl() local 1750 struct mr_table *mrt; ipmr_device_event() local 1816 ipmr_forward_offloaded(struct sk_buff *skb, struct mr_table *mrt, int in_vifi, int out_vifi) ipmr_forward_offloaded() argument 1830 ipmr_forward_offloaded(struct sk_buff *skb, struct mr_table *mrt, int in_vifi, int out_vifi) ipmr_forward_offloaded() argument 1839 ipmr_queue_xmit(struct net *net, struct mr_table *mrt, int in_vifi, struct sk_buff *skb, int vifi) ipmr_queue_xmit() argument 1942 ipmr_find_vif(const struct mr_table *mrt, struct net_device *dev) ipmr_find_vif() argument 1955 ip_mr_forward(struct net *net, struct mr_table *mrt, struct net_device *dev, struct sk_buff *skb, struct mfc_cache *c, int local) ip_mr_forward() argument 2091 struct mr_table *mrt; ipmr_rt_fib_lookup() local 2108 struct mr_table *mrt; ip_mr_input() local 2206 struct mr_table *mrt; pim_rcv_v1() local 2233 struct mr_table *mrt; pim_rcv() local 2261 struct mr_table *mrt; ipmr_get_route() local 2314 ipmr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mfc_cache *c, int cmd, int flags) ipmr_fill_mroute() argument 2358 _ipmr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags) _ipmr_fill_mroute() argument 2387 mroute_netlink_event(struct mr_table *mrt, struct mfc_cache *mfc, int cmd) mroute_netlink_event() argument 2429 igmpmsg_netlink_event(const struct mr_table *mrt, struct sk_buff *pkt) igmpmsg_netlink_event() argument 2540 struct mr_table *mrt; ipmr_rtm_getroute() local 2603 struct mr_table *mrt; ipmr_rtm_dumproute() local 2663 struct mr_table *mrt; rtm_to_ipmr_mfcc() local 2749 ipmr_fill_table(struct mr_table *mrt, struct sk_buff *skb) ipmr_fill_table() argument 2767 ipmr_fill_vif(struct mr_table *mrt, u32 vifid, struct sk_buff *skb) ipmr_fill_vif() argument 2835 struct mr_table *mrt; ipmr_rtm_dumplink() local 2919 struct mr_table *mrt; __acquires() local 2940 struct mr_table *mrt = iter->mrt; ipmr_vif_seq_show() local 2972 struct mr_table *mrt; ipmr_mfc_seq_start() local 2991 const struct mr_table *mrt = it->mrt; ipmr_mfc_seq_show() local [all...] |
/kernel/linux/linux-6.6/net/ipv6/ |
H A D | ip6mr.c | 58 struct mr_table *mrt; member 61 /* Big lock, protecting vif table, mrt cache and mroute socket state. 88 static void ip6mr_free_table(struct mr_table *mrt); 90 static void ip6_mr_forward(struct net *net, struct mr_table *mrt, 93 static int ip6mr_cache_report(const struct mr_table *mrt, struct sk_buff *pkt, 95 static void mr6_netlink_event(struct mr_table *mrt, struct mfc6_cache *mfc, 97 static void mrt6msg_netlink_event(const struct mr_table *mrt, struct sk_buff *pkt); 102 static void mroute_clean_tables(struct mr_table *mrt, int flags); 106 #define ip6mr_for_each_table(mrt, net) \ 107 list_for_each_entry_rcu(mrt, 111 ip6mr_mr_table_iter(struct net *net, struct mr_table *mrt) ip6mr_mr_table_iter() argument 130 struct mr_table *mrt; ip6mr_get_table() local 139 ip6mr_fib_lookup(struct net *net, struct flowi6 *flp6, struct mr_table **mrt) ip6mr_fib_lookup() argument 164 struct mr_table *mrt; ip6mr_rule_action() local 230 struct mr_table *mrt; ip6mr_rules_init() local 263 struct mr_table *mrt, *next; ip6mr_rules_exit() local 294 ip6mr_mr_table_iter(struct net *net, struct mr_table *mrt) ip6mr_mr_table_iter() argument 307 ip6mr_fib_lookup(struct net *net, struct flowi6 *flp6, struct mr_table **mrt) ip6mr_fib_lookup() argument 316 struct mr_table *mrt; ip6mr_rules_init() local 363 ip6mr_new_table_set(struct mr_table *mrt, struct net *net) ip6mr_new_table_set() argument 383 struct mr_table *mrt; ip6mr_new_table() local 393 ip6mr_free_table(struct mr_table *mrt) ip6mr_free_table() argument 412 struct mr_table *mrt; __acquires() local 433 struct mr_table *mrt = iter->mrt; ip6mr_vif_seq_show() local 466 struct mr_table *mrt; ipmr_mfc_seq_start() local 487 struct mr_table *mrt = it->mrt; ipmr_mfc_seq_show() local 533 struct mr_table *mrt; pim6_rcv() local 598 struct mr_table *mrt; reg_vif_xmit() local 646 ip6mr_reg_vif(struct net *net, struct mr_table *mrt) ip6mr_reg_vif() argument 699 mif6_delete(struct mr_table *mrt, int vifi, int notify, struct list_head *head) mif6_delete() argument 772 ip6mr_destroy_unres(struct mr_table *mrt, struct mfc6_cache *c) ip6mr_destroy_unres() argument 798 ipmr_do_expire_process(struct mr_table *mrt) ipmr_do_expire_process() argument 824 struct mr_table *mrt = from_timer(mrt, t, ipmr_expire_timer); ipmr_expire_process() local 839 ip6mr_update_thresholds(struct mr_table *mrt, struct mr_mfc *cache, unsigned char *ttls) ip6mr_update_thresholds() argument 862 mif6_add(struct net *net, struct mr_table *mrt, struct mif6ctl *vifc, int mrtsock) mif6_add() argument 938 ip6mr_cache_find(struct mr_table *mrt, const struct in6_addr *origin, const struct in6_addr *mcastgrp) ip6mr_cache_find() argument 951 ip6mr_cache_find_any(struct mr_table *mrt, struct in6_addr *mcastgrp, mifi_t mifi) ip6mr_cache_find_any() argument 967 ip6mr_cache_find_parent(struct mr_table *mrt, const struct in6_addr *origin, const struct in6_addr *mcastgrp, int parent) ip6mr_cache_find_parent() argument 1007 ip6mr_cache_resolve(struct net *net, struct mr_table *mrt, struct mfc6_cache *uc, struct mfc6_cache *c) ip6mr_cache_resolve() argument 1045 ip6mr_cache_report(const struct mr_table *mrt, struct sk_buff *pkt, mifi_t mifi, int assert) ip6mr_cache_report() argument 1141 ip6mr_cache_unresolved(struct mr_table *mrt, mifi_t mifi, struct sk_buff *skb, struct net_device *dev) ip6mr_cache_unresolved() argument 1218 ip6mr_mfc_delete(struct mr_table *mrt, struct mf6cctl *mfc, int parent) ip6mr_mfc_delete() argument 1245 struct mr_table *mrt; ip6mr_device_event() local 1425 ip6mr_mfc_add(struct net *net, struct mr_table *mrt, struct mf6cctl *mfc, int mrtsock, int parent) ip6mr_mfc_add() argument 1518 mroute_clean_tables(struct mr_table *mrt, int flags) mroute_clean_tables() argument 1566 ip6mr_sk_init(struct mr_table *mrt, struct sock *sk) ip6mr_sk_init() argument 1596 struct mr_table *mrt; ip6mr_sk_done() local 1635 struct mr_table *mrt; mroute6_is_socket() local 1664 struct mr_table *mrt; ip6_mroute_setsockopt() local 1839 struct mr_table *mrt; ip6_mroute_getsockopt() local 1889 struct mr_table *mrt; ip6mr_ioctl() local 1957 struct mr_table *mrt; ip6mr_compat_ioctl() local 2020 ip6mr_forward2(struct net *net, struct mr_table *mrt, struct sk_buff *skb, int vifi) ip6mr_forward2() argument 2095 ip6mr_find_vif(struct mr_table *mrt, struct net_device *dev) ip6mr_find_vif() argument 2108 ip6_mr_forward(struct net *net, struct mr_table *mrt, struct net_device *dev, struct sk_buff *skb, struct mfc6_cache *c) ip6_mr_forward() argument 2215 struct mr_table *mrt; ip6_mr_input() local 2277 struct mr_table *mrt; ip6mr_get_route() local 2343 ip6mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mfc6_cache *c, int cmd, int flags) ip6mr_fill_mroute() argument 2387 _ip6mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags) _ip6mr_fill_mroute() argument 2416 mr6_netlink_event(struct mr_table *mrt, struct mfc6_cache *mfc, int cmd) mr6_netlink_event() argument 2458 mrt6msg_netlink_event(const struct mr_table *mrt, struct sk_buff *pkt) mrt6msg_netlink_event() argument 2551 struct mr_table *mrt; ip6mr_rtm_getroute() local 2609 struct mr_table *mrt; ip6mr_rtm_dumproute() local [all...] |
H A D | addrconf.c | 112 static inline s32 rfc3315_s14_backoff_update(s32 rt, s32 mrt) in rfc3315_s14_backoff_update() argument 117 if ((s32)tmp > mrt) { in rfc3315_s14_backoff_update() 119 tmp = get_random_u32_inclusive(900000, 1100000) * (u64)mrt; in rfc3315_s14_backoff_update()
|
/kernel/linux/linux-5.10/net/ipv6/ |
H A D | ip6mr.c | 58 struct mr_table *mrt; member 61 /* Big lock, protecting vif table, mrt cache and mroute socket state. 83 static void ip6mr_free_table(struct mr_table *mrt); 85 static void ip6_mr_forward(struct net *net, struct mr_table *mrt, 88 static int ip6mr_cache_report(struct mr_table *mrt, struct sk_buff *pkt, 90 static void mr6_netlink_event(struct mr_table *mrt, struct mfc6_cache *mfc, 92 static void mrt6msg_netlink_event(struct mr_table *mrt, struct sk_buff *pkt); 95 static void mroute_clean_tables(struct mr_table *mrt, int flags); 99 #define ip6mr_for_each_table(mrt, net) \ 100 list_for_each_entry_rcu(mrt, 104 ip6mr_mr_table_iter(struct net *net, struct mr_table *mrt) ip6mr_mr_table_iter() argument 123 struct mr_table *mrt; ip6mr_get_table() local 132 ip6mr_fib_lookup(struct net *net, struct flowi6 *flp6, struct mr_table **mrt) ip6mr_fib_lookup() argument 157 struct mr_table *mrt; ip6mr_rule_action() local 228 struct mr_table *mrt; ip6mr_rules_init() local 261 struct mr_table *mrt, *next; ip6mr_rules_exit() local 293 ip6mr_mr_table_iter(struct net *net, struct mr_table *mrt) ip6mr_mr_table_iter() argument 306 ip6mr_fib_lookup(struct net *net, struct flowi6 *flp6, struct mr_table **mrt) ip6mr_fib_lookup() argument 315 struct mr_table *mrt; ip6mr_rules_init() local 363 ip6mr_new_table_set(struct mr_table *mrt, struct net *net) ip6mr_new_table_set() argument 383 struct mr_table *mrt; ip6mr_new_table() local 393 ip6mr_free_table(struct mr_table *mrt) ip6mr_free_table() argument 412 struct mr_table *mrt; __acquires() local 433 struct mr_table *mrt = iter->mrt; ip6mr_vif_seq_show() local 462 struct mr_table *mrt; ipmr_mfc_seq_start() local 483 struct mr_table *mrt = it->mrt; ipmr_mfc_seq_show() local 529 struct mr_table *mrt; pim6_rcv() local 598 struct mr_table *mrt; reg_vif_xmit() local 645 ip6mr_reg_vif(struct net *net, struct mr_table *mrt) ip6mr_reg_vif() argument 697 mif6_delete(struct mr_table *mrt, int vifi, int notify, struct list_head *head) mif6_delete() argument 772 ip6mr_destroy_unres(struct mr_table *mrt, struct mfc6_cache *c) ip6mr_destroy_unres() argument 798 ipmr_do_expire_process(struct mr_table *mrt) ipmr_do_expire_process() argument 824 struct mr_table *mrt = from_timer(mrt, t, ipmr_expire_timer); ipmr_expire_process() local 839 ip6mr_update_thresholds(struct mr_table *mrt, struct mr_mfc *cache, unsigned char *ttls) ip6mr_update_thresholds() argument 862 mif6_add(struct net *net, struct mr_table *mrt, struct mif6ctl *vifc, int mrtsock) mif6_add() argument 937 ip6mr_cache_find(struct mr_table *mrt, const struct in6_addr *origin, const struct in6_addr *mcastgrp) ip6mr_cache_find() argument 950 ip6mr_cache_find_any(struct mr_table *mrt, struct in6_addr *mcastgrp, mifi_t mifi) ip6mr_cache_find_any() argument 966 ip6mr_cache_find_parent(struct mr_table *mrt, const struct in6_addr *origin, const struct in6_addr *mcastgrp, int parent) ip6mr_cache_find_parent() argument 1006 ip6mr_cache_resolve(struct net *net, struct mr_table *mrt, struct mfc6_cache *uc, struct mfc6_cache *c) ip6mr_cache_resolve() argument 1041 ip6mr_cache_report(struct mr_table *mrt, struct sk_buff *pkt, mifi_t mifi, int assert) ip6mr_cache_report() argument 1136 ip6mr_cache_unresolved(struct mr_table *mrt, mifi_t mifi, struct sk_buff *skb, struct net_device *dev) ip6mr_cache_unresolved() argument 1213 ip6mr_mfc_delete(struct mr_table *mrt, struct mf6cctl *mfc, int parent) ip6mr_mfc_delete() argument 1240 struct mr_table *mrt; ip6mr_device_event() local 1408 ip6mr_mfc_add(struct net *net, struct mr_table *mrt, struct mf6cctl *mfc, int mrtsock, int parent) ip6mr_mfc_add() argument 1501 mroute_clean_tables(struct mr_table *mrt, int flags) mroute_clean_tables() argument 1549 ip6mr_sk_init(struct mr_table *mrt, struct sock *sk) ip6mr_sk_init() argument 1579 struct mr_table *mrt; ip6mr_sk_done() local 1613 struct mr_table *mrt; mroute6_is_socket() local 1642 struct mr_table *mrt; ip6_mroute_setsockopt() local 1813 struct mr_table *mrt; ip6_mroute_getsockopt() local 1864 struct mr_table *mrt; ip6mr_ioctl() local 1939 struct mr_table *mrt; ip6mr_compat_ioctl() local 2004 ip6mr_forward2(struct net *net, struct mr_table *mrt, struct sk_buff *skb, int vifi) ip6mr_forward2() argument 2078 ip6mr_find_vif(struct mr_table *mrt, struct net_device *dev) ip6mr_find_vif() argument 2089 ip6_mr_forward(struct net *net, struct mr_table *mrt, struct net_device *dev, struct sk_buff *skb, struct mfc6_cache *c) ip6_mr_forward() argument 2195 struct mr_table *mrt; ip6_mr_input() local 2262 struct mr_table *mrt; ip6mr_get_route() local 2328 ip6mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mfc6_cache *c, int cmd, int flags) ip6mr_fill_mroute() argument 2372 _ip6mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags) _ip6mr_fill_mroute() argument 2401 mr6_netlink_event(struct mr_table *mrt, struct mfc6_cache *mfc, int cmd) mr6_netlink_event() argument 2443 mrt6msg_netlink_event(struct mr_table *mrt, struct sk_buff *pkt) mrt6msg_netlink_event() argument 2505 struct mr_table *mrt; ip6mr_rtm_dumproute() local [all...] |
H A D | addrconf.c | 111 static inline s32 rfc3315_s14_backoff_update(s32 rt, s32 mrt) in rfc3315_s14_backoff_update() argument 116 if ((s32)tmp > mrt) { in rfc3315_s14_backoff_update() 118 tmp = (900000 + prandom_u32() % 200001) * (u64)mrt; in rfc3315_s14_backoff_update()
|
/kernel/linux/linux-5.10/include/linux/ |
H A D | mroute_base.h | 272 void (*table_set)(struct mr_table *mrt, 278 void *mr_mfc_find_parent(struct mr_table *mrt, 280 void *mr_mfc_find_any_parent(struct mr_table *mrt, int vifi); 281 void *mr_mfc_find_any(struct mr_table *mrt, int vifi, void *hasharg); 283 int mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, 285 int mr_table_dump(struct mr_table *mrt, struct sk_buff *skb, 287 int (*fill)(struct mr_table *mrt, struct sk_buff *skb, 293 struct mr_table *mrt), 294 int (*fill)(struct mr_table *mrt, 305 struct mr_table *mrt), 317 mr_mfc_find_parent(struct mr_table *mrt, void *hasharg, int parent) mr_mfc_find_parent() argument 323 mr_mfc_find_any_parent(struct mr_table *mrt, int vifi) mr_mfc_find_any_parent() argument 329 mr_mfc_find_any(struct mr_table *mrt, int vifi, void *hasharg) mr_mfc_find_any() argument 335 mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, struct mr_mfc *c, struct rtmsg *rtm) mr_fill_mroute() argument 342 mr_rtm_dumproute(struct sk_buff *skb, struct netlink_callback *cb, struct mr_table *(*iter)(struct net *net, struct mr_table *mrt), int (*fill)(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags), spinlock_t *lock, struct fib_dump_filter *filter) mr_rtm_dumproute() argument 354 mr_dump(struct net *net, struct notifier_block *nb, unsigned short family, int (*rules_dump)(struct net *net, struct notifier_block *nb, struct netlink_ext_ack *extack), struct mr_table *(*mr_iter)(struct net *net, struct mr_table *mrt), rwlock_t *mrt_lock, struct netlink_ext_ack *extack) mr_dump() argument 367 mr_mfc_find(struct mr_table *mrt, void *hasharg) mr_mfc_find() argument 375 struct mr_table *mrt; global() member 381 struct mr_table *mrt; global() member 407 mr_mfc_seq_start(struct seq_file *seq, loff_t *pos, struct mr_table *mrt, spinlock_t *lock) mr_mfc_seq_start() argument 424 struct mr_table *mrt = it->mrt; mr_mfc_seq_stop() local 461 mr_mfc_seq_start(struct seq_file *seq, loff_t *pos, struct mr_table *mrt, spinlock_t *lock) mr_mfc_seq_start() argument [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | mroute_base.h | 277 void (*table_set)(struct mr_table *mrt, 283 void *mr_mfc_find_parent(struct mr_table *mrt, 285 void *mr_mfc_find_any_parent(struct mr_table *mrt, int vifi); 286 void *mr_mfc_find_any(struct mr_table *mrt, int vifi, void *hasharg); 288 int mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, 290 int mr_table_dump(struct mr_table *mrt, struct sk_buff *skb, 292 int (*fill)(struct mr_table *mrt, struct sk_buff *skb, 298 struct mr_table *mrt), 299 int (*fill)(struct mr_table *mrt, 310 struct mr_table *mrt), 322 mr_mfc_find_parent(struct mr_table *mrt, void *hasharg, int parent) mr_mfc_find_parent() argument 328 mr_mfc_find_any_parent(struct mr_table *mrt, int vifi) mr_mfc_find_any_parent() argument 334 mr_mfc_find_any(struct mr_table *mrt, int vifi, void *hasharg) mr_mfc_find_any() argument 340 mr_fill_mroute(struct mr_table *mrt, struct sk_buff *skb, struct mr_mfc *c, struct rtmsg *rtm) mr_fill_mroute() argument 347 mr_rtm_dumproute(struct sk_buff *skb, struct netlink_callback *cb, struct mr_table *(*iter)(struct net *net, struct mr_table *mrt), int (*fill)(struct mr_table *mrt, struct sk_buff *skb, u32 portid, u32 seq, struct mr_mfc *c, int cmd, int flags), spinlock_t *lock, struct fib_dump_filter *filter) mr_rtm_dumproute() argument 359 mr_dump(struct net *net, struct notifier_block *nb, unsigned short family, int (*rules_dump)(struct net *net, struct notifier_block *nb, struct netlink_ext_ack *extack), struct mr_table *(*mr_iter)(struct net *net, struct mr_table *mrt), struct netlink_ext_ack *extack) mr_dump() argument 372 mr_mfc_find(struct mr_table *mrt, void *hasharg) mr_mfc_find() argument 380 struct mr_table *mrt; global() member 386 struct mr_table *mrt; global() member 412 mr_mfc_seq_start(struct seq_file *seq, loff_t *pos, struct mr_table *mrt, spinlock_t *lock) mr_mfc_seq_start() argument 429 struct mr_table *mrt = it->mrt; mr_mfc_seq_stop() local 466 mr_mfc_seq_start(struct seq_file *seq, loff_t *pos, struct mr_table *mrt, spinlock_t *lock) mr_mfc_seq_start() argument [all...] |
/kernel/linux/linux-5.10/include/net/netns/ |
H A D | ipv4.h | 211 struct mr_table *mrt; member
|
/kernel/linux/linux-6.6/include/net/netns/ |
H A D | ipv4.h | 222 struct mr_table *mrt; member
|
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlxsw/ |
H A D | spectrum_router.c | 5715 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_add() local 5725 mrt = mlxsw_sp_router_fibmr_family_to_table(vr, men_info->info.family); in mlxsw_sp_router_fibmr_add() 5726 return mlxsw_sp_mr_route_add(mrt, men_info->mfc, replace); in mlxsw_sp_router_fibmr_add() 5732 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_del() local 5742 mrt = mlxsw_sp_router_fibmr_family_to_table(vr, men_info->info.family); in mlxsw_sp_router_fibmr_del() 5743 mlxsw_sp_mr_route_del(mrt, men_info->mfc); in mlxsw_sp_router_fibmr_del() 5751 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_vif_add() local 5762 mrt = mlxsw_sp_router_fibmr_family_to_table(vr, ven_info->info.family); in mlxsw_sp_router_fibmr_vif_add() 5764 return mlxsw_sp_mr_vif_add(mrt, ven_info->dev, in mlxsw_sp_router_fibmr_vif_add() 5773 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_vif_del() local [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlxsw/ |
H A D | spectrum_router.c | 7406 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_add() local 7413 mrt = mlxsw_sp_router_fibmr_family_to_table(vr, men_info->info.family); in mlxsw_sp_router_fibmr_add() 7414 return mlxsw_sp_mr_route_add(mrt, men_info->mfc, replace); in mlxsw_sp_router_fibmr_add() 7420 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_del() local 7427 mrt = mlxsw_sp_router_fibmr_family_to_table(vr, men_info->info.family); in mlxsw_sp_router_fibmr_del() 7428 mlxsw_sp_mr_route_del(mrt, men_info->mfc); in mlxsw_sp_router_fibmr_del() 7436 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_vif_add() local 7444 mrt = mlxsw_sp_router_fibmr_family_to_table(vr, ven_info->info.family); in mlxsw_sp_router_fibmr_vif_add() 7446 return mlxsw_sp_mr_vif_add(mrt, ven_info->dev, in mlxsw_sp_router_fibmr_vif_add() 7455 struct mlxsw_sp_mr_table *mrt; in mlxsw_sp_router_fibmr_vif_del() local [all...] |