All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup()
@ 2026-10-14  8:26 Ido Schimmel
  2026-10-14  8:26 ` [PATCH net-next 1/2] ipv4: Store netns in FIB table Ido Schimmel
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Ido Schimmel @ 2026-10-14  8:26 UTC (permalink / raw)
  To: netdev; +Cc: davem, kuba, pabeni, edumazet, dsahern, horms, Ido Schimmel

Commit c436a624f89e ("ipv4: Pass netns to fib_table_lookup()") added the
network namespace as an argument of fib_table_lookup() so that it could
be passed to the fib_table_lookup tracepoint. As noted by Paolo [1], the
function is called in the data path where the additional argument is
unnecessary overhead, as the namespace is only needed when the
tracepoint is enabled.

This patchset stores the namespace in the FIB table instead and passes
it from there to the tracepoint, so that the namespace is only read when
the tracepoint is enabled. The tracepoint itself is unchanged.

Patch #1 stores the namespace in the FIB table.

Patch #2 passes the namespace from the FIB table to the tracepoint and
reverts the signature of fib_table_lookup() and its callers to what they
were before the above commit.

No functional changes intended.

[1] https://lore.kernel.org/netdev/43857d08-c4f4-44ce-a0b3-0e7fcc56bf90@redhat.com/

Ido Schimmel (2):
  ipv4: Store netns in FIB table
  ipv4: Do not pass netns to fib_table_lookup()

 include/net/ip_fib.h     | 16 ++++++++--------
 net/core/filter.c        |  2 +-
 net/ipv4/devinet.c       |  3 +--
 net/ipv4/fib_frontend.c  | 12 +++++-------
 net/ipv4/fib_rules.c     |  2 +-
 net/ipv4/fib_semantics.c |  2 +-
 net/ipv4/fib_trie.c      | 22 +++++++++++++---------
 7 files changed, 30 insertions(+), 29 deletions(-)

-- 
2.56.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH net-next 1/2] ipv4: Store netns in FIB table
  2026-10-14  8:26 [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Ido Schimmel
@ 2026-10-14  8:26 ` Ido Schimmel
  2026-10-14 13:36   ` David Ahern
  2026-10-14  8:26 ` [PATCH net-next 2/2] ipv4: Do not pass netns to fib_table_lookup() Ido Schimmel
  2026-10-14  9:58 ` [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Björn Töpel
  2 siblings, 1 reply; 6+ messages in thread
From: Ido Schimmel @ 2026-10-14  8:26 UTC (permalink / raw)
  To: netdev; +Cc: davem, kuba, pabeni, edumazet, dsahern, horms, Ido Schimmel

The next patch will stop passing the network namespace to
fib_table_lookup() and instead pass the namespace from the FIB table to
the fib_table_lookup tracepoint. As a preparation, store the namespace
in the FIB table when the table is created.

The FIB table structure grows from 48 bytes to 56 bytes and still fits
in a single cache line.

No functional changes intended.

Assisted-by: LLM
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
 include/net/ip_fib.h    | 4 +++-
 net/ipv4/fib_frontend.c | 6 +++---
 net/ipv4/fib_trie.c     | 6 ++++--
 3 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h
index fb446f01a65d..033ed8fce35e 100644
--- a/include/net/ip_fib.h
+++ b/include/net/ip_fib.h
@@ -258,6 +258,7 @@ struct fib_table {
 	struct hlist_node	tb_hlist;
 	u32			tb_id;
 	int			tb_num_default;
+	struct net		*tb_net;
 	struct rcu_head		rcu;
 	unsigned long 		*tb_data;
 	unsigned long		__data[];
@@ -593,7 +594,8 @@ void fib_nh_common_release(struct fib_nh_common *nhc);
 /* Exported by fib_trie.c */
 void fib_alias_hw_flags_set(struct net *net, const struct fib_rt_info *fri);
 void fib_trie_init(void);
-struct fib_table *fib_trie_table(u32 id, struct fib_table *alias);
+struct fib_table *fib_trie_table(struct net *net, u32 id,
+				 struct fib_table *alias);
 bool fib_lookup_good_nhc(const struct fib_nh_common *nhc, int fib_flags,
 			 const struct flowi4 *flp);
 
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
index c80c1b36f1fd..97acfb35fb12 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
@@ -54,11 +54,11 @@ static int __net_init fib4_rules_init(struct net *net)
 {
 	struct fib_table *local_table, *main_table;
 
-	main_table  = fib_trie_table(RT_TABLE_MAIN, NULL);
+	main_table = fib_trie_table(net, RT_TABLE_MAIN, NULL);
 	if (!main_table)
 		return -ENOMEM;
 
-	local_table = fib_trie_table(RT_TABLE_LOCAL, main_table);
+	local_table = fib_trie_table(net, RT_TABLE_LOCAL, main_table);
 	if (!local_table)
 		goto fail;
 
@@ -91,7 +91,7 @@ struct fib_table *fib_new_table(struct net *net, u32 id)
 	if (id == RT_TABLE_LOCAL && !net->ipv4.fib_has_custom_rules)
 		alias = fib_new_table(net, RT_TABLE_MAIN);
 
-	new_tb = fib_trie_table(id, alias);
+	new_tb = fib_trie_table(net, id, alias);
 	if (!new_tb)
 		return NULL;
 
diff --git a/net/ipv4/fib_trie.c b/net/ipv4/fib_trie.c
index 4a800fdf1ad1..3bc8247b3d75 100644
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
@@ -1881,7 +1881,7 @@ struct fib_table *fib_trie_unmerge(struct fib_table *oldtb)
 	if (oldtb->tb_data == oldtb->__data)
 		return oldtb;
 
-	local_tb = fib_trie_table(RT_TABLE_LOCAL, NULL);
+	local_tb = fib_trie_table(oldtb->tb_net, RT_TABLE_LOCAL, NULL);
 	if (!local_tb)
 		return NULL;
 
@@ -2378,7 +2378,8 @@ void __init fib_trie_init(void)
 					   0, SLAB_PANIC | SLAB_ACCOUNT, NULL);
 }
 
-struct fib_table *fib_trie_table(u32 id, struct fib_table *alias)
+struct fib_table *fib_trie_table(struct net *net, u32 id,
+				 struct fib_table *alias)
 {
 	struct fib_table *tb;
 	struct trie *t;
@@ -2391,6 +2392,7 @@ struct fib_table *fib_trie_table(u32 id, struct fib_table *alias)
 	if (!tb)
 		return NULL;
 
+	tb->tb_net = net;
 	tb->tb_id = id;
 	tb->tb_num_default = 0;
 	tb->tb_data = (alias ? alias->__data : tb->__data);
-- 
2.56.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH net-next 2/2] ipv4: Do not pass netns to fib_table_lookup()
  2026-10-14  8:26 [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Ido Schimmel
  2026-10-14  8:26 ` [PATCH net-next 1/2] ipv4: Store netns in FIB table Ido Schimmel
