[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] adding a pass-through NIC to a working PV guest breaks/alters existing interface assignments


  • To: xen-users@xxxxxxxxxxxxxxxxxxx
  • From: "dan tropper" <dan.tropper@xxxxxxxxx>
  • Date: Mon, 18 Feb 2008 10:29:22 -0800
  • Delivery-date: Mon, 18 Feb 2008 10:30:18 -0800
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=XmZEB14QQ959BCrHBboK8e+bWq02HeNHTCSs+q24spTNo5AtqdWvs0/bV3ku58jhPryXSDXeOmlskUpP2VLPwES9ISC3kIN0nitNWVNZ8UN3en3JMjioK+8jLjEimWhEgg9y9VrsHAOm1Z34icVDTplEFYP/Tz4VZeL5StLAzA0=
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

I've setup a PV guest domain with two Xen bridge interfaces.  It works fine.

Trying to pass through a real NIC from the host messes up the guest's
interfaces assignments.

I don't know what I'm doing wrong, or need to do differently.

Here's what I've done so far.

1st, configuring the guest with just bridge interfaces

 vif = [ 'mac=aa:bb:cc:dd:ee:01, bridge=xenbr1, vifname=vif.1'
'mac=aa:bb:cc:dd:ee:02, bridge=xenbr2, vifname=vif.2' ]

and,

/etc/sysconfig/network-scripts/
 ifcfg-eth1 -> HWADDR=aa:bb:cc:dd:ee:01
 ifcfg-eth2 -> HWADDR=aa:bb:cc:dd:ee:02

it launches with no errors, with eth1 & eth2 both 'up'.


Next, added an Intel NIC on the host,

lspci | grep Intel
 04:07.0 Ethernet controller: Intel Corporation 82541PI Gigabit
Ethernet Controller (rev 05)

and, have enabled pci passtrhough from the host.

/etc/modprobe.conf ->
 options pciback hide=(0000:04:07.0)
 install e1000 /sbin/modprobe pciback ; /sbin/modprobe --first-time
--ignore-install e1000
 alias eth0 e1000

/boot/grub/grub.conf ->
 module /vmlinuz.xen ro root=/dev/VG/root pciback.permissive
pciback.hide=(04:07.0)


and, modded the xen guest config to

 pci = [ '04:07.0' ]
 vif = [ 'mac=aa:bb:cc:dd:ee:01, bridge=xenbr1, vifname=vif.1'
'mac=aa:bb:cc:dd:ee:02, bridge=xenbr2, vifname=vif.2' ]


Launch of this config completes, and I can ssh to the guest.

I can see the passed-through real NIC in the guest.

lspci
 00:00.0 Ethernet controller: Intel Corporation 82541PI Gigabit
Ethernet Controller (rev 05)

But ifconfig only show eth1 (the intfc I can ssh to) as 'up'.

Trying to bring up interfaces fails for eth0,

ifconfig eth0 up
 eth0: unknown interface: No such device

and succeeds for 'eth2'
 ifconfig eth2 up

But eth2 is now 'up' with the real NIC's MACaddr,

ifconfig eth2 | grep HWaddr
 eth2      Link encap:Ethernet  HWaddr 00:3C:2D:14:D6:2C

instead of the MAC assigned to xenbr2, as before.

In 'dmesg' output,

 ...
 PCI: setting up Xen PCI frontend stub
 ...
 pcifront pci-0: Installing PCI frontend
 pcifront pci-0: Creating PCI Frontend Bus 0000:00
 ...
 Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
 Copyright (c) 1999-2006 Intel Corporation.
 PCI: Enabling device 0000:00:00.0 (0000 -> 0003)
 e1000: 0000:00:00.0: e1000_validate_option: Transmit Descriptors set to 4096
 e1000: 0000:00:00.0: e1000_validate_option: Receive Descriptors set to 4096
 e1000: 0000:00:00.0: e1000_validate_option: Checksum Offload Disabled
 e1000: 0000:00:00.0: e1000_validate_option: Flow Control Enabled
 e1000: 0000:00:00.0: e1000_validate_option: Transmit Interrupt Delay set to 0
 e1000: 0000:00:00.0: e1000_validate_option: Receive Interrupt Delay set to 0
 e1000: 0000:00:00.0: e1000_check_options: Interrupt Throttling Rate
(ints/sec) turned off
 e1000: 0000:00:00.0: e1000_check_copper_options: Using
Autonegotiation at 1000 Mbps Full Duplex only
 e1000: 0000:00:00.0: e1000_probe: (PCI:33MHz:32-bit) 00:3C:2D:14:D6:2C
 e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
 ...
 netfront: Initialising virtual ethernet driver.
 netfront: device eth1 has copying receive path.
 netfront: device eth2 has copying receive path.
 ...

It looks like the Intel NIC is being probed on eth0, but then is
assigned to eth2.

I've probably missed something in required configuration, but don't know what.

Can someone help straigthen me out?

Thanks.

Dan Tropper

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.