| OLD | NEW |
| 1 import logging, threading | 1 import logging, threading |
| 2 from autotest_lib.client.common_lib import error | 2 from autotest_lib.client.common_lib import error |
| 3 from autotest_lib.client.bin import utils | 3 from autotest_lib.client.bin import utils |
| 4 from autotest_lib.client.tests.kvm.tests import file_transfer | 4 from autotest_lib.client.tests.kvm.tests import file_transfer |
| 5 import kvm_utils, kvm_test_utils | 5 from autotest_lib.client.virt import virt_test_utils, virt_utils |
| 6 | 6 |
| 7 | 7 |
| 8 def run_nic_promisc(test, params, env): | 8 def run_nic_promisc(test, params, env): |
| 9 """ | 9 """ |
| 10 Test nic driver in promisc mode: | 10 Test nic driver in promisc mode: |
| 11 | 11 |
| 12 1) Boot up a VM. | 12 1) Boot up a VM. |
| 13 2) Repeatedly enable/disable promiscuous mode in guest. | 13 2) Repeatedly enable/disable promiscuous mode in guest. |
| 14 3) Transfer file from host to guest, and from guest to host in the same time | 14 3) Transfer file from host to guest, and from guest to host in the same time |
| 15 | 15 |
| 16 @param test: KVM test object. | 16 @param test: KVM test object. |
| 17 @param params: Dictionary with the test parameters. | 17 @param params: Dictionary with the test parameters. |
| 18 @param env: Dictionary with test environment. | 18 @param env: Dictionary with test environment. |
| 19 """ | 19 """ |
| 20 vm = env.get_vm(params["main_vm"]) | 20 vm = env.get_vm(params["main_vm"]) |
| 21 vm.verify_alive() | 21 vm.verify_alive() |
| 22 timeout = int(params.get("login_timeout", 360)) | 22 timeout = int(params.get("login_timeout", 360)) |
| 23 session_serial = vm.wait_for_serial_login(timeout=timeout) | 23 session_serial = vm.wait_for_serial_login(timeout=timeout) |
| 24 | 24 |
| 25 ethname = kvm_test_utils.get_linux_ifname(session_serial, | 25 ethname = virt_test_utils.get_linux_ifname(session_serial, |
| 26 vm.get_mac_address(0)) | 26 vm.get_mac_address(0)) |
| 27 | 27 |
| 28 try: | 28 try: |
| 29 transfer_thread = kvm_utils.Thread(file_transfer.run_file_transfer, | 29 transfer_thread = virt_utils.Thread(file_transfer.run_file_transfer, |
| 30 (test, params, env)) | 30 (test, params, env)) |
| 31 transfer_thread.start() | 31 transfer_thread.start() |
| 32 while transfer_thread.isAlive(): | 32 while transfer_thread.isAlive(): |
| 33 session_serial.cmd("ip link set %s promisc on" % ethname) | 33 session_serial.cmd("ip link set %s promisc on" % ethname) |
| 34 session_serial.cmd("ip link set %s promisc off" % ethname) | 34 session_serial.cmd("ip link set %s promisc off" % ethname) |
| 35 except: | 35 except: |
| 36 transfer_thread.join(suppress_exception=True) | 36 transfer_thread.join(suppress_exception=True) |
| 37 raise | 37 raise |
| 38 else: | 38 else: |
| 39 transfer_thread.join() | 39 transfer_thread.join() |
| OLD | NEW |