@ 2026-10-14  8:26 ` Ido Schimmel
  2026-10-14 13:36   ` David Ahern
  2026-10-14  9:58 ` [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Björn Töpel
  2 siblings, 1 reply; 6+ messages in thread
From: Ido Schimmel @ 2026-10-14  8:26 UTC (permalink / raw)
  To: netdev; +Cc: davem, kuba, pabeni, edumazet, dsahern, horms, Ido Schimmel

Commit c436a624f89e ("ipv4: Pass netns to fib_table_lookup()") added the
network namespace as an argument of fib_table_lookup() so that it could
be passed to the fib_table_lookup tracepoint. However, the function is
called in the data path and the namespace is only needed when the
tracepoint is enabled, so the additional argument is unnecessary
overhead.

Instead, pass the namespace that is now stored in the FIB table to the
tracepoint. This way, the namespace is only read when the tracepoint is
enabled. Revert the signature of fib_table_lookup() and its callers to
what they were before the above commit. The tracepoint itself is
unchanged.

No functional changes intended.

Suggested-by: Paolo Abeni <pabeni@redhat.com>
Link: https://lore.kernel.org/netdev/43857d08-c4f4-44ce-a0b3-0e7fcc56bf90@redhat.com/
Assisted-by: LLM
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
 include/net/ip_fib.h     | 12 +++++-------
 net/core/filter.c        |  2 +-
 net/ipv4/devinet.c       |  3 +--
 net/ipv4/fib_frontend.c  |  6 ++----
 net/ipv4/fib_rules.c     |  2 +-
 net/ipv4/fib_semantics.c |  2 +-
 net/ipv4/fib_trie.c      | 16 +++++++++-------
 7 files changed, 20 insertions(+), 23 deletions(-)

diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h
index 033ed8fce35e..92f4eb8b86d7 100644
--- a/include/net/ip_fib.h
+++ b/include/net/ip_fib.h
@@ -276,9 +276,8 @@ struct fib_dump_filter {
 	struct net_device	*dev;
 };
 
-int fib_table_lookup(struct net *net, struct fib_table *tb,
-		     const struct flowi4 *flp, struct fib_result *res,
-		     int fib_flags);
+int fib_table_lookup(struct fib_table *tb, const struct flowi4 *flp,
+		     struct fib_result *res, int fib_flags);
 int fib_table_insert(struct net *, struct fib_table *, struct fib_config *,
 		     struct netlink_ext_ack *extack);
 int fib_table_delete(struct net *, struct fib_table *, struct fib_config *,
@@ -325,8 +324,7 @@ static inline int fib_lookup(struct net *net, const struct flowi4 *flp,
 
 	tb = fib_get_table(net, RT_TABLE_MAIN);
 	if (tb)
-		err = fib_table_lookup(net, tb, flp, res,
-				       flags | FIB_LOOKUP_NOREF);
+		err = fib_table_lookup(tb, flp, res, flags | FIB_LOOKUP_NOREF);
 
 	if (err == -EAGAIN)
 		err = -ENETUNREACH;
@@ -390,14 +388,14 @@ static inline int fib_lookup(struct net *net, struct flowi4 *flp,
 
 	tb = rcu_dereference_rtnl(net->ipv4.fib_main);
 	if (tb)
-		err = fib_table_lookup(net, tb, flp, res, flags);
+		err = fib_table_lookup(tb, flp, res, flags);
 
 	if (err != -EAGAIN)
 		goto out;
 
 	tb = rcu_dereference_rtnl(net->ipv4.fib_default);
 	if (tb)
-		err = fib_table_lookup(net, tb, flp, res, flags);
+		err = fib_table_lookup(tb, flp, res, flags);
 
 	if (err == -EAGAIN)
 		err = -ENETUNREACH;
diff --git a/net/core/filter.c b/net/core/filter.c
index 3ee1a093337e..70dc621672f2 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -6413,7 +6413,7 @@ static int bpf_ipv4_fib_lookup(struct net *net, struct bpf_fib_lookup *params,
 		if (unlikely(!tb))
 			return BPF_FIB_LKUP_RET_NOT_FWDED;
 
-		err = fib_table_lookup(net, tb, &fl4, &res, FIB_LOOKUP_NOREF);
+		err = fib_table_lookup(tb, &fl4, &res, FIB_LOOKUP_NOREF);
 	} else {
 		if (flags & BPF_FIB_LOOKUP_MARK)
 			fl4.flowi4_mark = params->mark;
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
index c106d56eb2f7..2ed4c706ca9e 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -157,8 +157,7 @@ struct net_device *__ip_dev_find(struct net *net, __be32 addr, bool devref)
 		 */
 		local = fib_get_table(net, RT_TABLE_LOCAL);
 		if (local &&
-		    !fib_table_lookup(net, local, &fl4, &res,
-				      FIB_LOOKUP_NOREF) &&
+		    !fib_table_lookup(local, &fl4, &res, FIB_LOOKUP_NOREF) &&
 		    res.type == RTN_LOCAL)
 			result = FIB_RES_DEV(res);
 	} else {
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
index 97acfb35fb12..8c123b111b3d 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
@@ -243,8 +243,7 @@ static inline unsigned int __inet_dev_addr_type(struct net *net,
 	table = fib_get_table(net, tb_id);
 	if (table) {
 		ret = RTN_UNICAST;
-		if (!fib_table_lookup(net, table, &fl4, &res,
-				      FIB_LOOKUP_NOREF)) {
+		if (!fib_table_lookup(table, &fl4, &res, FIB_LOOKUP_NOREF)) {
 			struct fib_nh_common *nhc = fib_info_nhc(res.fi, 0);
 
 			if (!dev || dev == nhc->nhc_dev)
@@ -1401,8 +1400,7 @@ static void nl_fib_lookup(struct net *net, struct fib_result_nl *frn)
 		local_bh_disable();
 
 		frn->tb_id = tb->tb_id;
-		frn->err = fib_table_lookup(net, tb, &fl4, &res,
-					    FIB_LOOKUP_NOREF);
+		frn->err = fib_table_lookup(tb, &fl4, &res, FIB_LOOKUP_NOREF);
 
 		if (!frn->err) {
 			frn->prefixlen = res.prefixlen;
diff --git a/net/ipv4/fib_rules.c b/net/ipv4/fib_rules.c
index 28ba35125383..060501b376a8 100644
--- a/net/ipv4/fib_rules.c
+++ b/net/ipv4/fib_rules.c
@@ -136,7 +136,7 @@ INDIRECT_CALLABLE_SCOPE int fib4_rule_action(struct fib_rule *rule,
 	tb_id = fib_rule_get_table(rule, arg);
 	tbl = fib_get_table(rule->fr_net, tb_id);
 	if (tbl)
-		err = fib_table_lookup(rule->fr_net, tbl, &flp->u.ip4,
+		err = fib_table_lookup(tbl, &flp->u.ip4,
 				       (struct fib_result *)arg->result,
 				       arg->flags);
 
diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
index 20da68240f61..db030bc26b6d 100644
--- a/net/ipv4/fib_semantics.c
+++ b/net/ipv4/fib_semantics.c
@@ -1224,7 +1224,7 @@ static int fib_check_nh_v4_gw(struct net *net, struct fib_nh *nh, u32 table,
 			tbl = fib_get_table(net, table);
 
 		if (tbl)
-			err = fib_table_lookup(net, tbl, &fl4, &res,
+			err = fib_table_lookup(tbl, &fl4, &res,
 					       FIB_LOOKUP_IGNORE_LINKSTATE |
 					       FIB_LOOKUP_NOREF);
 
diff --git a/net/ipv4/fib_trie.c b/net/ipv4/fib_trie.c
index 3bc8247b3d75..be1e40780ad7 100644
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
@@ -1415,9 +1415,8 @@ bool fib_lookup_good_nhc(const struct fib_nh_common *nhc, int fib_flags,
 }
 
 /* should be called with rcu_read_lock */
-int fib_table_lookup(struct net *net, struct fib_table *tb,
-		     const struct flowi4 *flp, struct fib_result *res,
-		     int fib_flags)
+int fib_table_lookup(struct fib_table *tb, const struct flowi4 *flp,
+		     struct fib_result *res, int fib_flags)
 {
 	struct trie *t = (struct trie *) tb->tb_data;
 #ifdef CONFIG_IP_FIB_TRIE_STATS
@@ -1434,7 +1433,8 @@ int fib_table_lookup(struct net *net, struct fib_table *tb,
 
 	n = get_child_rcu(pn, cindex);
 	if (!n) {
-		trace_fib_table_lookup(tb->tb_id, flp, NULL, -EAGAIN, net);
+		trace_fib_table_lookup(tb->tb_id, flp, NULL, -EAGAIN,
+				       tb->tb_net);
 		return -EAGAIN;
 	}
 
@@ -1522,7 +1522,7 @@ int fib_table_lookup(struct net *net, struct fib_table *tb,
 				if (IS_TRIE(pn)) {
 					trace_fib_table_lookup(tb->tb_id, flp,
 							       NULL, -EAGAIN,
-							       net);
+							       tb->tb_net);
 					return -EAGAIN;
 				}
 #ifdef CONFIG_IP_FIB_TRIE_STATS
@@ -1569,7 +1569,8 @@ int fib_table_lookup(struct net *net, struct fib_table *tb,
 #ifdef CONFIG_IP_FIB_TRIE_STATS
 			this_cpu_inc(stats->semantic_match_passed);
 #endif
-			trace_fib_table_lookup(tb->tb_id, flp, NULL, err, net);
+			trace_fib_table_lookup(tb->tb_id, flp, NULL, err,
+					       tb->tb_net);
 			return err;
 		}
 		if (fi->fib_flags & RTNH_F_DEAD)
@@ -1610,7 +1611,8 @@ int fib_table_lookup(struct net *net, struct fib_table *tb,
 #ifdef CONFIG_IP_FIB_TRIE_STATS
 			this_cpu_inc(stats->semantic_match_passed);
 #endif
-			trace_fib_table_lookup(tb->tb_id, flp, nhc, err, net);
+			trace_fib_table_lookup(tb->tb_id, flp, nhc, err,
+					       tb->tb_net);
 
 			return err;
 		}
-- 
2.56.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup()
  2026-10-14  8:26 [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Ido Schimmel
  2026-10-14  8:26 ` [PATCH net-next 1/2] ipv4: Store netns in FIB table Ido Schimmel
  2026-10-14  8:26 ` [PATCH net-next 2/2] ipv4: Do not pass netns to fib_table_lookup() Ido Schimmel
@ 2026-10-14  9:58 ` Björn Töpel
  2 siblings, 0 replies; 6+ messages in thread
