this patch set is a prereq patch set for Patch:'VT-d Device-TLB flush issue'.
Current code would be panic(), when VT-d Device-TLB flush timed out. the panic()
is going to be eliminated, so we must check all kinds of error and all the way
up
the call trees.
Quan Xu (2):
IOMMU/MMU:
Current code would be panic(), when VT-d Device-TLB flush timed out.
the panic() is going to be eliminated, so we must check all kinds of
error and all the way up the call trees.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Liu Jinsong
CC: Keir Fraser
CC: Andrew Cooper
CC: Jun Nakajima
CC
Signed-off-by: Quan Xu
---
docs/misc/xen-command-line.markdown | 7 +++
xen/drivers/passthrough/vtd/qinval.c | 17 -
2 files changed, 19 insertions(+), 5 deletions(-)
diff --git a/docs/misc/xen-command-line.markdown
b/docs/misc/xen-command-line.markdown
index ca77e3b
If Device-TLB flush timed out, we would hide the target ATS
device and crash the domain owning this ATS device. If impacted
domain is hardware domain, just throw out a warning.
The hidden device should be disallowed to be further assigned
to any domain.
Signed-off-by: Quan Xu
---
xen/drivers
For consistency, we wrap a _sync version for all VT-d flush interfaces.
It simplifies caller logic and makes code more readable as well.
Signed-off-by: Quan Xu
---
xen/drivers/passthrough/vtd/extern.h | 2 +
xen/drivers/passthrough/vtd/qinval.c | 173 --
xen
se against a6f2cdb633bf519244a16674031b8034b581ba7f.
#patch 1
*Add __must_check annotation.
#patch 2
*It is a new patch that wraps a _sync version for all VT-d flush interfaces.
#patch 3
*Add a blank line between:
+pcidevs_lock();
+for_each_pdev(d, pdev)
Quan Xu (3):
VT
e.
* Add function declaration at the head of file, and then we don't need pure
code movement.
#patch 3
* Enhance the commit message.
* 'ASSERT ( pdev->domain )' to 'ASSERT(pdev->domain)'
Quan Xu (3):
VT-d: add a command line parameter for Queued Invalidation
' addresses the __mustcheck.
That is the other callers of this routine (two or three
levels up) ignore the return code. This patch does not
address this but the other does.
Signed-off-by: Quan Xu
---
docs/misc/xen-command-line.markdown | 18 ++
xen/drivers/passthrou
(see device_assigned).
Signed-off-by: Quan Xu
---
xen/drivers/passthrough/pci.c | 6 ++--
xen/drivers/passthrough/vtd/extern.h | 3 +-
xen/drivers/passthrough/vtd/qinval.c | 58 +--
xen/drivers/passthrough/vtd/x86/ats.c | 11 ---
xen/include/xen/
could find out the buggy ATS device and hide it. However, for other
VT-d flush interfaces, the invalidate_sync() is still put after at present.
This is inconsistent.
So we wrap a _sync version for all VT-d flush interfaces. It simplifies
caller logic and makes code more readable as well.
Signed-off-b
patch set is also based on the discussion of 'abstract model of IOMMU
unmaping/mapping failures'
In this version, I try that splitting things is to go function by function, top
level ones first,
and leaf ones last, one function per patch (maybe pairs of functions, as in the
map/unma
While IOMMU Device-TLB flush timed out, xen calls panic() at present.
However the existing panic() is going to be eliminated, so we must
propagate the IOMMU Device-TLB flush error up to IOMMU mapping.
Signed-off-by: Quan Xu
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers
-off-by: Quan Xu
CC: Kevin Tian
CC: Feng Wu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
---
xen/drivers/passthrough/vtd/iommu.c | 94 -
xen/include/asm-x86/iommu.h | 2 +-
2 files changed, 63 insertions(+), 33 deletions(-)
diff --git a/xen
-off of complexity),
at least, unmap upon maps error or then throw out error message.
IOMMU unmapping should perhaps continue despite an error, in an attempt to
do best effort cleanup.
Signed-off-by: Quan Xu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Jun Nakajima
CC: Kevin Tian
CC
While grant table is unmapping, the domain (with the exception of the
hardware domain) may be crashed due to IOMMU mapping and unmapping
failures, and then it is unnecessary to flush specified CPUs' TLBs.
Signed-off-by: Quan Xu
CC: Ian Jackson
CC: Jan Beulich
CC: Keir Fraser
CC: Tim D
hardware domain) is crashed, treated as a fatal error. Rollback can
be lighter weight.
This patch fixes the leaf ones.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/iommu.c | 8 ++--
xen/drivers/passthrough/vtd/iommu.c | 8
xen
Now IOMMU mapping and unmapping failures are treated as a fatal to
the domain (with the exception of the hardware domain).
If IOMMU mapping and unmapping failed, crash the domain (with the
exception of the hardware domain) and propagate the error up to the
call trees.
Signed-off-by: Quan Xu
CC
While IOMMU Device-TLB flush timed out, xen calls panic() at present.
However the existing panic() is going to be eliminated, so we must
propagate the IOMMU Device-TLB flush error up to vt-d hardware
initialization.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen
While IOMMU Device-TLB flush timed out, xen calls panic() at present.
However the existing panic() is going to be eliminated, so we must
propagate the IOMMU Device-TLB flush error up to IOMMU unmapping.
Signed-off-by: Quan Xu
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers
While IOMMU Device-TLB flush timed out, xen calls panic() at present.
However the existing panic() is going to be eliminated, so we must
propagate the IOMMU Device-TLB flush error up to IOMMU suspending.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Liu Jinsong
CC: Keir Fraser
CC: Andrew Cooper
hardware domain) is crashed, treated as a fatal error. Rollback can
be lighter weight.
This patch fixes the top level ones (this patch doesn't fix the leaf
ones but the next patch does).
Signed-off-by: Quan Xu
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulich
---
xen/arch/arm/
While IOMMU Device-TLB flush timed out, xen calls panic() at present.
However the existing panic() is going to be eliminated, so we must
propagate the IOMMU Device-TLB flush error up to ME phantom function
mapping and unmapping.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Kevin Tian
CC: Feng
igned-off-by: Quan Xu
---
xen/drivers/passthrough/pci.c | 6 +--
xen/drivers/passthrough/vtd/extern.h | 5 ++-
xen/drivers/passthrough/vtd/qinval.c | 71 ---
xen/drivers/passthrough/vtd/x86/ats.c | 11 +++---
xen/include/xen/pci.h | 1 +
5
effort invalidation even when an error
has occurred.
#patch3
* Remove stray blanks.
* Remove pointless local variable.
* Add comment.
* Add printk().
Quan Xu (3):
vt-d: add a timeout parameter for Queued Invalidation
vt-d: synchronize for Device-TLB flush one by one
vt-d:
__mustcheck.
That is the other callers of this routine (two or three levels up)
ignore the return code. This patch does not address this but the
other does.
Signed-off-by: Quan Xu
---
docs/misc/xen-command-line.markdown | 10 ++
xen/drivers/passthrough/vtd/qinval.c | 17 -
IOTLB/IEC/Context, i.e. moving synchronization into the function.
Since there is no user of a non-synced interface, we just rename
existing ones with _sync suffix.
Signed-off-by: Quan Xu
---
xen/drivers/passthrough/vtd/extern.h | 5 +--
xen/drivers/passthrough/vtd/qinval.c | 61
Propagate the IOMMU Device-TLB flush error up to IOMMU mapping.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers/passthrough/vtd/iommu.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/xen/drivers/passthrough
Propagate the IOMMU Device-TLB flush error up to IOMMU suspending.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Liu Jinsong
CC: Keir Fraser
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Stefano Stabellini
CC: Julien Grall
CC: Kevin Tian
CC: Feng Wu
---
xen/arch/x86/acpi/power.c
on a best effort basis, only throwing out an error message.
IOMMU unmapping should perhaps continue despite an error, in an attempt
to do best effort cleanup.
Signed-off-by: Quan Xu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Jun Nakajima
CC: Kevin Tian
CC: George Dunlap
-off-by: Quan Xu
CC: Kevin Tian
CC: Feng Wu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
---
xen/drivers/passthrough/vtd/iommu.c | 94 +
xen/include/asm-x86/iommu.h | 2 +-
2 files changed, 64 insertions(+), 32 deletions(-)
diff --git a/xen
patch set is also based on the discussion of 'abstract model of IOMMU
unmaping/mapping failures'
In this v3,
- best effort flushing when an error.
- adding __must_check.
Quan Xu (10):
vt-d: fix the IOMMU flush issue
IOMMU: handle IOMMU mapping and unmapping failures
IO
Propagate the IOMMU Device-TLB flush error up to IOMMU unmapping.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers/passthrough/vtd/iommu.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/xen/drivers
Propagate the IOMMU Device-TLB flush error up to the iommu_iotlb_flush{,_all}.
This patch fixes the top level ones (this patch doesn't fix the leaf ones but
the next patch does).
Signed-off-by: Quan Xu
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulich
CC: Kevin Tian
---
xen/arc
Propagate the IOMMU Device-TLB flush error up to the iommu_iotlb_flush{,_all}.
This patch fixes the leaf ones.
Signed-off-by: Quan Xu
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/arm/smmu.c | 12 +++-
xen/drivers
Propagate the IOMMU Device-TLB flush error up to ME phantom function
mapping and unmapping.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/vtd/extern.h | 3 ++-
xen/drivers/passthrough/vtd/iommu.c | 18 ++
xen/drivers
Treat IOMMU mapping and unmapping failures as a fatal to the domain
(with the exception of the hardware domain).
If IOMMU mapping and unmapping failed, crash the domain (with the
exception of the hardware domain) and propagate the error up to the
call trees.
Signed-off-by: Quan Xu
Reviewed-by
Propagate the IOMMU Device-TLB flush error up to the ept_set_entry(),
when VT-d shares EPT page table.
Signed-off-by: Quan Xu
CC: Jun Nakajima
CC: Kevin Tian
CC: George Dunlap
CC: Jan Beulich
CC: Andrew Cooper
CC: Feng Wu
---
xen/arch/x86/mm/p2m-ept.c | 3 ++-
xen/drivers
Treat IOMMU mapping and unmapping failures as a fatal to the domain
(with the exception of the hardware domain).
If IOMMU mapping and unmapping failed, crash the domain (with the
exception of the hardware domain) and propagate the error up to the
call trees.
Signed-off-by: Quan Xu
Reviewed-by
patch set is also based on the discussion of 'abstract model of IOMMU
unmaping/mapping failures'
Quan Xu (10):
vt-d: fix the IOMMU flush issue
IOMMU: handle IOMMU mapping and unmapping failures
IOMMU/MMU: enhance the call trees of IOMMU unmapping and mapping
vt-d: propagate IO
Propagate the IOMMU Device-TLB flush error up to IOMMU unmapping.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers/passthrough/vtd/iommu.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/xen/drivers
Propagate the IOMMU Device-TLB flush error up to IOMMU mapping.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers/passthrough/vtd/iommu.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/xen/drivers/passthrough
Propagate the IOMMU Device-TLB flush error up to the ept_set_entry(),
when VT-d shares EPT page table.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Jun Nakajima
CC: Kevin Tian
CC: George Dunlap
CC: Jan Beulich
CC: Andrew Cooper
CC: Feng Wu
---
xen/arch/x86/mm/p2m-ept.c | 3
Propagate the IOMMU Device-TLB flush error up to the iommu_iotlb_flush{,_all}.
This patch fixes the top level ones (this patch doesn't fix the leaf ones but
the next patch does).
Signed-off-by: Quan Xu
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulich
CC: Kevin Tian
---
xen/arc
Propagate the IOMMU Device-TLB flush error up to IOMMU suspending.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Liu Jinsong
CC: Keir Fraser
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Stefano Stabellini
CC: Julien Grall
CC: Kevin Tian
CC: Feng Wu
---
xen/arch/x86/acpi/power.c
Propagate the IOMMU Device-TLB flush error up to ME phantom function
mapping and unmapping.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/vtd/extern.h | 3 ++-
xen/drivers/passthrough/vtd/iommu.c | 18 ++
xen/drivers
Propagate the IOMMU Device-TLB flush error up to the iommu_iotlb_flush{,_all}.
This patch fixes the leaf ones.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/arm/smmu.c | 12
on a best effort basis, only throwing out an error message.
IOMMU unmapping should perhaps continue despite an error, in an attempt
to do best effort cleanup.
Signed-off-by: Quan Xu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Jun Nakajima
CC: Kevin Tian
CC: George Dunlap
-off-by: Quan Xu
CC: Kevin Tian
CC: Feng Wu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
---
xen/drivers/passthrough/vtd/iommu.c | 99 -
xen/include/asm-x86/iommu.h | 2 +-
2 files changed, 65 insertions(+), 36 deletions(-)
diff --git a/xen
hi,
If i didn't miss something, there is still no comment for this patch set.
I think this patch set is close to being ready. I hope this patch set is still
in your waiting-review list, but not missed.:)
Thanks in advance!!
Quan
On 22 Apr 2016, at 18:38:49 +0800, Quan Xu wrote:
&
Propagate the IOMMU Device-TLB flush error up to the ept_set_entry(),
when VT-d shares EPT page table.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Jun Nakajima
CC: Kevin Tian
CC: George Dunlap
CC: Jan Beulich
CC: Andrew Cooper
CC: Feng Wu
---
xen/arch/x86/mm/p2m-ept.c | 2 +-
xen
Propagate the IOMMU Device-TLB flush error up to ME phantom function
mapping and unmapping.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/vtd/extern.h | 3 ++-
xen/drivers/passthrough/vtd/iommu.c | 8
xen/drivers/passthrough/vtd
* change 'enum dev_power_type' to 'enum dev_power_saved'.
* change 'TYPE_*' to 'SAVED_*'
* drop '*_UNKNOWN' in enum.
* change 'should' to 'cannot' for comment.
* reorder in device_power_up().
* enhance logging mess
-off-by: Quan Xu
CC: Kevin Tian
CC: Feng Wu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
---
xen/drivers/passthrough/vtd/iommu.c | 101 ++--
xen/include/asm-x86/iommu.h | 2 +-
2 files changed, 75 insertions(+), 28 deletions(-)
diff --git a/xen
Propagate the IOMMU Device-TLB flush error up to the iommu_iotlb_flush{,_all}.
This patch fixes the top level ones (this patch doesn't fix the leaf ones but
the next patch does).
Signed-off-by: Quan Xu
Reviewed-by: Jan Beulich
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulic
Propagate the IOMMU Device-TLB flush error up to IOMMU suspending.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Liu Jinsong
CC: Keir Fraser
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Stefano Stabellini
CC: Julien Grall
CC: Kevin Tian
CC: Feng Wu
---
xen/arch/x86/acpi/power.c
Propagate the IOMMU Device-TLB flush error up to IOMMU mapping.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Suravee Suthikulpanit
CC: Stefano Stabellini
CC: Julien Grall
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
---
xen/drivers/passthrough/amd/pci_amd_iommu.c | 17
Propagate the IOMMU Device-TLB flush error up to IOMMU unmapping.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
Reviewed-by: Jan Beulich
CC: Stefano Stabellini
CC: Julien Grall
CC: Kevin Tian
CC: Feng Wu
CC: Jan Beulich
CC: Andrew Cooper
---
xen/drivers/passthrough/arm/smmu.c
rbose
than we'd really like, but it at least wouldn't outright flood the
console.
Signed-off-by: Quan Xu
Reviewed-by: Kevin Tian
CC: Jan Beulich
CC: Kevin Tian
---
xen/drivers/passthrough/iommu.c | 32 ++--
1 file changed, 30 insertions(+), 2 deletions(-)
d
on a best effort basis, only throwing out an error message.
IOMMU unmapping should perhaps continue despite an error, in an attempt
to do best effort cleanup.
Signed-off-by: Quan Xu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Jun Nakajima
CC: Kevin Tian
CC: George Dunlap
Propagate the IOMMU Device-TLB flush error up to the iommu_iotlb_flush{,_all}.
This patch fixes the leaf ones.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Stefano Stabellini
CC: Julien Grall
CC: Jan Beulich
CC: Kevin Tian
CC: Feng Wu
---
xen/drivers/passthrough/arm/smmu.c | 13
Prague.)
- enhance patch desciption.
- enhance Documentation and sysctls.
- test with IRQ_TIMINGS related code, which seems not working so far.
V1 -> V2:
- integrate the smart halt poll into paravirt code
- use idle_stamp instead of check_poll
- since it hard to get whether vcpu is the only task in p
several VM-exit/VM-entry cycles, VM-entry
for interrupts and VM-exit immediately. Also this becomes more
expensive than bare metal. Add a generic idle poll before enter
real idle path. When a reschedule event is pending, we can bypass
the real idle path.
Signed-off-by: Quan Xu
Signed-off-by: Yang Zhang
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we enter the real idle
state.
In virtualization, idle path includes several heavy operations
includes timer access(LAPIC timer or TSC deadline timer) which will
From: Quan Xu
Although smart idle poll has nothing to do with paravirt, it can
not bring any benifit to native. So we only enable it when Linux
runs as a KVM guest( also it can extend to other hypervisor like
Xen, HyperV and VMware).
Introduce per-CPU variable poll_duration_ns to control the
Prague.)
- enhance patch desciption.
- enhance Documentation and sysctls.
- test with IRQ_TIMINGS related code, which seems not working so far.
V1 -> V2:
- integrate the smart halt poll into paravirt code
- use idle_stamp instead of check_poll
- since it hard to get whether vcpu is the only task in p
From: Quan Xu
the last idle loop is from tick_nohz_idle_enter to tick_nohz_idle_exit.
Signed-off-by: Yang Zhang
Signed-off-by: Quan Xu
Cc: Frederic Weisbecker
Cc: Thomas Gleixner
Cc: Ingo Molnar
Cc: linux-ker...@vger.kernel.org
---
include/linux/tick.h |2 ++
kernel/time/tick
From: Yang Zhang
using smart idle poll to reduce the useless poll when system is idle.
Signed-off-by: Quan Xu
Signed-off-by: Yang Zhang
Cc: Paolo Bonzini
Cc: Thomas Gleixner
Cc: Ingo Molnar
Cc: "H. Peter Anvin"
Cc: x...@kernel.org
Cc: k...@vger.kernel.org
Cc: linux-ker...@vger.
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we enter the real idle
state.
In virtualization, idle path includes several heavy
On 2017/11/14 15:12, Wanpeng Li wrote:
2017-11-14 15:02 GMT+08:00 Quan Xu :
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we
On 2017/11/14 15:30, Juergen Gross wrote:
On 14/11/17 08:02, Quan Xu wrote:
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for pv_idle. .poll is called
in idle path which will poll for a while before we
On 2017/11/14 16:22, Wanpeng Li wrote:
2017-11-14 16:15 GMT+08:00 Quan Xu :
On 2017/11/14 15:12, Wanpeng Li wrote:
2017-11-14 15:02 GMT+08:00 Quan Xu :
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops
On 2017/11/14 18:27, Juergen Gross wrote:
On 14/11/17 10:38, Quan Xu wrote:
On 2017/11/14 15:30, Juergen Gross wrote:
On 14/11/17 08:02, Quan Xu wrote:
On 2017/11/13 18:53, Juergen Gross wrote:
On 13/11/17 11:06, Quan Xu wrote:
From: Quan Xu
So far, pv_idle_ops.poll is the only ops for
On 2017-11-16 06:03, Thomas Gleixner wrote:
On Wed, 15 Nov 2017, Peter Zijlstra wrote:
On Mon, Nov 13, 2017 at 06:06:02PM +0800, Quan Xu wrote:
From: Yang Zhang
Implement a generic idle poll which resembles the functionality
found in arch/. Provide weak arch_cpu_idle_poll function which
On 2017-11-16 16:45, Peter Zijlstra wrote:
On Wed, Nov 15, 2017 at 11:03:08PM +0100, Thomas Gleixner wrote:
If I understand the problem correctly then he wants to avoid the heavy
lifting in tick_nohz_idle_enter() in the first place, but there is already
an interesting quirk there which makes i
On 2017-11-16 17:53, Thomas Gleixner wrote:
On Thu, 16 Nov 2017, Quan Xu wrote:
On 2017-11-16 06:03, Thomas Gleixner wrote:
--- a/drivers/cpuidle/cpuidle.c
+++ b/drivers/cpuidle/cpuidle.c
@@ -210,6 +210,13 @@ int cpuidle_enter_state(struct cpuidle_device *dev,
struct cpuidle_driver *drv
On 2017-11-17 19:36, Thomas Gleixner wrote:
On Fri, 17 Nov 2017, Quan Xu wrote:
On 2017-11-16 17:53, Thomas Gleixner wrote:
That's just plain wrong. We don't want to see any of this PARAVIRT crap in
anything outside the architecture/hypervisor interfacing code which really
need
On 2017-11-16 17:45, Daniel Lezcano wrote:
On 16/11/2017 10:12, Quan Xu wrote:
On 2017-11-16 06:03, Thomas Gleixner wrote:
On Wed, 15 Nov 2017, Peter Zijlstra wrote:
On Mon, Nov 13, 2017 at 06:06:02PM +0800, Quan Xu wrote:
From: Yang Zhang
Implement a generic idle poll which resembles
On 2017-11-16 05:31, Konrad Rzeszutek Wilk wrote:
On Mon, Nov 13, 2017 at 06:05:59PM +0800, Quan Xu wrote:
From: Yang Zhang
Some latency-intensive workload have seen obviously performance
drop when running inside VM. The main reason is that the overhead
is amplified when running inside VM
on 2017/9/13 18:42, Wei Liu wrote:
Cc VTPM maintainers
On Sun, Sep 10, 2017 at 03:07:04PM -0400, Ronny Ko wrote:
Hi,
I'm a PhD student from Harvard University having a trouble in running
vTPM manager.
I cannot successfully launch vTPM manager in Xen, because when I
command "sudo xl create v
ile:/home/vtpm2/vmgr,hda,w"]
name="vtpmmgr"
iomem=["fed40,5"]
extra="tpm2"
try again, good luck
Quan
>
> On Wed, Sep 13, 2017 at 8:27 AM, Quan Xu wrote:
>
>>
>>
>> on 2017/9/13 18:42, Wei Liu wrote:
>>
>>&
Signed-off-by: Quan Xu
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 65c2447..97720a8 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -415,7 +415,7 @@ F: xen/include/asm-x86/hvm/monitor.h
VTPM
M: Daniel De Graaf
-M
If Device-TLB flush is timeout, we'll hide the target ATS device
and crash the domain owning this ATS device. If impacted domain
is hardware domain, just throw out a warning. The hidden device
will be disallowed to be further assigned to any domain.
Signed-off-by: Quan Xu
---
xen/dr
Signed-off-by: Quan Xu
---
docs/misc/xen-command-line.markdown | 7 +++
xen/drivers/passthrough/vtd/qinval.c | 15 +--
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/docs/misc/xen-command-line.markdown
b/docs/misc/xen-command-line.markdown
index a565c1b
ray blanks inside the parentheses.
* Don't iterate over pdev-s without holding that lock, and hold pcidevs_lock
for pdev-s list.
* Print SBDF in canonical :bb:dd.f form.
* Handle 'ret'/'rc' variables in the same function, and remove the pointless
rc.
Quan Xu (5
Signed-off-by: Quan Xu
---
xen/arch/x86/domctl.c | 8 +--
xen/arch/x86/hvm/vmsi.c | 4 +-
xen/arch/x86/irq.c | 8 +--
xen/arch/x86/msi.c | 16 ++---
xen/arch/x86/pci.c | 4
Signed-off-by: Quan Xu
---
xen/arch/x86/acpi/power.c | 14 +-
xen/arch/x86/mm.c | 13 -
xen/arch/x86/mm/p2m-ept.c | 10 +-
xen/arch/x86/mm/p2m-pt.c | 12 ++--
xen/common/grant_table.c
Signed-off-by: Quan Xu
---
xen/arch/x86/mm/p2m-ept.c | 2 +-
xen/drivers/passthrough/amd/iommu_init.c | 12 ++-
xen/drivers/passthrough/amd/pci_amd_iommu.c | 2 +-
xen/drivers/passthrough/arm/smmu.c| 10 ++-
xen/drivers/passthrough/iommu.c
Cooper
CC: Suravee Suthikulpanit
CC: Aravind Gopalakrishnan
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
Quan Xu (2):
IOMMU/spinlock: Fix a bug found in AMD IOMMU initialization.
IOMMU/spinlock: Make the pcidevs_lock a recursive one
xen/arch/x86/domctl.c | 8 +--
xen/ar
at least it is not necessary to disable interrupts, or
save/restore interrupt flag.
In order to fix this, we can use just plain spin{_lock(),_unlock()},
instead of spin_lock{_irqsave(),_irqrestore()}.
Signed-off-by: Quan Xu
CC: Suravee Suthikulpanit
CC: Aravind Gopalakrishnan
CC: Dario Faggioli
Signed-off-by: Quan Xu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Aravind Gopalakrishnan
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
---
xen/arch/x86/domctl.c | 8 +--
xen/arch/x86/hvm/vmsi.c | 4 +-
xen
lock a recursive one.
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
--Changes in v2:
* Enhance patch1/2 changelog.
* Rebase against 1bd52e1fd66c4.
Quan Xu (2):
IOMMU/spinlock: Fix a bug found in AMD IOMMU ini
Signed-off-by: Quan Xu
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
---
xen/arch/x86/domctl.c | 8 +--
xen/arch/x86/hvm/vmsi.c | 4 +-
xen/arch/x86/irq.c
ed, during initialization, when iommu_setup() (which then end
up calling set_iommu_interrupt_handler()) is called.
In order to fix this, we can use just plain spin_lock() and spin_unlock(),
instead of spin_lock_irqsave() and spin_unlock_irqrestore().
Signed-off-by: Quan Xu
Reviewed-by: Dario Faggioli
C
function is invoked, so we're sure consistency around
pcidevs_lock can be guaranteed after this fix.
Signed-off-by: Quan Xu
Reviewed-by: Dario Faggioli
CC: Suravee Suthikulpanit
CC: Dario Faggioli
CC: Jan Beulich
---
xen/drivers/passthrough/amd/iommu_init.c | 5 ++---
1 file chang
oli
--Changes in v3:
* Enhance patch1/2 changelog.
Quan Xu (2):
IOMMU/spinlock: Fix a bug found in AMD IOMMU initialization
IOMMU/spinlock: Make the pcidevs_lock a recursive one
xen/arch/x86/domctl.c | 8 +--
xen/arch/x86/hvm/vmsi.c | 4 +-
xen
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
---
xen/arch/x86/domctl.c | 8 +--
xen/arch/x86/hvm/vmsi.c | 4 +-
xen/arch
med out.
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
--Changes in v4:
* Enhance changelogs.
* Rebase against 0aa1330aac92.
Quan Xu (2):
IOMMU/spinlock: Fix a bug found in AMD IOMMU initialization
IOMM
t has been
enabled when this function is invoked, so we're sure consistency around
pcidevs_lock can be guaranteed after this fix.
Signed-off-by: Quan Xu
Reviewed-by: Dario Faggioli
CC: Suravee Suthikulpanit
CC: Dario Faggioli
CC: Jan Beulich
CC: Kevin Tian
---
xen/drivers/passt
The pcidevs_lock is going to be recursively taken for hiding ATS
device, when VT-d Device-TLB flush timed out.
Signed-off-by: Quan Xu
Acked-by: Kevin Tian
CC: Keir Fraser
CC: Jan Beulich
CC: Andrew Cooper
CC: Suravee Suthikulpanit
CC: Feng Wu
CC: Kevin Tian
CC: Dario Faggioli
---
xen
We confirmed with VT-d hardware team that 1ms is large enough for IOMMU
internal flush. So We can change the DMAR_OPERATION_TIMEOUT from 1000 ms
to 1 ms.
Signed-off-by: Quan Xu
CC: Jan Beulich
CC: Andrew Cooper
CC: Feng Wu
CC: Kevin Tian
---
xen/drivers/passthrough/vtd/dmar.h | 2 +-
1
1 - 100 of 345 matches
Mail list logo