migration status in the reg
*PCI_VF_MIGRATION_VF_STATUS
VF driver tells Qemu ready for migration
*PCI_VF_MIGRATION_IRQ
VF driver stores mailbox interrupt vector in the reg for Qemu to trigger during
migration.
Signed-off-by: Lan Tianyu
---
include/uapi/linux/pci_regs.h | 18 +-
1 file
migration status in the reg
*PCI_VF_MIGRATION_VF_STATUS
VF driver tells Qemu ready for migration
*PCI_VF_MIGRATION_IRQ
VF driver stores mailbox interrupt vector in the reg for Qemu to trigger during
migration.
Signed-off-by: Lan Tianyu
---
include/hw/pci/pci_regs.h | 19 +++
1 file
Signed-off-by: Lan Tianyu
---
hw/vfio/pci.c | 6 +++---
hw/vfio/pci.h | 4
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index d0354a0..7c43fc1 100644
--- a/hw/vfio/pci.c
+++ b/hw/vfio/pci.c
@@ -613,7 +613,7 @@ static void
capability and occupy some free PCI config space
regs.
Signed-off-by: Lan Tianyu
---
hw/vfio/pci.c | 22 --
1 file changed, 12 insertions(+), 10 deletions(-)
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index 5c3f8a7..29845e3 100644
--- a/hw/vfio/pci.c
+++ b/hw/vfio/pci.c
@@ -2344,18
n nic before migration and put up again on
the target machine.
Lan Tianyu (3):
VFIO: Add new ioctl cmd VFIO_GET_PCI_CAP_INFO
PCI: Add macros for faked PCI migration capability
Ixgbevf: Add migration support for ixgbevf driver
drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 5 ++
driver
This patch is to add ioctl wrap to find free PCI config sapce regs.
Signed-off-by: Lan Tianyu
---
hw/vfio/pci.c | 19 +++
hw/vfio/pci.h | 2 ++
2 files changed, 21 insertions(+)
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index 29845e3..d0354a0 100644
--- a/hw/vfio/pci.c
+++ b
Signed-off-by: Lan Tianyu
---
linux-headers/linux/vfio.h | 16
1 file changed, 16 insertions(+)
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h
index 0508d0b..732b0bd 100644
--- a/linux-headers/linux/vfio.h
+++ b/linux-headers/linux/vfio.h
@@ -495,6 +495,22
n nic before migration and put up again on
the target machine.
Lan Tianyu (10):
Qemu/VFIO: Create head file pci.h to share data struct.
Qemu/VFIO: Add new VFIO_GET_PCI_CAP_INFO ioctl cmd definition
Qemu/VFIO: Rework vfio_std_cap_max_size() function
Qemu/VFIO: Add vfio_find_free_cfg_reg() to
Signed-off-by: Lan Tianyu
---
hw/vfio/pci.c | 137 +-
hw/vfio/pci.h | 158 ++
2 files changed, 159 insertions(+), 136 deletions(-)
create mode 100644 hw/vfio/pci.h
diff --git a/hw/vfio/pci.c
On 2015年10月30日 00:17, Alexander Duyck wrote:
> On 10/29/2015 01:33 AM, Lan Tianyu wrote:
>> On 2015年10月29日 14:58, Alexander Duyck wrote:
>>> Your code was having to do a bunch of shuffling in order to get things
>>> set up so that you could bring the interface back up.
On 2015年10月29日 14:58, Alexander Duyck wrote:
>
> Your code was having to do a bunch of shuffling in order to get things
> set up so that you could bring the interface back up. I would argue
> that it may actually be faster at least on the bring-up to just drop the
> old rings and start over since
On 2015年10月26日 23:03, Alexander Duyck wrote:
> No. I think you are missing the fact that there are 256 descriptors per
> page. As such if you dirty just 1 you will be pulling in 255 more, of
> which you may or may not have pulled in the receive buffer for.
>
> So for example if you have the desc
On 2015年10月24日 02:36, Alexander Duyck wrote:
> I was thinking about it and I am pretty sure the dummy write approach is
> problematic at best. Specifically the issue is that while you are
> performing a dummy write you risk pulling in descriptors for data that
> hasn't been dummy written to yet.
On 10/22/2015 4:45 AM, Alexander Duyck wrote:
+/* Record states hold by PF */
+memcpy(&state->vf_data, &adapter->vfinfo[vfn], sizeof(struct
vf_data_storage));
+
+vf_shift = vfn % 32;
+reg_offset = vfn / 32;
+
+reg = IXGBE_READ_REG(hw, IXGBE_VFTE(reg_offset));
+reg &= ~(1
On 10/25/2015 2:03 PM, Alexander Duyck wrote:
On 10/24/2015 08:43 AM, Lan, Tianyu wrote:
On 10/22/2015 4:52 AM, Alexander Duyck wrote:
Also have you even considered the MSI-X configuration on the VF? I
haven't seen anything anywhere that would have migrated the VF's MSI-X
con
On 10/22/2015 5:14 AM, Alexander Duyck wrote:
Where is i being initialized? It was here but you removed it. Are you
using i without initializing it?
Sorry, the initialization was put into patch 10 by mistake. "i" is
assigned with "tx_ring->next_to_clean".
On 10/22/2015 8:58 PM, Michael S. Tsirkin wrote:
Do you really need to play the shifting games?
Can't you just reset everything and re-initialize the rings?
It's slower but way less intrusive.
Also removes the need to track writes into rings.
Shift ring is to avoid losing those packets in the
On 10/22/2015 4:52 AM, Alexander Duyck wrote:
Also have you even considered the MSI-X configuration on the VF? I
haven't seen anything anywhere that would have migrated the VF's MSI-X
configuration from BAR 3 on one system to the new system.
MSI-X migration is done by Hypervisor(Qemu).
Follow
On 10/22/2015 2:07 AM, Alexander Duyck wrote:
On 10/21/2015 09:37 AM, Lan Tianyu wrote:
Add "virtfn_index" member in the struct pci_device to record VF sequence
of PF. This will be used in the VF sysfs node handle.
Signed-off-by: Lan Tianyu
---
drivers/pci/iov.c | 1 +
inc
On 2015年10月22日 02:39, Alex Williamson wrote:
> On Thu, 2015-10-22 at 00:52 +0800, Lan Tianyu wrote:
>> This patchset is Qemu part for live migration support for SRIOV NIC.
>> kernel part patch information is in the following link.
>> http://marc.info/?l=kvm&m=1445446
Add "virtfn_index" member in the struct pci_device to record VF sequence
of PF. This will be used in the VF sysfs node handle.
Signed-off-by: Lan Tianyu
---
drivers/pci/iov.c | 1 +
include/linux/pci.h | 1 +
2 files changed, 2 insertions(+)
diff --git a/drivers/pci/iov.c b/drivers
Ring shifting during restoring VF function maybe race with original
ring operation(transmit/receive package). This patch is to add tx/rx
lock to protect ring related data.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 2 ++
drivers/net/ethernet/intel/ixgbevf
t interface is up or open.
Call existed function to update base and saved_reset data to keep statistic
data continual during migration.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/ethernet/int
This patch is to add ixgbe_ping_vf() to notify a specified VF. When
migration status is changed, it's necessary to notify VF the change.
VF driver will check the migrate status when it gets mailbox msg.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
This patch is to add new sysfs interface of "notify_vf" under sysfs
directory of VF PCI device for Qemu to notify VF when migration status
is changed.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 30 ++
drivers/net/ethernet/i
e and write it back) during receive
and transmit data.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 14 +++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
b/drivers/net/ethernet/
In order to restore VF function after migration, add self emulation layer
to record regs' values during accessing regs.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/Makefile| 3 ++-
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 2 +-
.../net/ethernet/
VF status in the PF driver needs to be restored after migration and reset
VF hardware. This patch is to add a new event for VF driver to notify PF
driver to restore status.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/mbx.h | 3 +++
drivers/net/ethernet/intel/ixgbevf/vf.c
=
So far, the patchset isn't perfect. VF net interface can't be open, closed,
down
and up during migration. Will prevent such operation during migration in the
future job.
Very appreciate for your comments.
Lan Tianyu (12):
PCI: Add virtfn_index for struct pci_device
irst entry of the ring and then enable tx/rx rings. VF restarts to
receive and transmit from original head desc.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/defines.h | 6 ++
drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 7 +-
driver
This patch is to restore VF status in the PF driver when get event
from VF.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbe/ixgbe.h | 1 +
drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.h | 1 +
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 40
is to replace recording
pointer with recording the desc number of the package and find
the end decs via the first desc and desc number.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 1 +
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 19 -
Signed-off-by: Lan Tianyu
---
hw/i386/kvm/pci-assign.c | 111 ++-
hw/i386/kvm/pci-assign.h | 109 ++
2 files changed, 112 insertions(+), 108 deletions(-)
create mode 100644 hw/i386/kvm/pci-assign.h
diff
This patchset is Qemu part for live migration support for SRIOV NIC.
kernel part patch information is in the following link.
http://marc.info/?l=kvm&m=144544635330193&w=2
Lan Tianyu (3):
Qemu: Add pci-assign.h to share functions and struct definition with
new file
Q
iver tells Qemu it's ready for migration
via writing 1 to reg "0xF1".
Qemu notifies VF driver about migration status change via new sysfs
node notify_vf to send mailbox msg to VF driver.
Signed-off-by: Lan Tianyu
---
hw/i386/kvm/Makefile.objs | 2 +-
hw/i386/kvm/pci-assi
: Lan Tianyu
---
include/migration/vmstate.h | 2 ++
migration/savevm.c | 15 +++
2 files changed, 17 insertions(+)
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index 0695d7c..dc681a6 100644
--- a/include/migration/vmstate.h
+++ b/include/migration
This patch is to add sysfs interface state_in_pf under sysfs directory
of VF PCI device for Qemu to get and put VF status in the PF driver during
migration.
Signed-off-by: Lan Tianyu
---
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 156 -
1 file changed, 155
ss
msix->mmio's obj. But the whole msix struct has already been freed
by xen_pt_msix_delete. This will cause segment fault when msix->mmio
has been overwritten.
This patch is to fix the issue.
Signed-off-by: Lan Tianyu
---
hw/xen/xen_pt.c |8
hw/xen/xen_pt.
On 10/6/2015 9:49 PM, Stefano Stabellini wrote:
On Tue, 6 Oct 2015, Paolo Bonzini wrote:
On 05/10/2015 18:53, Stefano Stabellini wrote:
This patch is to fix the issue via moving MSIX MMIO memory region into
struct XenPCIPassthroughState and free it together with pt device's obj.
Given that
e()
before deleting pt device's properties, this will cause segment fault.
Reproduce the bug via hotplugging device frequently.
This patch is to fix the issue via moving MSIX MMIO memory region into
struct XenPCIPassthroughState and free it together with pt device's obj.
Signed-off-by: La
e()
before deleting pt device's properties, this will cause segment fault.
Reproduce the bug via hotplugging device frequently.
This patch is to fix the issue via moving MSIX MMIO memory region into
struct XenPCIPassthroughState and free it together with pt device's obj.
Signed-off-by: Lan
101 - 141 of 141 matches
Mail list logo