From: Björn Töpel @ 2026-10-14  9:58 UTC (permalink / raw)
  To: Ido Schimmel, netdev
  Cc: davem, kuba, pabeni, edumazet, dsahern, horms, Ido Schimmel

Ido Schimmel <idosch@nvidia.com> writes:

> Commit c436a624f89e ("ipv4: Pass netns to fib_table_lookup()") added the
> network namespace as an argument of fib_table_lookup() so that it could
> be passed to the fib_table_lookup tracepoint. As noted by Paolo [1], the
> function is called in the data path where the additional argument is
> unnecessary overhead, as the namespace is only needed when the
> tracepoint is enabled.
>
> This patchset stores the namespace in the FIB table instead and passes
> it from there to the tracepoint, so that the namespace is only read when
> the tracepoint is enabled. The tracepoint itself is unchanged.
>
> Patch #1 stores the namespace in the FIB table.
>
> Patch #2 passes the namespace from the FIB table to the tracepoint and
> reverts the signature of fib_table_lookup() and its callers to what they
> were before the above commit.
>
> No functional changes intended.
>
> [1] https://lore.kernel.org/netdev/43857d08-c4f4-44ce-a0b3-0e7fcc56bf90@redhat.com/
>
> Ido Schimmel (2):
>   ipv4: Store netns in FIB table
>   ipv4: Do not pass netns to fib_table_lookup()

