Bug 854524 - guest network interface is changed while load/unload virtio_net driver
guest network interface is changed while load/unload virtio_net driver
Status: CLOSED NOTABUG
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: udev (Show other bugs)
6.4
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Harald Hoyer
qe-baseos-daemons
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-09-05 05:14 EDT by ShupingCui
Modified: 2016-05-16 00:05 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-12-06 21:56:23 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)

  None (edit)
Description ShupingCui 2012-09-05 05:14:57 EDT
Description of problem:

Traceback (most recent call last):
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/common_lib/test.py", line 417, in _exec
    _call_test_function(self.execute, *p_args, **p_dargs)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/common_lib/test.py", line 845, in _call_test_function
    raise error.UnhandledTestFail(e)
UnhandledTestFail: Unhandled ShellTimeoutError: Timeout expired while waiting for shell command to complete: 'modprobe virtio_net'    (output: '[root@localhost ~]# udev: renamed network interface eth0 to eth1\n')
Traceback (most recent call last):
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/common_lib/test.py", line 838, in _call_test_function
    return func(*args, **dargs)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/common_lib/test.py", line 290, in execute
    postprocess_profiled_run, args, dargs)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/common_lib/test.py", line 207, in _call_run_once
    *args, **dargs)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/common_lib/test.py", line 313, in run_once_profiling
    self.run_once(*args, **dargs)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/virt/virt_test.py", line 95, in run_once
    run_func(self, params, env)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/virt/tests/nicdriver_unload.py", line 55, in run_nicdriver_unload
    session_serial.cmd("modprobe %s" % driver)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/virt/aexpect.py", line 1327, in cmd
    print_func)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/virt/aexpect.py", line 1265, in cmd_status_output
    o = self.cmd_output(cmd, timeout, internal_timeout, print_func)
  File "/usr/local/staf/test/RHEV/kvm/autotest-devel/client/virt/aexpect.py", line 1235, in cmd_output
    raise ShellTimeoutError(cmd, o)
ShellTimeoutError: Timeout expired while waiting for shell command to complete: 'modprobe virtio_net'    (output: '[root@localhost ~]# udev: renamed network interface eth0 to eth1\n')

Version-Release number of selected component (if applicable):


How reproducible:


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


Expected results:


Additional info:
Comment 2 ShupingCui 2012-09-05 05:58:38 EDT
Description of problem:
ethname is changed when transfr files during nic driver load/unload

Version-Release number of selected component (if applicable):
udev-147-2.41.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1. boot guest
cmd:
qemu-kvm -name 'vm1' -monitor stdio -device ich9-usb-uhci1,id=usb1,bus=pci.0,addr=0x4 -drive file=/home/rhel6.3.qcow2,if=none,id=drive-virtio-disk1,media=disk,cache=none,boot=off,snapshot=off,format=qcow2,aio=native \
-device virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk1,id=virtio-disk1 \
-device virtio-net-pci,netdev=idk0APzt,mac=9a:b4:db:50:60:3a,id=ndev00idk0APzt,bus=pci.0,addr=0x3 -netdev tap,id=idk0APzt,vhost=on,script=/home/qemu-ifup-switch \
-m 4096 -smp 4,cores=2,threads=1,sockets=2 -cpu 'SandyBridge' -device usb-tablet,id=usb-tablet1,bus=usb1.0,port=1 -vnc :0 -vga std -rtc base=utc,clock=host,driftfix=slew -M rhel6.3.0 -boot order=cdn,once=c,menu=off    -no-kvm-pit-reinjection

2. load/unload nic driver repeatly
   #modprobe -r virtio_net
   #modprobe virtio_net
3. transfer file with 10 threads during driver load/unload
  
Actual results:
ethname is change from eth0 to eth1 

Expected results:


Additional info:
1. guest: rhel6.3-64 release 
2. nic: virtio
3. can not reproduce with rhel5.9 guest
4. host:
2.6.32-303.el6.x86_64 
qemu-kvm-rhev-0.12.1.2-2.308.el6
Comment 3 Harald Hoyer 2012-09-06 06:40:28 EDT
udev stores the "interface name"/MAC combination in /etc/udev/70-persistent-net.rules. If you reload the network kernel module, udev tries to rename the interfaces according to /etc/udev/70-persistent-net.rules.

What is the bug again?
Comment 4 Kay Sievers 2012-09-20 09:02:12 EDT
Does the MAC address change when the driver is unloaded/loaded.

If yes, then this is the expected behaviour, and the automatic rules
generator needs to be disabled if this comes into the way.
Comment 5 ShupingCui 2012-12-06 21:56:23 EST
it's not a bug

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