Bug 839984 - [PATCH sysfs] kernel cannot rename network interfaces
[PATCH sysfs] kernel cannot rename network interfaces
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel (Show other bugs)
6.3
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: John Greene
Weibing Zhang
:
Depends On:
Blocks: 1090442
  Show dependency treegraph
 
Reported: 2012-07-13 07:15 EDT by Kontantin Khlebnikov
Modified: 2014-07-01 08:00 EDT (History)
7 users (show)

See Also:
Fixed In Version: kernel-2.6.32-328.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1090442 (view as bug list)
Environment:
Last Closed: 2013-02-21 01:40:13 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
simplified bug fix (796 bytes, application/octet-stream)
2012-07-13 07:15 EDT, Kontantin Khlebnikov
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 347213 None None None Never

  None (edit)
Description Kontantin Khlebnikov 2012-07-13 07:15:42 EDT
Created attachment 598042 [details]
simplified bug fix

Description of problem:

# rmmod veth
# modprobe veth
# ip link add type veth
# ip l
<snip>
6: veth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether a2:29:1f:9d:71:25 brd ff:ff:ff:ff:ff:ff
7: veth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 4a:8b:af:ea:ab:ab brd ff:ff:ff:ff:ff:ff
# ip link set dev veth0 name veth2
# ip link set dev veth1 name veth3
RTNETLINK answers: No such file or directory

kernel cannot rename veth1, because it cannot find it in rb-tree (s_dir.children) because tree was corrupted during renaming veth0 into veth2.

bug was accidentially fixed in mainline v2.6.33
commit ca1bab38195d66bdf42320a99cc7359434a271d3

Version-Release number of selected component (if applicable):
RHEL 6.3
kernel 2.6.32-279.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:
Comment 2 John Greene 2012-09-19 14:47:56 EDT
added suggested patch. Basic test on ppc64 (which has the device) didn't reproduce failure but this seems prudent to include.

Created task: 4887556
Task info: http://brewweb.devel.redhat.com/brew/taskinfo?taskID=4887556
Comment 3 John Greene 2012-09-20 11:38:24 EDT
retest of fix works fine, i.e.