For the series:

Tested-by: Björn Töpel <bjorn@kernel.org>
Reviewed-by: Björn Töpel <bjorn@kernel.org>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH net-next 1/2] ipv4: Store netns in FIB table
  2026-10-14  8:26 ` [PATCH net-next 1/2] ipv4: Store netns in FIB table Ido Schimmel
@ 2026-10-14 13:36   ` David Ahern
  0 siblings, 0 replies; 6+ messages in thread
From: David Ahern @ 2026-10-14 13:36 UTC (permalink / raw)
  To: Ido Schimmel, netdev; +Cc: davem, kuba, pabeni, edumazet, horms

On 10/14/26 2:26 AM, Ido Schimmel wrote:
> The next patch will stop passing the network namespace to
> fib_table_lookup() and instead pass the namespace from the FIB table to
> the fib_table_lookup tracepoint. As a preparation, store the namespace
> in the FIB table when the table is created.
> 
> The FIB table structure grows from 48 bytes to 56 bytes and still fits
> in a single cache line.
> 
> No functional changes intended.
> 
> Assisted-by: LLM
> Signed-off-by: Ido Schimmel <idosch@nvidia.com>
> ---
>  include/net/ip_fib.h    | 4 +++-
>  net/ipv4/fib_frontend.c | 6 +++---
>  net/ipv4/fib_trie.c     | 6 ++++--
>  3 files changed, 10 insertions(+), 6 deletions(-)
> 

