Home
last modified time | relevance | path

Searched refs:l3mdev (Results 1 – 12 of 12) sorted by relevance

/linux/net/ipv4/
H A Dinet_hashtables.c82 int l3mdev) in inet_bind_bucket_create() argument
88 tb->l3mdev = l3mdev; in inet_bind_bucket_create()
122 unsigned short port, int l3mdev) in inet_bind_bucket_match() argument
125 tb->l3mdev == l3mdev; in inet_bind_bucket_match()
135 tb2->l3mdev = tb->l3mdev; in inet_bind2_bucket_init()
267 int bhash, l3mdev; in __inet_inherit_port() local
283 l3mdev = inet_sk_bound_l3mdev(sk); in __inet_inherit_port()
291 if (inet_bind_bucket_match(tb, net, port, l3mdev)) in __inet_inherit_port()
296 net, head, port, l3mdev); in __inet_inherit_port()
308 l3mdev = inet_sk_bound_l3mdev(sk); in __inet_inherit_port()
[all …]
H A Dinet_connection_sock.c273 static bool inet_bhash2_addr_any_conflict(const struct sock *sk, int port, int l3mdev, in inet_bhash2_addr_any_conflict() argument
295 if (!inet_bind2_bucket_match_addr_any(tb2, net, port, l3mdev, sk)) in inet_bhash2_addr_any_conflict()
320 int i, low, high, attempt_half, port, l3mdev; in inet_csk_find_open_port() local
328 l3mdev = inet_sk_bound_l3mdev(sk); in inet_csk_find_open_port()
365 if (inet_bhash2_addr_any_conflict(sk, port, l3mdev, relax, false)) in inet_csk_find_open_port()
371 tb2 = inet_bind2_bucket_find(head2, net, port, l3mdev, sk); in inet_csk_find_open_port()
373 if (inet_bind_bucket_match(tb, net, port, l3mdev)) { in inet_csk_find_open_port()
506 int ret = -EADDRINUSE, port = snum, l3mdev; in inet_csk_get_port() local
513 l3mdev = inet_sk_bound_l3mdev(sk); in inet_csk_get_port()
530 if (inet_bind_bucket_match(tb, net, port, l3mdev)) in inet_csk_get_port()
[all …]
/linux/include/net/
H A Dinet_hashtables.h79 int l3mdev; member
97 int l3mdev; member
220 const unsigned short snum, int l3mdev);
225 int l3mdev);
239 unsigned short port, int l3mdev,
244 int l3mdev, const struct sock *sk);
H A Dfib_rules.h29 u8 l3mdev; member
124 return rule->l3mdev ? arg->table : rule->table; in fib_rule_get_table()
/linux/net/core/
H A Dfib_rules.c298 if (rule->l3mdev && !l3mdev_fib_rule_match(rule->fr_net, fl, arg)) in fib_rule_match()
483 if (rule->l3mdev && r->l3mdev != rule->l3mdev) in rule_find()
525 nlrule->l3mdev = nla_get_u8(nla); in fib_nl2rule_l3mdev()
526 if (nlrule->l3mdev != 1) { in fib_nl2rule_l3mdev()
665 if (nlrule->l3mdev && nlrule->table) { in fib_nl2rule()
812 if (r->l3mdev != rule->l3mdev) in rule_exists()
1202 (rule->l3mdev && in fib_nl_fill_rule()
1203 nla_put_u8(skb, FRA_L3MDEV, rule->l3mdev)) || in fib_nl_fill_rule()
/linux/net/l3mdev/
H A DMakefile6 obj-y += l3mdev.o
/linux/Documentation/networking/
H A Dvrf.rst72 2. An l3mdev FIB rule directs lookups to the table associated with the device.
73 A single l3mdev rule is sufficient for all VRFs. The VRF device adds the
74 l3mdev rule for IPv4 and IPv6 when the first device is created with a
122 arriving on interfaces enslaved to an l3mdev and processes may bind to
123 the same port if they bind to an l3mdev.
174 As of v4.8 the kernel supports the l3mdev FIB rule where a single rule
175 covers all VRFs. The l3mdev rule is created for IPv4 and IPv6 on first
/linux/net/
H A DMakefile71 obj-$(CONFIG_NET_L3_MASTER_DEV) += l3mdev/
H A DKconfig282 source "net/l3mdev/Kconfig"
/linux/net/ipv6/
H A Daddrconf.c1983 struct net_device *l3mdev, *ndev; in __ipv6_chk_addr_and_flags() local
1989 l3mdev = l3mdev_master_dev_rcu(dev); in __ipv6_chk_addr_and_flags()
1996 if (l3mdev_master_dev_rcu(ndev) != l3mdev) in __ipv6_chk_addr_and_flags()
/linux/drivers/net/ethernet/mellanox/mlxsw/
H A Dspectrum_router.c8080 if (!fib4_rule_default(rule) && !rule->l3mdev) in mlxsw_sp_router_fib_rule_event()
8084 if (!fib6_rule_default(rule) && !rule->l3mdev) in mlxsw_sp_router_fib_rule_event()
8088 if (!ipmr_rule_default(rule) && !rule->l3mdev) in mlxsw_sp_router_fib_rule_event()
8092 if (!ip6mr_rule_default(rule) && !rule->l3mdev) in mlxsw_sp_router_fib_rule_event()
/linux/
H A DMAINTAINERS14455 F: include/net/l3mdev.h
14456 F: net/l3mdev