Merge lp:~louis/ubuntu/wily/ifenslave/merge-debian-2.7 into lp:ubuntu/wily/ifenslave

Proposed by Louis Bouchard
Status: Merged
Approved by: Mathieu Trudel-Lapierre
Approved revision: 10
Merge reported by: Mathieu Trudel-Lapierre
Merged at revision: not available
Proposed branch: lp:~louis/ubuntu/wily/ifenslave/merge-debian-2.7
Merge into: lp:ubuntu/wily/ifenslave
Diff against target: 178 lines (+105/-10)
5 files modified
debian/README.Debian (+63/-7)
debian/changelog (+34/-0)
debian/control (+1/-1)
debian/ifenslave.if-pre-up (+3/-0)
ifenslave (+4/-2)
To merge this branch: bzr merge lp:~louis/ubuntu/wily/ifenslave/merge-debian-2.7
Reviewer Review Type Date Requested Status
Mathieu Trudel-Lapierre Approve
Review via email: mp+265808@code.launchpad.net

Description of the change

Merge from Debian

To post a comment you must log in.
Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

The merge looks fine to me. Have you verified that ifenslave works properly after the merge? (a quite smoketest will suffice).

Just one thing, when you commit for a merge using bzr commit, see if you can remove the Debian entries or otherwise rearrange them so it's clear whether it's Debian or Ubuntu changes, since on top of a merge you might need to make extra changes.

review: Needs Information
Revision history for this message
Louis Bouchard (louis) wrote :

Correct.

So I installed wily with the archive's ifenslave-2.6 on a VM with 3 nics, setup bonding on two of them & rebooted. The bond comes up fine.

Then I installed the newly built ifenslave-2.7ubuntu1 and rebooted. The bond0 comes up correctly with the new version.

Regarding the log, I should have used debcommit -C, didn't know about this option.

Thanks.

Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