Reviewed-by: David Ahern <dsahern@kernel.org>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH net-next 2/2] ipv4: Do not pass netns to fib_table_lookup()
  2026-10-14  8:26 ` [PATCH net-next 2/2] ipv4: Do not pass netns to fib_table_lookup() Ido Schimmel
@ 2026-10-14 13:36   ` David Ahern
  0 siblings, 0 replies; 6+ messages in thread
From: David Ahern @ 2026-10-14 13:36 UTC (permalink / raw)
  To: Ido Schimmel, netdev; +Cc: davem, kuba, pabeni, edumazet, horms

On 10/14/26 2:26 AM, Ido Schimmel wrote:
> Commit c436a624f89e ("ipv4: Pass netns to fib_table_lookup()") added the
> network namespace as an argument of fib_table_lookup() so that it could
> be passed to the fib_table_lookup tracepoint. However, the function is
> called in the data path and the namespace is only needed when the
> tracepoint is enabled, so the additional argument is unnecessary
> overhead.
> 
> Instead, pass the namespace that is now stored in the FIB table to the
> tracepoint. This way, the namespace is only read when the tracepoint is
> enabled. Revert the signature of fib_table_lookup() and its callers to
> what they were before the above commit. The tracepoint itself is
> unchanged.
> 
> No functional changes intended.
> 
> Suggested-by: Paolo Abeni <pabeni@redhat.com>
> Link: https://lore.kernel.org/netdev/43857d08-c4f4-44ce-a0b3-0e7fcc56bf90@redhat.com/
> Assisted-by: LLM
> Signed-off-by: Ido Schimmel <idosch@nvidia.com>
> ---
>  include/net/ip_fib.h     | 12 +++++-------
>  net/core/filter.c        |  2 +-
>  net/ipv4/devinet.c       |  3 +--
>  net/ipv4/fib_frontend.c  |  6 ++----
>  net/ipv4/fib_rules.c     |  2 +-
>  net/ipv4/fib_semantics.c |  2 +-
>  net/ipv4/fib_trie.c      | 16 +++++++++-------
>  7 files changed, 20 insertions(+), 23 deletions(-)
> 

Reviewed-by: David Ahern <dsahern@kernel.org>



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-10-14 13:36 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-14  8:26 [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Ido Schimmel
2026-10-14  8:26 ` [PATCH net-next 1/2] ipv4: Store netns in FIB table Ido Schimmel
2026-10-14 13:36   ` David Ahern
2026-10-14  8:26 ` [PATCH net-next 2/2] ipv4: Do not pass netns to fib_table_lookup() Ido Schimmel
2026-10-14 13:36   ` David Ahern
2026-10-14  9:58 ` [PATCH net-next 0/2] ipv4: Remove netns argument from fib_table_lookup() Björn Töpel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.