aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/net/flow.h
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2014-05-05 12:27:30 -0700
committerMark Brown <broonie@linaro.org>2014-05-05 12:27:30 -0700
commitaf46929e6ee7197dfe315af3c5bb5cc75a0aec9c (patch)
tree18359b934daf8c7e271930c938bd867a379cace7 /include/net/flow.h
parentASoC: fsl_spdif: Use clk_set_rate() for spdif root clock only (diff)
parentLinux 3.15-rc4 (diff)
downloadwireguard-linux-af46929e6ee7197dfe315af3c5bb5cc75a0aec9c.tar.xz
wireguard-linux-af46929e6ee7197dfe315af3c5bb5cc75a0aec9c.zip
Merge tag 'v3.15-rc4' into asoc-fsl-spdif
Linux 3.15-rc4
Diffstat (limited to '')
-rw-r--r--include/net/flow.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/net/flow.h b/include/net/flow.h
index 64fd24836650..8109a159d1b3 100644
--- a/include/net/flow.h
+++ b/include/net/flow.h
@@ -11,6 +11,14 @@
#include <linux/in6.h>
#include <linux/atomic.h>
+/*
+ * ifindex generation is per-net namespace, and loopback is
+ * always the 1st device in ns (see net_dev_init), thus any
+ * loopback device should get ifindex 1
+ */
+
+#define LOOPBACK_IFINDEX 1
+
struct flowi_common {
int flowic_oif;
int flowic_iif;
@@ -80,7 +88,7 @@ static inline void flowi4_init_output(struct flowi4 *fl4, int oif,
__be16 dport, __be16 sport)
{
fl4->flowi4_oif = oif;
- fl4->flowi4_iif = 0;
+ fl4->flowi4_iif = LOOPBACK_IFINDEX;
fl4->flowi4_mark = mark;
fl4->flowi4_tos = tos;
fl4->flowi4_scope = scope;