Looks good, thanks!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/README.Debian'
2--- debian/README.Debian 2014-03-03 10:39:30 +0000
3+++ debian/README.Debian 2015-07-24 10:36:06 +0000
4@@ -3,12 +3,20 @@
5
6 The ifenslave program distributed with the Linux kernel sources has not always
7 been up to date, and several modified versions have been floating around. The
8-latest kernels now contain an updated version though. The Debian package
9-ifenslave will now use the version found in the kernel, without any patches.
10-
11-You can also enslave interfaces using Debian's /etc/network/interfaces file
12-by creating a stanza for the bonding interface and a stanza for each regular
13-interface that should be enslaved to the bonding master.
14+latest kernels now contain an updated version though, but the best way to
15+configure bonding is via the files in /sys/class/net/$master/bonding/. This
16+Debian package therefore does not contain the binary from the kernel sources,
17+but provides a shell script with identical functionality.
18+
19+You can also enslave interfaces using Debian's /etc/network/interfaces file:
20+
21+- You can specify in the stanza of a bonding interface which slaves it
22+ has.
23+- You can specify in the stanza of a regular interface that it should be
24+ enslaved to a bonding master.
25+- You can setup the master interface mode and any other possible attribute
26+ of the master in the stanza of a bonding interface or in the stanza of
27+ the slaves of this interface.
28
29 For a list of the supported bonding related options that can be used in
30 /etc/network/interfaces, see "List of bonding related options" below.
31@@ -217,5 +225,53 @@
32
33 --------------------------------------------------------------------------------
34
35-Guus Sliepen <guus@debian.org>, Tue, 17 Mar 2009 18:33:43 +0100
36+udev renaming issue
37+===================
38+
39+"udev" assign network adapter names as per
40+
41+ /etc/udev/rules.d/70-persistent-net.rules
42+
43+where rule typically looks like this:
44+
45+ # PCI device 0x10ec:0x8168 (r8169)
46+ SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:xx:xx:xx:xx:xx", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
47+
48+The problem with bonding is that two or more NICs may have the very same
49+MAC address which confuses udev when it tries to (re)name adapters as per
50+their MACs and fails because another card with this MAC already exists.
51+When it happens NIC may be left named like "rename2" instead of "eth0" etc.
52+
53+Possible solution is to change udev rule to assign network interface names
54+as per NICs PCI IDs instead of MAC addresses. This can be done by replacing
55+
56+ ATTR{address}=="xx:xx:xx:xx:xx:xx"
57+
58+with something like
59+
60+ KERNELS=="0000:04:00.0"
61+
62+in the file "70-persistent-net.rules".
63+Corresponding PCI IDs can be found in dmesg:
64+
65+ sudo dmesg | grep eth
66+
67+Where one can look for line fragment like this:
68+
69+ r8169 0000:04:00.0 eth0: RTL8168e/8111e
70+# ^^^^^^^^^^^^
71+
72+Alternatively PCI IDs can be found using `lspci -D | grep Ether`:
73+
74+ 0000:04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
75+# ^^^^^^^^^^^^
76+
77+--------------------------------------------------------------------------------
78+
79+See also:
80+ https://wiki.debian.org/Bonding
81+
82+--------------------------------------------------------------------------------
83+
84+Guus Sliepen <guus@debian.org>, Mon, 13 Jul 2012 13:50:13 +0200
85 Nicolas de Pesloüan <nicolas.2p.debian@free.fr>, Sun, 19 Dec 2010 19:00:00 +0100
86
87=== modified file 'debian/changelog'
88--- debian/changelog 2014-05-02 15:39:48 +0000
89+++ debian/changelog 2015-07-24 10:36:06 +0000
90@@ -1,3 +1,37 @@
91+ifenslave (2.7ubuntu1) UNRELEASED; urgency=medium
92+
93+ * Merge from Debian unstable. Remaining changes:
94+ - Upstart event based bond bringup:
95+ + Drop ethernet+wifi example
96+ + Drop two_ethernet example
97+ + Update ethernet+hotplug_wifi example
98+ + Update two_hotplug_ethernet example
99+ + Update pre-up and post-down scripts for event bringup
100+ + Update README.Debian examples
101+ - Update scripts to use /run/network/ifstate instead of
102+ /etc/network/run/ifstate
103+ (LP: #1477928)
104+
105+ -- Louis Bouchard <louis.bouchard@ubuntu.com> Fri, 24 Jul 2015 12:04:56 +0200
106+
107+ifenslave (2.7) unstable; urgency=low
108+
109+ * Fix change in /sys/class/net/{bond}/slave_ naming after k3.13
110+ (Closes: #791906). Thanks, Louis Bouchard.
111+ * Standards-Version: 3.9.6.
112+
113+ -- Dmitry Smirnov <onlyjob@debian.org> Mon, 13 Jul 2015 21:02:29 +1000
114+
115+ifenslave (2.6) unstable; urgency=low
116+
117+ * Added support for "packets_per_slave" option in interface stanza
118+ (Closes: #758913); Thanks, John Holland.
119+ * README.Debian:
120+ + added note regarding "udev renaming issue".
121+ + added "see also" note with link to "Bonding" section of wiki.
122+
123+ -- Dmitry Smirnov <onlyjob@debian.org> Sun, 31 Aug 2014 11:05:09 +1000
124+
125 ifenslave (2.5ubuntu1) utopic; urgency=medium
126
127 * Merge from Debian unstable. Remaining changes:
128
129=== modified file 'debian/control'
130--- debian/control 2014-05-02 15:39:48 +0000
131+++ debian/control 2015-07-24 10:36:06 +0000
132@@ -5,7 +5,7 @@
133 XSBC-Original-Maintainer: Guus Sliepen <guus@debian.org>
134 Uploaders: Dmitry Smirnov <onlyjob@debian.org>
135 Build-Depends: debhelper (>= 9)
136-Standards-Version: 3.9.5
137+Standards-Version: 3.9.6
138 Vcs-Git: git://anonscm.debian.org/collab-maint/ifenslave.git
139 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/ifenslave.git
140
141
142=== modified file 'debian/ifenslave.if-pre-up'
143--- debian/ifenslave.if-pre-up 2014-05-02 15:39:48 +0000
144+++ debian/ifenslave.if-pre-up 2015-07-24 10:36:06 +0000
145@@ -196,6 +196,9 @@
146 # Mode should be set after miimon or arp_interval, to avoid a warning in syslog.
147 sysfs_change_down mode "$IF_BOND_MODE"
148
149+ # packets_per_slave allowed for mode balance-rr only.
150+ sysfs packets_per_slave "$IF_BOND_PACKETS_PER_SLAVE"
151+
152 # arp_validate must be after mode (because mode must be active-backup).
153 sysfs arp_validate "$IF_BOND_ARP_VALIDATE"
154
155
156=== modified file 'ifenslave'
157--- ifenslave 2013-11-10 11:53:25 +0000
158+++ ifenslave 2015-07-24 10:36:06 +0000
159@@ -93,7 +93,8 @@
160 [ -d "/sys/class/net/$slave" ] || error "$slave: no such interface"
161
162 if [ -z "$DETACH" ]; then
163- if [ -h "/sys/class/net/$master/slave_$slave" ]; then
164+ if [ -h "/sys/class/net/$master/slave_$slave" ] ||
165+ [ -h "/sys/class/net/$master/lower_$slave" ]; then
166 echo "$slave: already enslaved to $master" >&2
167 continue
168 fi
169@@ -107,7 +108,8 @@
170 ip link set "$slave" down
171 echo "+$slave" >"/sys/class/net/$master/bonding/slaves" || error "$slave: could not add interface"
172 else
173- if [ ! -h "/sys/class/net/$master/slave_$slave" ]; then
174+ if [ ! -h "/sys/class/net/$master/slave_$slave" ] ||
175+ [ ! -h "/sys/class/net/$master/lower_$slave" ]; then
176 echo "$slave: is not enslaved to $master" >&2
177 continue
178 fi

Subscribers

People subscribed via source and target branches