From cc1a204423475ff7a918b11d78b9ae637f320e23 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Tue, 31 Mar 2009 11:45:38 +0100 Subject: [PATCH] passthrough: Fix duplicated MAC addr when multi-port NIC assigned to HVM domain This patch fixes duplicated MAC address when multi-port NIC is assigned to HVM domain. Currently multi-function device is shown as two single function devices. e1000e driver and igb driver for linux add 1 to MAC address of second port of multi-port NIC. But they don't add 1 to MAC address of second port if NIC is single-function device. Because of this, the MAC addresses of the first port and the second port are duplicated. The patch make Header Type register passthrough-type. This means a multi-function device is shown as two multi-function devices which implement only one function. So e1000e driver and igb driver add 1 to MAC address of second port. When we use windows guest, the same issue occurs, the patch fix it. Signed-off-by: Yuji Shimada --- hw/pass-through.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/hw/pass-through.c b/hw/pass-through.c index 4baf84b2f..720c9e69d 100644 --- a/hw/pass-through.c +++ b/hw/pass-through.c @@ -265,18 +265,6 @@ static struct pt_reg_info_tbl pt_emu_reg_header0_tbl[] = { .u.b.write = pt_byte_reg_write, .u.b.restore = pt_byte_reg_restore, }, - /* Header Type reg */ - { - .offset = PCI_HEADER_TYPE, - .size = 1, - .init_val = 0x00, - .ro_mask = 0xFF, - .emu_mask = 0x80, - .init = pt_common_reg_init, - .u.b.read = pt_byte_reg_read, - .u.b.write = pt_byte_reg_write, - .u.b.restore = NULL, - }, /* Interrupt Line reg */ { .offset = PCI_INTERRUPT_LINE, -- 2.39.5