[root@ibm-js22-vios-02-lp1 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether ea:07:96:9e:2b:04 brd ff:ff:ff:ff:ff:ff
3: veth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b6:02:c5:8a:23:51 brd ff:ff:ff:ff:ff:ff
4: veth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 62:87:c3:df:1f:5a brd ff:ff:ff:ff:ff:ff
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth0 name veth2
[root@ibm-js22-vios-02-lp1 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether ea:07:96:9e:2b:04 brd ff:ff:ff:ff:ff:ff
3: veth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b6:02:c5:8a:23:51 brd ff:ff:ff:ff:ff:ff
4: veth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 62:87:c3:df:1f:5a brd ff:ff:ff:ff:ff:ff
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth1 name veth3
[root@ibm-js22-vios-02-lp1 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether ea:07:96:9e:2b:04 brd ff:ff:ff:ff:ff:ff
3: veth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b6:02:c5:8a:23:51 brd ff:ff:ff:ff:ff:ff
4: veth3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 62:87:c3:df:1f:5a brd ff:ff:ff:ff:ff:ff
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth3 name veth5
[root@ibm-js22-vios-02-lp1 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether ea:07:96:9e:2b:04 brd ff:ff:ff:ff:ff:ff
3: veth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b6:02:c5:8a:23:51 brd ff:ff:ff:ff:ff:ff
4: veth5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 62:87:c3:df:1f:5a brd ff:ff:ff:ff:ff:ff
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth2 name veth4
[root@ibm-js22-vios-02-lp1 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether ea:07:96:9e:2b:04 brd ff:ff:ff:ff:ff:ff
3: veth4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b6:02:c5:8a:23:51 brd ff:ff:ff:ff:ff:ff
4: veth5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 62:87:c3:df:1f:5a brd ff:ff:ff:ff:ff:ff
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth0 name veth9
Cannot find device "veth0"
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth4 name veth0
[root@ibm-js22-vios-02-lp1 ~]# ip link set dev veth5 name veth1
[root@ibm-js22-vios-02-lp1 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether ea:07:96:9e:2b:04 brd ff:ff:ff:ff:ff:ff
3: veth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b6:02:c5:8a:23:51 brd ff:ff:ff:ff:ff:ff
4: veth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 62:87:c3:df:1f:5a brd ff:ff:ff:ff:ff:ff
Comment 4 RHEL Product and Program Management 2012-09-20 11:51:05 EDT
This request was evaluated by Red Hat Product Management for
inclusion in a Red Hat Enterprise Linux release.  Product
Management has requested further review of this request by
Red Hat Engineering, for potential inclusion in a Red Hat
Enterprise Linux release for currently deployed products.
This request is not yet committed for inclusion in a release.
Comment 6 Jarod Wilson 2012-10-10 15:50:17 EDT
Patch(es) available on kernel-2.6.32-328.el6
Comment 9 Weibing Zhang 2013-01-11 03:27:54 EST
[root@ibm-x3650m4-04 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
4: eth4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 00:10:18:e8:2a:20 brd ff:ff:ff:ff:ff:ff
5: eth5: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN qlen 1000
    link/ether 00:10:18:e8:2a:22 brd ff:ff:ff:ff:ff:ff
6: eth6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 6c:ae:8b:36:cd:4a brd ff:ff:ff:ff:ff:ff
7: eth7: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6c:ae:8b:36:cd:4b brd ff:ff:ff:ff:ff:ff
8: eth8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6c:ae:8b:36:cd:4c brd ff:ff:ff:ff:ff:ff
9: eth9: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6c:ae:8b:36:cd:4d brd ff:ff:ff:ff:ff:ff
10: eth10: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 00:0e:1e:0e:1e:90 brd ff:ff:ff:ff:ff:ff
11: eth11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0e:1e:0e:1e:94 brd ff:ff:ff:ff:ff:ff
12: eth12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 90:e2:ba:29:c0:ac brd ff:ff:ff:ff:ff:ff
13: eth13: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 90:e2:ba:29:c0:ad brd ff:ff:ff:ff:ff:ff
14: usb0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6e:ae:8b:36:cd:49 brd ff:ff:ff:ff:ff:ff
17: eth11.3@eth11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 00:0e:1e:0e:1e:94 brd ff:ff:ff:ff:ff:ff
18: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:90:fa:13:ca:e4 brd ff:ff:ff:ff:ff:ff
19: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:90:fa:13:ca:e6 brd ff:ff:ff:ff:ff:ff
[root@ibm-x3650m4-04 ~]# ip link set dev eth12 name eth18
RTNETLINK answers: Device or resource busy
[root@ibm-x3650m4-04 ~]# ip link set dev eth13 name eth18
[root@ibm-x3650m4-04 ~]# ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
4: eth4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 00:10:18:e8:2a:20 brd ff:ff:ff:ff:ff:ff
5: eth5: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN qlen 1000
    link/ether 00:10:18:e8:2a:22 brd ff:ff:ff:ff:ff:ff
6: eth6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 6c:ae:8b:36:cd:4a brd ff:ff:ff:ff:ff:ff
7: eth7: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6c:ae:8b:36:cd:4b brd ff:ff:ff:ff:ff:ff
8: eth8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6c:ae:8b:36:cd:4c brd ff:ff:ff:ff:ff:ff
9: eth9: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6c:ae:8b:36:cd:4d brd ff:ff:ff:ff:ff:ff
10: eth10: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 00:0e:1e:0e:1e:90 brd ff:ff:ff:ff:ff:ff
11: eth11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0e:1e:0e:1e:94 brd ff:ff:ff:ff:ff:ff
12: eth12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 90:e2:ba:29:c0:ac brd ff:ff:ff:ff:ff:ff
13: eth18: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 90:e2:ba:29:c0:ad brd ff:ff:ff:ff:ff:ff
14: usb0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 6e:ae:8b:36:cd:49 brd ff:ff:ff:ff:ff:ff
17: eth11.3@eth11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 00:0e:1e:0e:1e:94 brd ff:ff:ff:ff:ff:ff
18: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:90:fa:13:ca:e4 brd ff:ff:ff:ff:ff:ff
19: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether 00:90:fa:13:ca:e6 brd ff:ff:ff:ff:ff:ff

Set Verified.
Comment 11 errata-xmlrpc 2013-02-21 01:40:13 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0496.html

Note You need to log in before you can comment on or make changes to this bug.