mkinitrd unification across distributions
 help / color / mirror / Atom feed
* [PATCH] ifup: do not dhcp on network interface of secondary stack
@ 2013-09-13 14:28 WANG Chao
       [not found] ` <20130913142844.GD2070-UAAZkH0G2Ts1naxU1pY8ZxcY2uh10dtjAL8bYrjMMd8@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: WANG Chao @ 2013-09-13 14:28 UTC (permalink / raw)
  To: Harald Hoyer; +Cc: initramfs-u79uwXL29TY76Z2rM5mHXA

Configure cmdline to:
 ip=br0:dhcp bridge=br0:bond0 bond=bond0:eth0

By default ifup bond0 will run dhcp on bond0, which is wrong. bond0
isn't the top interface. we should really run dhcp on br0.

So if we ifup an network interface on secondary stack, we should not
dhcp. Fix this issue with this patch.
---
 modules.d/40network/ifup.sh | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh
index 3261647..9f6f449 100755
--- a/modules.d/40network/ifup.sh
+++ b/modules.d/40network/ifup.sh
@@ -336,6 +336,13 @@ for p in $(getargs ip=); do
     exit 0
 done
 
+# netif isn't the top stack? Then we should exit here.
+# eg. netif is bond0. br0 is on top of it. dhcp br0 is correct but dhcp
+#     bond0 doesn't make sense.
+if [ -n "$DO_BOND_SETUP" -o -n "$DO_TEAM_SETUP" -o -n "$DO_VLAN_SETUP" ]; then
+    exit 0
+fi
+
 # no ip option directed at our interface?
 if [ ! -e /tmp/setup_net_${netif}.ok ]; then
     do_dhcp -4
-- 
1.8.3.1

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

end of thread, other threads:[~2013-09-13 15:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-13 14:28 [PATCH] ifup: do not dhcp on network interface of secondary stack WANG Chao
     [not found] ` <20130913142844.GD2070-UAAZkH0G2Ts1naxU1pY8ZxcY2uh10dtjAL8bYrjMMd8@public.gmane.org>
2013-09-13 15:12   ` Harald Hoyer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox