On Friday 05 November 2010 18:53:50 Sheng Yang wrote:
> On Friday 05 November 2010 16:43:33 Michael S. Tsirkin wrote:
> > On Fri, Nov 05, 2010 at 10:44:19AM +0800, Sheng Yang wrote:
> > > > > +};
> > > > > +
> > > > > +This ioctl would enable i
On Saturday 06 November 2010 08:27:15 Marcelo Tosatti wrote:
> On Thu, Nov 04, 2010 at 02:15:16PM +0800, Sheng Yang wrote:
> > Here is the latest series of MSI-X mask supporting patches.
> >
> > The bigest change from last version is, in order to reduce the
> > compl
On Friday 05 November 2010 21:27:42 Michael S. Tsirkin wrote:
> On Fri, Nov 05, 2010 at 06:53:50PM +0800, Sheng Yang wrote:
> > On Friday 05 November 2010 16:43:33 Michael S. Tsirkin wrote:
> > > On Fri, Nov 05, 2010 at 10:44:19AM +0800
On Friday 05 November 2010 21:54:16 Michael S. Tsirkin wrote:
> On Fri, Nov 05, 2010 at 07:02:02PM +0800, Sheng Yang wrote:
> > On Friday 05 November 2010 17:05:32 Michael S. Tsirkin wrote:
> > > On Fri, Nov 05, 2010 at 11:20:37AM +0800, Sheng Yang wrote:
> > > > On T
On Saturday 06 November 2010 08:24:51 Marcelo Tosatti wrote:
> On Fri, Nov 05, 2010 at 06:53:50PM +0800, Sheng Yang wrote:
> > On Friday 05 November 2010 16:43:33 Michael S. Tsirkin wrote:
> > > On Fri, Nov 05, 2010 at 10:44:19AM +0800
On Friday 05 November 2010 16:52:47 Michael S. Tsirkin wrote:
> On Fri, Nov 05, 2010 at 10:59:23AM +0800, Sheng Yang wrote:
> > > We are trying to move away from using ifdefs. Stub these out instead?
> >
> > Example?
>
> 37859f054986fa
We need to query the entry later.
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h |2 ++
virt/kvm/irq_comm.c | 20
2 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 7f9e4b7..e2ecbac
Change from v3:
1. Re-design the userspace API.
2. Add big-endian support for msix_mmio_read/write()(untested!)
Change from v2:
1. Move all mask handling to kernel, and userspace has to access it using API.
2. Discard userspace mask bit operation API.
Sheng Yang (7):
PCI: MSI: Move MSI-X entry
Add marco for big-endian machine.(Untested!)
Signed-off-by: Sheng Yang
---
virt/kvm/assigned-dev.c |7 ---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/virt/kvm/assigned-dev.c b/virt/kvm/assigned-dev.c
index 3010d7d..15b5f74 100644
--- a/virt/kvm/assigned-dev.c
+++ b
Then it can be used by others.
Reviewed-by: Hidetoshi Seto
Reviewed-by: Matthew Wilcox
Cc: Jesse Barnes
Cc: linux-...@vger.kernel.org
Signed-off-by: Sheng Yang
---
drivers/pci/msi.h|6 --
include/linux/pci_regs.h |7 +++
2 files changed, 7 insertions(+), 6 deletions
Then we can use it instead of magic number 1.
Reviewed-by: Hidetoshi Seto
Cc: Matthew Wilcox
Cc: Jesse Barnes
Cc: linux-...@vger.kernel.org
Signed-off-by: Sheng Yang
---
drivers/pci/msi.c|5 +++--
include/linux/pci_regs.h |1 +
2 files changed, 4 insertions(+), 2 deletions
er to accelerate.
Userspace shouldn't access the device MMIO directly for the information,
instead it should uses provided API to do so.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |1 +
include/linux/kvm.h | 32 +
include/linux/kvm_host.h |5 +
virt/kvm/assigned-dev
Then it can be used in struct kvm_assigned_dev_kernel later.
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h | 23 +++
virt/kvm/iodev.h | 25 +
2 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/include/linux
Reuse KVM_DEV_ASSIGN_ENABLE_IOMMU for an in-kernel struct didn't make much
sense.
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h |1 +
virt/kvm/assigned-dev.c |7 ---
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/include/linux/kvm_host.h b/include/
According to the PCI spec, mask bit of MSI-X table should be set after reset.
Signed-off-by: Sheng Yang
---
hw/device-assignment.c | 12
1 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/hw/device-assignment.c b/hw/device-assignment.c
index 2605bd1..dfca764 100644
Signed-off-by: Sheng Yang
---
qemu-kvm.c | 14 ++
qemu-kvm.h |7 +++
2 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/qemu-kvm.c b/qemu-kvm.c
index 733d0a9..aa30144 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -1094,6 +1094,20 @@ int kvm_assign_set_msix_entry
Then the code can be easily reviewed.
Signed-off-by: Sheng Yang
---
hw/device-assignment.c | 77 ---
1 files changed, 52 insertions(+), 25 deletions(-)
diff --git a/hw/device-assignment.c b/hw/device-assignment.c
index dfca764..5fe4a55 100644
--- a
This patch emulated MSI-X per vector mask bit on assigned device.
Signed-off-by: Sheng Yang
---
hw/device-assignment.c | 167 +---
hw/device-assignment.h |2 +-
2 files changed, 158 insertions(+), 11 deletions(-)
diff --git a/hw/device
Change from v3:
1. Enable legacy(without MSI-X mask support) userspace to tracking mask bit.
2. Rewrite follow new kernel API.
Sheng Yang (5):
qemu-kvm: device assignment: Reset MSI-X table mask bit as set
qemu-kvm: Ioctl for in-kernel mask support
qemu-kvm: device assignment: Some clean up
Signed-off-by: Sheng Yang
---
kvm/include/linux/kvm.h | 32
1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/kvm/include/linux/kvm.h b/kvm/include/linux/kvm.h
index e46729e..3925fab 100644
--- a/kvm/include/linux/kvm.h
+++ b/kvm/include/linux
On Friday 12 November 2010 00:12:21 Michael S. Tsirkin wrote:
> On Thu, Nov 11, 2010 at 03:47:00PM +0800, Sheng Yang wrote:
> > Add marco for big-endian machine.(Untested!)
> >
> > Signed-off-by: Sheng Yang
>
> I presume this is tested at the same level as the previ
On Friday 12 November 2010 17:53:13 Michael S. Tsirkin wrote:
> On Thu, Nov 11, 2010 at 03:46:59PM +0800, Sheng Yang wrote:
> > This patch enable per-vector mask for assigned devices using MSI-X.
> >
> > This patch provided two new APIs: one is for guest to specific dev
On Friday 12 November 2010 18:47:29 Michael S. Tsirkin wrote:
> On Fri, Nov 12, 2010 at 06:13:48PM +0800, Sheng Yang wrote:
> > On Friday 12 November 2010 17:53:13 Michael S. Tsirkin wrote:
> > > On Thu, Nov 11, 2010 at 03:46:59PM +0800, Sheng Yang wrote:
> > > > Thi
On Friday 12 November 2010 19:25:16 Michael S. Tsirkin wrote:
> On Fri, Nov 12, 2010 at 06:54:01PM +0800, Sheng Yang wrote:
> > On Friday 12 November 2010 18:47:29 Michael S. Tsirkin wrote:
> > > On Fri, Nov 12, 2010 at 06:13:48PM +0800, Sheng Yang wrote:
> > > > On
On Monday 15 November 2010 15:42:50 Michael S. Tsirkin wrote:
> On Mon, Nov 15, 2010 at 03:37:21PM +0800, Sheng Yang wrote:
> > > > We can back to them if there is someone really did it in that way.
> > > > But for all hypervisors using QEmu, I think we haven't se
On Friday 12 November 2010 01:29:29 Jesse Barnes wrote:
> On Thu, 11 Nov 2010 15:46:55 +0800
>
> Sheng Yang wrote:
> > Then we can use it instead of magic number 1.
> >
> > Reviewed-by: Hidetoshi Seto
> > Cc: Matthew Wilcox
> > Cc: Jesse Barnes
>
On Monday 15 November 2010 16:03:53 Michael S. Tsirkin wrote:
> On Mon, Nov 15, 2010 at 03:48:46PM +0800, Sheng Yang wrote:
> > On Monday 15 November 2010 15:42:50 Michael S. Tsirkin wrote:
> > > On Mon, Nov 15, 2010 at 03:37:21PM +0800, Sheng Yang wrote:
> > > > &g
We need to query the entry later.
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h |2 ++
virt/kvm/irq_comm.c | 20
2 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 9da2f1a..274655b
Then it can be used in struct kvm_assigned_dev_kernel later.
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h | 23 +++
virt/kvm/iodev.h | 25 +
2 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/include/linux
handling to kernel, and userspace has to access it using API.
2. Discard userspace mask bit operation API.
Sheng Yang (6):
PCI: MSI: Move MSI-X entry definition to pci_regs.h
PCI: Add mask bit definition for MSI-X table
KVM: Move struct kvm_io_device to kvm_host.h
KVM: Add
er to accelerate.
Userspace shouldn't access the device MMIO directly for the information,
instead it should uses provided API to do so.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |1 +
include/linux/kvm.h | 32 +
include/linux/kvm_host.h |5 +
virt/kvm/assigned-dev
Reuse KVM_DEV_ASSIGN_ENABLE_IOMMU for an in-kernel struct didn't make much
sense.
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h |1 +
virt/kvm/assigned-dev.c |7 ---
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/include/linux/kvm_host.h b/include/
Then we can use it instead of magic number 1.
Reviewed-by: Hidetoshi Seto
Acked-by: Jesse Barnes
Cc: Matthew Wilcox
Cc: linux-...@vger.kernel.org
Signed-off-by: Sheng Yang
---
drivers/pci/msi.c|5 +++--
include/linux/pci_regs.h |1 +
2 files changed, 4 insertions(+), 2
Then it can be used by others.
Reviewed-by: Hidetoshi Seto
Reviewed-by: Matthew Wilcox
Acked-by: Jesse Barnes
Cc: linux-...@vger.kernel.org
Signed-off-by: Sheng Yang
---
drivers/pci/msi.h|6 --
include/linux/pci_regs.h |7 +++
2 files changed, 7 insertions(+), 6
er to accelerate.
Userspace shouldn't access the device MMIO directly for the information,
instead it should uses provided API to do so.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |1 +
include/linux/kvm.h | 32 +
include/linux/kvm_host.h |5 +
virt/kvm/assigned-dev
On Wednesday 17 November 2010 03:45:22 Marcelo Tosatti wrote:
> On Mon, Nov 15, 2010 at 05:15:32PM +0800, Sheng Yang wrote:
> > This patch enable per-vector mask for assigned devices using MSI-X.
> >
> > This patch provided two new APIs: one is for guest to specific dev
On Wednesday 17 November 2010 21:58:00 Avi Kivity wrote:
> On 11/15/2010 11:15 AM, Sheng Yang wrote:
> > This patch enable per-vector mask for assigned devices using MSI-X.
> >
> > This patch provided two new APIs: one is for guest to specific device's
> > MSI-X
On Wednesday 17 November 2010 22:01:41 Avi Kivity wrote:
> On 11/15/2010 11:15 AM, Sheng Yang wrote:
> > We need to query the entry later.
> >
> > +int kvm_get_irq_routing_entry(struct kvm *kvm, int gsi,
> > + struct kvm_kernel_irq_routing_entry *entry)
&
On Thursday 18 November 2010 14:21:40 Michael S. Tsirkin wrote:
> On Thu, Nov 18, 2010 at 09:58:55AM +0800, Sheng Yang wrote:
> > > > +static int msix_mmio_write(struct kvm_io_device *this, gpa_t addr,
> > > > int len, + const void *val)
> &
On Thu, Nov 18, 2010 at 5:41 PM, Michael S. Tsirkin wrote:
> On Thu, Nov 18, 2010 at 11:30:47AM +0200, Avi Kivity wrote:
>> >>
>> >> *entry may be stale after rcu_read_unlock(). Is this a problem?
>> >
>> >I suppose not. All MSI-X MMIO accessing would be executed without delay, so
>> >no re-
>>
On Thu, Nov 18, 2010 at 5:28 PM, Avi Kivity wrote:
> On 11/18/2010 03:58 AM, Sheng Yang wrote:
>>
>> On Wednesday 17 November 2010 21:58:00 Avi Kivity wrote:
>> > On 11/15/2010 11:15 AM, Sheng Yang wrote:
>> > > This patch enable per-vector m
On Thu, Nov 18, 2010 at 8:33 PM, Michael S. Tsirkin wrote:
> On Thu, Nov 18, 2010 at 07:59:10PM +0800, Sheng Yang wrote:
>> On Thu, Nov 18, 2010 at 5:41 PM, Michael S. Tsirkin wrote:
>> > On Thu, Nov 18, 2010 at 11:30:47AM +0200, Avi Kivity wrote:
>> >> >>
On Thu, Dec 2, 2010 at 5:49 PM, Michael S. Tsirkin wrote:
> On Thu, Dec 02, 2010 at 09:13:28AM +0800, Yang, Sheng wrote:
>> On Wednesday 01 December 2010 22:03:58 Michael S. Tsirkin wrote:
>> > On Wed, Dec 01, 2010 at 04:41:38PM +0800, lidong chen wrote:
>> > > I used sr-iov, give each vm 2 vf.
>>
On Thu, Dec 2, 2010 at 10:26 PM, Michael S. Tsirkin wrote:
> On Thu, Dec 02, 2010 at 03:56:52PM +0200, Avi Kivity wrote:
>> On 12/02/2010 03:47 PM, Michael S. Tsirkin wrote:
>> >>
>> >> Which case? the readl() doesn't need access to the routing table,
>> >> just the entry.
>> >
>> >One thing th
Seems we missed it.
Signed-off-by: Sheng Yang
---
Do we need this, or slot_lock covered this?
virt/kvm/kvm_main.c | 24
1 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index c4ee364..3e71b91 100644
--- a/virt
On Monday 06 December 2010 20:58:10 Avi Kivity wrote:
> On 12/06/2010 10:44 AM, Sheng Yang wrote:
> > Seems we missed it.
> >
> > Signed-off-by: Sheng Yang
> > ---
> > Do we need this, or slot_lock covered this?
> >
> > virt/kvm/kvm_main.c | 24 +
CPUID's OSXSAVE is a mirror of CR4.OSXSAVE bit. We need to update the CPUID
after migration.
Cc: sta...@kernel.org
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index ed
On Wednesday 08 December 2010 18:33:43 Avi Kivity wrote:
> On 12/08/2010 04:49 AM, Sheng Yang wrote:
> > CPUID's OSXSAVE is a mirror of CR4.OSXSAVE bit. We need to update the
> > CPUID after migration.
>
> Applied, thanks.
>
> > @@ -5585,6 +5585,8 @@ int k
The old MSI-X enabling method assume the entries are written before MSI-X
enabled, but some OS didn't obey this, e.g. FreeBSD. This patch would fix
this.
Also, according to the PCI spec, mask bit of MSI-X table should be set
after reset.
Signed-off-by: Sheng Yang
---
hw/device-assignm
On Thursday 16 December 2010 16:21:52 Sheng Yang wrote:
> The old MSI-X enabling method assume the entries are written before MSI-X
> enabled, but some OS didn't obey this, e.g. FreeBSD. This patch would fix
> this.
>
> Also, according to the PCI spec, mask bit of MSI-X
Then we can support mask bit operation of assigned devices now.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/Makefile|2 +-
arch/x86/kvm/x86.c |8 +-
include/linux/kvm.h | 22
include/linux/kvm_host.h | 25 +
virt/kvm/assigned-dev.c | 30 ++
virt/kvm
This patchset didn't include two PCI related patches which would be checked
in through PCI subsystem.
Would add the API document soon.
Change from v5:
Complete rewrote according to Avi's comments.
Sheng Yang (2):
KVM: Move struct kvm_io_device to kvm_host.h
KVM: Emulate MSI-X tab
Then it can be used by other struct in kvm_host.h
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h | 23 +++
virt/kvm/iodev.h | 25 +
2 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/include/linux/kvm_host.h b/include
BTW: the first patch can be applied alone.
Sheng Yang (4):
qemu-kvm: device assignment: Enabling MSI-X according to the entries'
mask bit
qemu-kvm: Ioctl for MSIX MMIO support
qemu-kvm: Header file update for MSI-X MMIO support
qemu-kvm: MSI-X MMIO support for assigned device
Signed-off-by: Sheng Yang
---
kvm/include/linux/kvm.h | 22 ++
1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/kvm/include/linux/kvm.h b/kvm/include/linux/kvm.h
index e46729e..e11d2b2 100644
--- a/kvm/include/linux/kvm.h
+++ b/kvm/include/linux/kvm.h
The old MSI-X enabling method assume the entries are written before MSI-X
enabled, but some OS didn't obey this, e.g. FreeBSD. This patch would fix
this.
Also, according to the PCI spec, mask bit of MSI-X table should be set
after reset.
Signed-off-by: Sheng Yang
---
hw/device-assignm
Signed-off-by: Sheng Yang
---
hw/device-assignment.c | 143 +++-
hw/device-assignment.h |7 ++-
qemu-kvm.c | 36
qemu-kvm.h | 11
4 files changed, 180 insertions(+), 17 deletions(-)
diff --git a/hw
Signed-off-by: Sheng Yang
---
qemu-kvm.c | 14 ++
qemu-kvm.h |7 +++
2 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/qemu-kvm.c b/qemu-kvm.c
index 471306b..956b62a 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -1050,6 +1050,20 @@ int kvm_assign_set_msix_entry
On Wednesday 22 December 2010 16:44:53 Sheng Yang wrote:
> This patchset didn't include two PCI related patches which would be checked
> in through PCI subsystem.
>
> Would add the API document soon.
Avi?
BTW, there is one compiling issue for the second patch, due to last
On Tuesday 28 December 2010 20:26:13 Avi Kivity wrote:
> On 12/22/2010 10:44 AM, Sheng Yang wrote:
> > Then we can support mask bit operation of assigned devices now.
> >
> >
> > @@ -3817,14 +3819,16 @@ static int
> > emulator_write_emulated_onepage(un
On Wednesday 29 December 2010 16:31:35 Michael S. Tsirkin wrote:
> On Wed, Dec 29, 2010 at 03:18:13PM +0800, Sheng Yang wrote:
> > On Tuesday 28 December 2010 20:26:13 Avi Kivity wrote:
> > > On 12/22/2010 10:44 AM, Sheng Yang wrote:
> > > > Then we can support
On Wednesday 29 December 2010 17:28:24 Michael S. Tsirkin wrote:
> On Wed, Dec 29, 2010 at 04:55:19PM +0800, Sheng Yang wrote:
> > On Wednesday 29 December 2010 16:31:35 Michael S. Tsirkin wrote:
> > > On Wed, Dec 29, 2010 at 03:18:13PM +0800, Sheng Yang wrote:
> > > &g
On Thursday 30 December 2010 15:47:48 Michael S. Tsirkin wrote:
> On Thu, Dec 30, 2010 at 03:32:42PM +0800, Sheng Yang wrote:
> > On Wednesday 29 December 2010 17:28:24 Michael S. Tsirkin wrote:
> > > On Wed, Dec 29, 2010 at 04:55:19PM +0800, Sheng Yang wrote:
> > > >
On Thursday 30 December 2010 16:15:32 Michael S. Tsirkin wrote:
> On Thu, Dec 30, 2010 at 03:55:10PM +0800, Sheng Yang wrote:
> > On Thursday 30 December 2010 15:47:48 Michael S. Tsirkin wrote:
> > > On Thu, Dec 30, 2010 at 03:32:42PM +0800, Sheng Yang wrote:
> > > >
hange, for both
paging to nonpaging, and nonpaging to paging switch.
Signed-off-by: Sheng Yang
---
But I haven't found the exactly point affected by this, any clue?
arch/x86/kvm/vmx.c |6 +-
1 files changed, 1 insertions(+), 5 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/
On Thursday 30 December 2010 16:57:20 Avi Kivity wrote:
> On 12/30/2010 10:35 AM, Sheng Yang wrote:
> > After CR0 is changed during VMExit, the result of kvm_read_cr3() may be
> > different. Commit d95bfcdd7cda4dfdac9588e684bc7c75794a075e "KVM: Fetch
> > guest cr3 from
On Thursday 30 December 2010 16:57:20 Avi Kivity wrote:
> On 12/30/2010 10:35 AM, Sheng Yang wrote:
> > After CR0 is changed during VMExit, the result of kvm_read_cr3() may be
> > different. Commit d95bfcdd7cda4dfdac9588e684bc7c75794a075e "KVM: Fetch
> > guest cr3 from
On Thursday 30 December 2010 16:52:58 Michael S. Tsirkin wrote:
> On Thu, Dec 30, 2010 at 04:24:10PM +0800, Sheng Yang wrote:
> > On Thursday 30 December 2010 16:15:32 Michael S. Tsirkin wrote:
> > > On Thu, Dec 30, 2010 at 03:55:10PM +0800, Sheng Yang wrote:
> > > >
On Thursday 30 December 2010 17:14:23 Avi Kivity wrote:
> On 12/30/2010 11:05 AM, Sheng Yang wrote:
> > > >if (!(cr0& X86_CR0_PG)) {
> > > >
> > > >/* From paging/starting to nonpaging */
> > > >
hange, for both
paging to nonpaging, and nonpaging to paging switch.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/vmx.c |6 +-
1 files changed, 1 insertions(+), 5 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index f107315..bf89ec2 100644
--- a/arch/x86/kvm/vmx.c
+++ b/ar
On Thursday 30 December 2010 18:32:56 Michael S. Tsirkin wrote:
> On Thu, Dec 30, 2010 at 11:30:12AM +0200, Avi Kivity wrote:
> > On 12/30/2010 09:47 AM, Michael S. Tsirkin wrote:
> > >I am not really suggesting this. What I say is PBA is unimplemented
> > >let us not commit to an interface yet.
>
Then it can be used by other struct in kvm_host.h
Signed-off-by: Sheng Yang
---
include/linux/kvm_host.h | 23 +++
virt/kvm/iodev.h | 25 +
2 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/include/linux/kvm_host.h b/include
PCI: MSI: Move MSI-X entry definition to pci_regs.h
PCI: Add mask bit definition for MSI-X table
These two patches are in the Jesse's pci-2.6 tree. Do I need to repost them?
Sheng Yang (3):
KVM: Move struct kvm_io_device to kvm_host.h
KVM: Emulate MSI-X table in kernel
KVM: Add doc
Then we can support mask bit operation of assigned devices now.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/Makefile|2 +-
arch/x86/kvm/x86.c |8 +-
include/linux/kvm.h | 21
include/linux/kvm_host.h | 25
virt/kvm/assigned-dev.c | 44 +++
virt/kvm
Signed-off-by: Sheng Yang
---
Documentation/kvm/api.txt | 41 +
1 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/Documentation/kvm/api.txt b/Documentation/kvm/api.txt
index e1a9297..4978b94 100644
--- a/Documentation/kvm/api.txt
+++ b
Update with kernel patches v7.
Sheng Yang (4):
qemu-kvm: device assignment: Enabling MSI-X according to the entries'
mask bit
qemu-kvm: Ioctl for MSIX MMIO support
qemu-kvm: Header file update for MSI-X MMIO support
qemu-kvm: MSI-X MMIO support for assigned device
hw/d
Signed-off-by: Sheng Yang
---
kvm/include/linux/kvm.h | 21 +
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/kvm/include/linux/kvm.h b/kvm/include/linux/kvm.h
index e46729e..7b6d5b9 100644
--- a/kvm/include/linux/kvm.h
+++ b/kvm/include/linux/kvm.h
Signed-off-by: Sheng Yang
---
hw/device-assignment.c | 93 +--
hw/device-assignment.h |3 ++
qemu-kvm.c | 40
qemu-kvm.h | 11 ++
4 files changed, 135 insertions(+), 12 deletions(-)
diff
The old MSI-X enabling method assume the entries are written before MSI-X
enabled, but some OS didn't obey this, e.g. FreeBSD. This patch would fix
this.
Also, according to the PCI spec, mask bit of MSI-X table should be set
after reset.
Signed-off-by: Sheng Yang
---
hw/device-assignm
Signed-off-by: Sheng Yang
---
qemu-kvm.c | 14 ++
qemu-kvm.h |7 +++
2 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/qemu-kvm.c b/qemu-kvm.c
index 471306b..956b62a 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -1050,6 +1050,20 @@ int kvm_assign_set_msix_entry
On Thursday 06 January 2011 18:19:42 Sheng Yang wrote:
> Change from v6:
> 1. Discard PBA support. But we can still add it later.
> 2. Fix one memory reference bug
> 3. Add automatically MMIO unregister after device was deassigned.
> 4. Update according to Avi's comments.
&g
On Friday 24 July 2009 04:59:51 Saksena, Abhishek wrote:
> Hi
> I am trying to boot a patched version of Boch's BIOS on KVM. It works fine
> with Qemu with -no-kvm option. However I get following with KVM
The first thing come to my mind is your bios lacks some reserved page for VMX.
See qemu-kvm/
int inject = 0;
> ps = &pit->pit_state;
>
Oh, follow up for the recent zero day exploit, right? :)
Yes, vcpu NULL check is not necessary here.
Acked-by: Sheng Yang
--
regards
Yang, Sheng
> --
> To unsubscribe from this list: send the line "unsubscribe k
Copy u64 from guest result in chaos.
Also fix a mistake of still using old macro rather than new variable().
Signed-off-by: Sheng Yang
---
arch/x86/kvm/vmx.c |2 +-
arch/x86/kvm/x86.c |2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86
On Monday 03 August 2009 20:25:43 Avi Kivity wrote:
> On 08/03/2009 09:17 AM, Sheng Yang wrote:
> > Copy u64 from guest result in chaos.
> >
> > Also fix a mistake of still using old macro rather than new variable().
> >
> > Signed-off-by: Sheng Yang
> &
The argument to kernel space should be u64 rather than unsigned long.
Signed-off-by: Sheng Yang
---
qemu-kvm-x86.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c
index 492dbc5..5fa89e8 100644
--- a/qemu-kvm-x86.c
+++ b/qemu-kvm-x86.c
Should be new ept_identity_map_addr rather than old macro.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/vmx.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index 7931c72..c5aaa1b 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm
On Tuesday 04 August 2009 00:47:16 Marcelo Tosatti wrote:
> On Mon, Aug 03, 2009 at 02:17:27PM +0800, Sheng Yang wrote:
> > Copy u64 from guest result in chaos.
>
> Why?
My fault in userspace...
--
regards
Yang, Sheng
>
> > Also fix a mistake of still using old macro
QNX update WP bit when paging enabled, which is not covered yet. This one fix
QNX boot with EPT.
Signed-off-by: Sheng Yang
---
I think it's also necessary for 2.6.31?
arch/x86/kvm/vmx.c |6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arc
Commit 0d11419a result in NULL pointer reference when using
--no-kvm-irqchip.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 850cf56..9ac2d9e 100644
--- a/arch/x86/kvm/x86
On Wednesday 14 April 2010 17:20:15 Avi Kivity wrote:
> On 04/14/2030 12:05 PM, Zhang, Yanmin wrote:
> > Here is the new patch of V3 against tip/master of April 13th
> > if anyone wants to try it.
>
> Thanks for persisting despite the flames.
>
> Can you please separate arch/x86/kvm part of the p
On Wednesday 14 April 2010 17:57:50 Avi Kivity wrote:
> On 04/14/2010 12:43 PM, Sheng Yang wrote:
> > On Wednesday 14 April 2010 17:20:15 Avi Kivity wrote:
> >> On 04/14/2030 12:05 PM, Zhang, Yanmin wrote:
> >>> Here is the new patch of V3 against tip/master of April
On Wednesday 14 April 2010 18:19:49 Avi Kivity wrote:
> On 04/14/2010 01:14 PM, Sheng Yang wrote:
> >> I wouldn't like to depend on model specific behaviour.
> >>
> >> One option is to read all the information synchronously and store it in
> >> a per-c
On Wednesday 14 April 2010 18:33:37 Avi Kivity wrote:
> On 04/14/2010 01:27 PM, Sheng Yang wrote:
> >> Yes, interesting to see what the latency is. If it's reasonably short
> >> (and I expect it will be so), we can do the busy wait solution.
> >>
> >>
On Thursday 15 April 2010 18:44:15 Avi Kivity wrote:
> On 04/15/2010 01:40 PM, Joerg Roedel wrote:
> >> That means an NMI that happens outside guest code (for example, in the
> >> mmu, or during the exit itself) would be counted as if in guest code.
> >
> > Hmm, true. The same is true for an NMI th
On Monday 19 April 2010 16:25:17 Avi Kivity wrote:
> On 04/17/2010 09:12 PM, Avi Kivity wrote:
> > I think you were right the first time around.
>
> Re-reading again (esp. the part about treatment of indirect NMI
> vmexits), I think this was wrong, and that the code is correct. I am
> now thoroug
mmu.free() already set root_hpa to INVALID_PAGE, no need to do it again in the
destory_kvm_mmu().
kvm_x86_ops->set_cr4() and set_efer() already assign cr4/efer to
vcpu->arch.cr4/efer, no need to do it again later.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/mmu.c |5 ++---
arch/x86/k
Only modifying some bits of CR0/CR4 needs paging mode switch.
Add update_rsvd_bits_mask() to address EFER.NX bit updating for reserved bits.
Signed-off-by: Sheng Yang
---
arch/x86/include/asm/kvm_host.h |1 +
arch/x86/kvm/mmu.c | 17 ++---
arch/x86/kvm/x86.c
Modify EFER won't result in mode switch directly. After EFER.LME set, the
following set CR0.PG would result in mode switch to IA32e. And the later
action already covered by kvm_set_cr0().
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |1 -
1 files changed, 0 insertions(+), 1 dele
kvm_x86_ops->set_efer() would execute vcpu->arch.efer = efer, so the
checking of LMA bit didn't work.
Signed-off-by: Sheng Yang
---
arch/x86/kvm/x86.c |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index cd8a6
101 - 200 of 1060 matches
Mail list logo