On 11/07/17 01:37 -0700, Jan Beulich wrote:
> >>> On 07.11.17 at 09:23, wrote:
> >> From: Jan Beulich [mailto:jbeul...@suse.com]
> >> Sent: Tuesday, November 7, 2017 4:09 PM
> >> >>> On 07.11.17 at 02:37, wrote:
> >> >> From: Jan Beulich [mailto:jbeul...@suse.com]
> >> >> Sent: Monday, November 6
On 11/03/17 15:40 +0800, Chao Peng wrote:
>
> > +/*
> > + * Interface for NVDIMM management.
> > + */
> > +
> > +struct xen_sysctl_nvdimm_op {
> > +uint32_t cmd; /* IN: XEN_SYSCTL_nvdimm_*; none is implemented
> > yet. */
> > +uint32_t pad; /* IN: Always zero. */
>
> If alignment is the o
On 11/03/17 14:51 +0800, Chao Peng wrote:
> On Mon, 2017-09-11 at 12:37 +0800, Haozhong Zhang wrote:
> > ... to avoid the inference with the PMEM driver and management
> > utilities in Dom0.
> >
> > Signed-off-by: Haozhong Zhang
> > ---
> > Cc: Jan Beuli
On 11/03/17 14:15 +0800, Chao Peng wrote:
>
> > +static void __init acpi_nfit_register_pmem(struct acpi_nfit_desc
> > *desc)
> > +{
> > +struct nfit_spa_desc *spa_desc;
> > +struct nfit_memdev_desc *memdev_desc;
> > +struct acpi_nfit_system_address *spa;
> > +unsigned long smfn, em
On 11/03/17 13:58 +0800, Chao Peng wrote:
>
> > +#ifdef CONFIG_NVDIMM_PMEM
> > +static void __init init_frametable_pmem_chunk(unsigned long s,
> > unsigned long e)
> > +{
> > +static unsigned long pmem_init_frametable_mfn;
> > +
> > +ASSERT(!((s | e) & (PAGE_SIZE - 1)));
> > +
> > +if
On 10/27/17 14:49 +0800, Chao Peng wrote:
> On Mon, 2017-09-11 at 12:37 +0800, Haozhong Zhang wrote:
> > The current check refuses the hot-plugged memory that falls in one
> > unused PDX group, which should be allowed.
>
> Looks reasonable to me. The only thing I can think
On 10/27/17 11:26 +0800, Chao Peng wrote:
> On Mon, 2017-09-11 at 12:37 +0800, Haozhong Zhang wrote:
> > Overview
> > ==
> >
> > > (RFC v2 can be found at https://lists.xen.org/archives/html/xen-
> devel/2017-03/msg02401.html)
> >
> >
On 10/17/17 13:45 +0200, Paolo Bonzini wrote:
> On 14/10/2017 00:46, Stefano Stabellini wrote:
> > On Fri, 13 Oct 2017, Jan Beulich wrote:
> > On 13.10.17 at 13:13, wrote:
> >>> To Jan, Andrew, Stefano and Anthony,
> >>>
> >>> what do you think about allowing QEMU to build the entire guest ACP
On 10/13/17 10:44 +0200, Igor Mammedov wrote:
> On Fri, 13 Oct 2017 15:53:26 +0800
> Haozhong Zhang wrote:
>
> > On 10/12/17 17:45 +0200, Paolo Bonzini wrote:
> > > On 12/10/2017 14:45, Haozhong Zhang wrote:
> > > > Basically, QEMU builds two ROMs
On 10/12/17 13:39 -0400, Konrad Rzeszutek Wilk wrote:
> On Thu, Oct 12, 2017 at 08:45:44PM +0800, Haozhong Zhang wrote:
> > On 10/10/17 12:05 -0400, Konrad Rzeszutek Wilk wrote:
> > > On Tue, Sep 12, 2017 at 11:15:09AM +0800, Haozhong Zhang wrote:
> > > > On
On 10/12/17 17:45 +0200, Paolo Bonzini wrote:
> On 12/10/2017 14:45, Haozhong Zhang wrote:
> > Basically, QEMU builds two ROMs for guest, /rom@etc/acpi/tables and
> > /rom@etc/table-loader. The former is unstructured to guest, and
> > contains all data of guest
On 10/10/17 12:05 -0400, Konrad Rzeszutek Wilk wrote:
> On Tue, Sep 12, 2017 at 11:15:09AM +0800, Haozhong Zhang wrote:
> > On 09/11/17 11:52 -0700, Stefano Stabellini wrote:
> > > CC'ing xen-devel, and the Xen tools and x86 maintainers.
> > >
> > >
it's still better to follow the specification.
Fixes: ae05fd3912b ("VT-d: use qword MMIO access for MSI address writes")
Reviewed-by: Roger Pau Monné
Signed-off-by: Haozhong Zhang
---
Changes in v2:
* Explain in commit message and code comment why not updating DMAR_FEUADDR_REG
whe
On 09/18/17 02:30 -0600, Jan Beulich wrote:
> >>> On 18.09.17 at 10:18, wrote:
> >> From: Jan Beulich [mailto:jbeul...@suse.com]
> >> Sent: Monday, September 11, 2017 6:03 PM
> >>
> >> >>> On 11.09.17 at 08:00, wrote:
> >> > The 64-bit DMAR fault address is composed of two 32 bits registers
> >
On 09/11/17 11:52 -0700, Stefano Stabellini wrote:
> CC'ing xen-devel, and the Xen tools and x86 maintainers.
>
> On Mon, 11 Sep 2017, Igor Mammedov wrote:
> > On Mon, 11 Sep 2017 12:41:47 +0800
> > Haozhong Zhang wrote:
> >
> > > This is the QEMU part p
On 09/11/17 10:38 +0100, Roger Pau Monné wrote:
> On Mon, Sep 11, 2017 at 02:00:48PM +0800, Haozhong Zhang wrote:
> > The 64-bit DMAR fault address is composed of two 32 bits registers
> > DMAR_FEADDR_REG and DMAR_FEUADDR_REG. According to VT-d spec:
> > "Software is
The entire file of mctelem.c is in Linux coding style, so do not
change the coding style and only remove trailing spaces and extra
blank lines.
Signed-off-by: Haozhong Zhang
---
xen/arch/x86/cpu/mcheck/mctelem.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/xen/arch
mctelem.c uses the tab indention. Add an emacs block to avoid mixed
indention styles in certain editors.
Signed-off-by: Haozhong Zhang
---
xen/arch/x86/cpu/mcheck/mctelem.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/xen/arch/x86/cpu/mcheck/mctelem.c
b/xen/arch/x86/cpu
Signed-off-by: Haozhong Zhang
---
xen/arch/x86/cpu/mcheck/vmce.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/xen/arch/x86/cpu/mcheck/vmce.c b/xen/arch/x86/cpu/mcheck/vmce.c
index 9c460c7c6c..e07cd2feef 100644
--- a/xen/arch/x86/cpu/mcheck/vmce.c
+++ b/xen/arch/x86
Signed-off-by: Haozhong Zhang
---
xen/arch/x86/cpu/mcheck/mce_intel.c | 262 +++-
1 file changed, 142 insertions(+), 120 deletions(-)
diff --git a/xen/arch/x86/cpu/mcheck/mce_intel.c
b/xen/arch/x86/cpu/mcheck/mce_intel.c
index 4c001b407f..e5dd956a24 100644
--- a
Some files in xen/arch/x86/cpu/mcheck use mixed coding styles. Unify
them to Xen hypervisor coding style. For mctelem.c which is entirely
in one coding style, only remove extra blanks.
No functional change is introduced.
Haozhong Zhang (6):
x86/mce: adapt mce.{c,h} to Xen hypervisor coding
Signed-off-by: Haozhong Zhang
---
xen/arch/x86/cpu/mcheck/mce.c | 536 +++---
xen/arch/x86/cpu/mcheck/mce.h | 21 +-
2 files changed, 311 insertions(+), 246 deletions(-)
diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
index
Signed-off-by: Haozhong Zhang
---
xen/arch/x86/cpu/mcheck/mcaction.c | 74 +-
1 file changed, 41 insertions(+), 33 deletions(-)
diff --git a/xen/arch/x86/cpu/mcheck/mcaction.c
b/xen/arch/x86/cpu/mcheck/mcaction.c
index f959bed2cb..e42267414e 100644
--- a/xen
arately in order to update a 64-bit fault address,
rather than a 64-bit write to DMAR_FEADDR_REG.
Though I haven't seen any errors caused by such one 64-bit write on
real machines, it's still better to follow the specification.
Signed-off-by: Haozhong Zhang
---
xen/drivers/passthr
On 09/10/17 22:10 -0700, Dan Williams wrote:
> On Sun, Sep 10, 2017 at 9:37 PM, Haozhong Zhang
> wrote:
> > The kernel NVDIMM driver and the traditional NVDIMM management
> > utilities in Dom0 does not work now. 'xen-ndctl' is added as an
> > alternatively, which
Xen relies on QEMU to build the guest NFIT.
Signed-off-by: Haozhong Zhang
---
Cc: "Michael S. Tsirkin"
Cc: Igor Mammedov
Cc: Xiao Guangrong
---
hw/acpi/nvdimm.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/hw/acpi/nvdimm.c b/hw/acpi/nvdimm.c
index 9121a766c6..d9cdc5a
QEMU to labels is led by a label size check,
let's not intiailize nvdimm->label_data if the label size is 0.
Signed-off-by: Haozhong Zhang
---
Cc: Xiao Guangrong
Cc: "Michael S. Tsirkin"
Cc: Igor Mammedov
---
hw/mem/nvdimm.c | 10 +-
1 file changed, 9 insertions(+), 1
If the machine option 'nvdimm' is enabled and QEMU is used as Xen
device model, construct the guest NFIT and ACPI namespace devices of
vNVDIMM and copy them into guest memory.
Signed-off-by: Haozhong Zhang
---
Cc: "Michael S. Tsirkin"
Cc: Igor Mammedov
Cc: Paolo Bonzini
C
Xen relies on QEMU to build the ACPI namespace device of vNVDIMM for
Xen guest.
Signed-off-by: Haozhong Zhang
---
Cc: "Michael S. Tsirkin"
Cc: Igor Mammedov
Cc: Xiao Guangrong
---
hw/acpi/nvdimm.c | 55 ++-
1 file changed, 38
nd a hotplug
memory region for Xen guest, in order to make the existing nvdimm
device plugging path work on Xen.
Patch 4 - 10 build and cooy NFIT from QEMU to Xen guest, when QEMU is
used as the Xen device model.
Haozhong Zhang (10):
nvdimm: do not intiailize nvdimm->label_data if label size
.
Signed-off-by: Haozhong Zhang
---
Cc: Paolo Bonzini
Cc: Richard Henderson
CC: Eduardo Habkost
Cc: "Michael S. Tsirkin"
Cc: Stefano Stabellini
Cc: Anthony Perard
---
hw/i386/pc.c | 86 ---
hw/i386/xen/xen-hvm.c | 2 ++
include/hw
Probe the base address and the length of guest ACPI buffer reserved
for copying ACPI from QEMU.
Signed-off-by: Haozhong Zhang
---
Cc: Stefano Stabellini
cc: Anthony Perard
Cc: "Michael S. Tsirkin"
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
---
hw/i386/xen/xen-
cates it's the body of a
namespace device, and its device name is indicated by $name in
the XenStore path.
- offset offset in byte from the beginning of above guest memory region
- length size in byte of the copied ACPI
Signed-off-by: Haozhong Zhang
---
Cc: Stefano Stabellini
C
Xen currently does not support vNVDIMM hotplug and always sets QEMU
option "maxmem" to be just enough for RAM and vNVDIMM, so it's not
necessary to build _FIT method when QEMU is used as Xen device model.
Signed-off-by: Haozhong Zhang
---
Cc: "Michael S. Tsirkin"
Cc
x1:
-object memory-backend-xen,id=mem1,host-addr=0x1,size=4G
-device nvdimm,id=nvdimm1,memdev=mem1
Signed-off-by: Haozhong Zhang
---
Cc: Eduardo Habkost
Cc: Igor Mammedov
Cc: "Michael S. Tsirkin"
---
backends/Makefile.objs | 1 +
backends
Xen relies on QEMU to build guest ACPI for NVDIMM. However, no fw_cfg
is created when QEMU is used as Xen device model, so QEMU should avoid
using fw_cfg on Xen.
Signed-off-by: Haozhong Zhang
---
Cc: Xiao Guangrong
Cc: "Michael S. Tsirkin"
Cc: Igor Mammedov
---
hw/acpi/nv
device model.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Ian Jackson
Cc: Wei Liu
---
tools/libacpi/build.c | 93 +
tools/libacpi/libacpi.h | 5 +++
2 files changed, 98 insertions(+)
diff --git a/tools/libacpi/build.c b/tools
efore.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/libxl/libxl_create.c | 4 +++-
tools/libxl/libxl_qmp.c| 9 ++---
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
index 9123585b52..3e05e
A new xl domain configuration
vnvdimms = [ 'type=mfn, backend=START_PMEM_MFN, nr_pages=N', ... ]
is added to specify the virtual NVDIMM devices backed by the specified
host PMEM pages. As the kernel PMEM driver does not work in Dom0 now,
we have to specify MFNs.
Signed-off-by: Haoz
mm1,memdev=mem1
...
in which,
- NR_SLOTS is the number of entries in vnvdimms + 1,
- MEM_SIZE is the total size of all RAM and NVDIMM devices,
- PMEM0_ADDR = PMEM0_MFN * 4096,
- PMEM0_SIZE = N0 * 4096,
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/libxl/libxl
libacpi needs to access information placed in XenStore in order to
load ACPI built by the device model.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: Ian Jackson
Cc: Wei Liu
---
tools/firmware/hvmloader/util.c | 52 +++
tools
It is used by libacpi to generate SSDTs from ACPI namespace devices
built by the device model.
Signed-off-by: Haozhong Zhang
---
Cc: Andrew Cooper
Cc: Jan Beulich
Cc: Ian Jackson
Cc: Wei Liu
---
tools/firmware/hvmloader/Makefile | 3 +-
tools/libacpi/aml_build.c | 326
If the option '--mgmt' is present, the command 'list' will list all
PMEM regions for management usage.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/misc/xen-ndctl.c | 39 +--
1 file changed, 37 insertions(+),
Allow XEN_SYSCTL_nvdimm_pmem_get_regions to return a list of data PMEM
regions.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools/libxc/xc_misc.c | 8
xen/common/pmem.c | 46
The location of ACPI blobs passed from device modeil is offered in
guest physical address. libacpi needs to convert the guest physical
address to guest virtual address before it can access those ACPI
blobs.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: Ian Jackson
Cc
ACPI tables built by Xen.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: Ian Jackson
Cc: Wei Liu
---
tools/firmware/hvmloader/util.c | 15 +++
tools/libacpi/acpi2_0.h | 2 +
tools/libacpi/build.c | 237
Allow XEN_SYSCTL_nvdimm_pmem_get_regions_nr to return the number of
management PMEM regions.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools/libxc/xc_misc.c | 4 +++-
xen/common/pmem.c | 4
2 files changed, 7 insertions
-acpi/{address, length}. An xl config
"dm_acpi_pages = N" is added to specify the number of reserved guest
memory pages.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/libxc/include/xc_dom.h| 1 +
tools/libxc/xc_dom_x86.c
The base guest physical address of each vNVDIMM device is decided by
QEMU. Add a QMP callback to get the base address from QEMU and query Xen
hypervisor to map host PMEM pages to that address.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/libxl/libxl_qmp.c | 130
A new step RELMEM_pmem is added and taken before RELMEM_xen to release
all PMEM pages mapped to a HVM domain.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: George Dunlap
---
xen/arch/x86/domain.c| 32
xen/arch/x86/mm.c
Replace pdx_to_page(pfn_to_pdx(pfn)) by mfn_to_page(pfn), which is
identical to the former.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/x86_64/mm.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/xen/arch/x86/x86_64/mm.c b
... to avoid the inference with the PMEM driver and management
utilities in Dom0.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: Gang Wei
Cc: Shane Wang
---
xen/arch/x86/acpi/power.c | 7 +++
xen/arch/x86/dom0_build.c | 5 +
xen/arch/x86/shutdown.c | 3
The AML builder added later needs to allocate contiguous memory across
multiple calls to mem_ops.alloc(). Therefore, it needs to know the
minimal alignment used by mem_ops.alloc().
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Cc: Ian Jackson
Cc: Wei Liu
---
tools
allocated pages can be reclaimed or has no effect out of
memory_add_common(), if memory_add_common() fails.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/x86_64/mm.c | 83
1 file changed, 69 insertions
pages before the their
actual resource is allocated, implies bugs in Xen. Therefore, the
read-only mapping is used here to make those bugs explicit.
Signed-off-by: Haozhong Zhang
---
Cc: Andrew Cooper
Cc: George Dunlap
Cc: Jan Beulich
---
xen/arch/x86/mm.c | 117
This hypercall will be used by device models to map host PMEM pages to
guest.
Signed-off-by: Haozhong Zhang
---
Cc: Daniel De Graaf
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
CC: Jan Beulich
---
tools/flask/policy/modules/xen.if | 2 +-
tools/libxc/include/xenctrl.h | 17
management PMEM region should not be
mapped to guest.
PMEM pages are not added in any Xen or domain heaps. A new flag
PGC_pmem_page is used to indicate whether a page is from PMEM and
avoid returning PMEM pages to heaps.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
This command is to query Xen hypervisor to setup the specified PMEM
range for guest data usage.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/misc/xen-ndctl.c | 36
1 file changed, 36 insertions(+)
diff --git a/tools/misc/xen
Add CONFIG_PMEM to enable NVDIMM persistent memory support. By
default, it's N.
Signed-off-by: Haozhong Zhang
---
Cc: Andrew Cooper
Cc: George Dunlap
Cc: Ian Jackson
Cc: Jan Beulich
Cc: Konrad Rzeszutek Wilk
Cc: Stefano Stabellini
Cc: Tim Deegan
Cc: Wei Liu
---
xen/common/Kconfi
XEN_SYSCTL_nvdimm_pmem_get_regions, which is a command of hypercall
XEN_SYSCTL_nvdimm_op, is to get a list of PMEM regions of specified
type (see PMEM_REGION_TYPE_*).
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools/libxc/include
If the option '--data' is present, the command 'list' will list all
PMEM regions for guest data usage.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/misc/xen-ndctl.c | 40 ++--
1 file changed, 38 insertions(+),
Allow XEN_SYSCTL_nvdimm_pmem_get_regions_nr to return the number of
data PMEM regions.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools/libxc/xc_misc.c | 3 ++-
xen/common/pmem.c | 4
2 files changed, 6 insertions(+), 1
The kernel NVDIMM driver and the traditional NVDIMM management
utilities in Dom0 does not work now. 'xen-ndctl' is added as an
alternatively, which manages NVDIMM via Xen hypercalls.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
.gitignore | 1 +
pmem_populate() is added to map the specifed data PMEM pages to a HVM
domain. No called is added in this commit.
Signed-off-by: Haozhong Zhang
---
Cc: Andrew Cooper
Cc: Jan Beulich
---
xen/common/domain.c | 3 ++
xen/common/pmem.c | 141
has enough knowledge of the mapping status.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/x86_64/mm.c | 51 ++--
1 file changed, 28 insertions(+), 23 deletions(-)
diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/
Register valid PMEM regions probed via NFIT to Xen hypervisor. No
frametable and M2P table are created for those PMEM regions at this
stage.
Signed-off-by: Haozhong Zhang
---
Cc: Andrew Cooper
Cc: Jan Beulich
---
xen/common/Makefile | 1 +
xen/common/pmem.c | 130
Allow XEN_SYSCTL_nvdimm_pmem_get_regions to return a list of
management PMEM regions.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools/libxc/xc_misc.c | 8
xen/common/pmem.c | 45
The current check refuses the hot-plugged memory that falls in one
unused PDX group, which should be allowed.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/x86_64/mm.c | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/xen/arch/x86
XEN_SYSCTL_nvdimm_pmem_get_rgions_nr, which is a command of hypercall
XEN_SYSCTL_nvdimm_op, is to get the number of PMEM regions of the
specified type (see PMEM_REGION_TYPE_*).
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools/libxc
Allow the command XEN_SYSCTL_nvdimm_pmem_setup of hypercall
XEN_SYSCTL_nvdimm_op to setup a PMEM region for guest data
usage. After the setup, that PMEM region will be able to be
mapped to guest address space.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
Cc: Andrew Cooper
Cc
This command is to query Xen hypervisor to setup the specified PMEM
range for the management usage.
Signed-off-by: Haozhong Zhang
---
Cc: Ian Jackson
Cc: Wei Liu
---
tools/misc/xen-ndctl.c | 45 +
1 file changed, 45 insertions(+)
diff --git a/tools
Overview
==
(RFC v2 can be found at
https://lists.xen.org/archives/html/xen-devel/2017-03/msg02401.html)
Well, this RFC v3 changes and inflates a lot from previous versions.
The primary changes are listed below, most of which are to simplify
the first implementation and avoid add
XEN_SYSCTL_nvdimm_op will support a set of sub-commands to manage the
physical NVDIMM devices. This commit just adds the framework for this
hypercall, and does not implement any sub-commands.
Signed-off-by: Haozhong Zhang
---
Cc: Daniel De Graaf
Cc: Andrew Cooper
Cc: Jan Beulich
---
tools
Separate the revertible part of memory_add_common(), which will also
be used in PMEM management. The separation will ease the failure
recovery in PMEM management. Several coding-style issues in the
touched code are fixed as well.
No functional change is introduced.
Signed-off-by: Haozhong Zhang
those failure are left out of Xen (e.g. left
to the firmware or other management utilities on the bare metal).
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/acpi/boot.c | 4 ++
xen/drivers/acpi/nfit.c | 153
Two options are supported by command 'list'. '--raw' indicates to list
all PMEM regions detected by Xen hypervisor, which can be later
configured for future usages. '--all' indicates all other
options (i.e. --raw and future options).
Signed-off-by: Haozhong Zhang
--
+Hongbo Wang from Intel GPU virtualization team
On 08/17/17 06:36 +, Asharaf Perinchikkal wrote:
> Hi All,
>
> We are trying to do graphical virtualization in intel® Atom™
> E3845(MinnowBoard Turbot Quad-Core board) using xen.
>
> Is it possible to do graphical virtualization in intel® Atom
+Hongbo Wang from Intel GPU virtualization team
On 08/10/17 22:47 +, Monisha Barooah wrote:
> Hi Everyone,
> I am currently exploring on bringing up XenGT for an Intel embedded board.
>
> I came across this document relating to bringing up XenGT for the Sandy
> Bridge/Ivy Bridge/Haswell plat
+Hongbo from Intel GPU virtualization team
On 08/02/17 09:41 +, Asharaf Perinchikkal wrote:
> Is possible to achieve GPU virtualization in Intel® Atom using para
> virtualization?
>
> From: Roger Pau Monné [roger@citrix.com]
> Sent: Wednesday, Augu
On 07/12/17 09:25 -0400, Konrad Rzeszutek Wilk wrote:
> On Wed, Jul 12, 2017 at 10:04:39AM +0800, Haozhong Zhang wrote:
> > Though XEN_MC_inject_v2 allows injecting MC# to specified CPUs, the
> > current xc_mca_op() does not use this feature and not provide an
> > interface to
On 07/12/17 09:26 -0400, Konrad Rzeszutek Wilk wrote:
> On Wed, Jul 12, 2017 at 10:04:40AM +0800, Haozhong Zhang wrote:
> > If option '-l' or '--lmce' is specified and the host supports LMCE,
> > xen-mceinj will inject LMCE to CPU specified by '
If option '-l' or '--lmce' is specified and the host supports LMCE,
xen-mceinj will inject LMCE to CPU specified by '-c' (or CPU0 if '-c'
is not present).
Signed-off-by: Haozhong Zhang
Acked-by: Wei Liu
---
Cc: Ian Jackson
Cc: Wei Liu
---
tool
Signed-off-by: Haozhong Zhang
Reviewed-by: Jan Beulich
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/cpu/mcheck/mce.c | 24 +++-
xen/include/public/arch-x86/xen-mca.h | 1 +
2 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/xen/arch/x86/cpu
If MCG_LMCE_P is present in guest MSR_IA32_MCG_CAP, then allow guest
to read/write MSR_IA32_MCG_EXT_CTL.
Signed-off-by: Haozhong Zhang
Reviewed-by: Jan Beulich
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/cpu/mcheck/vmce.c | 34 +-
xen/arch
Though XEN_MC_inject_v2 allows injecting MC# to specified CPUs, the
current xc_mca_op() does not use this feature and not provide an
interface to callers. This commit add a new xc_mca_op_inject_v2() that
receives a cpumap providing the set of target CPUs.
Signed-off-by: Haozhong Zhang
Acked-by
to reflect the extension.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Changes in v9:
* Rename "param" to "field" in macro VMCE_SIZE().
* Use min(..., sizeof(evc->vmce)) to get the size of vMCE parameters.
---
xen
Changes in v9:
* Minor updates in patch 1 per Jan's comments.
* Collect Jan's R-b in patch 2.
Haozhong Zhang (7):
[M ] x86/domctl: generalize the restore of vMCE parameters
[ R ] x86/vmce: emulate MSR_IA32_MCG_EXT_CTL
[ R ] x86/vmce: enable injecting LMCE to guest on
If LMCE is supported by host and ' mca_caps = [ "lmce" ] ' is present
in xl config, the LMCE capability will be exposed in guest MSR_IA32_MCG_CAP.
By default, LMCE is not exposed to guest so as to keep the backwards migration
compatibility.
Signed-off-by: Haozhong Zhang
Revi
Inject LMCE to guest if the host MCE is LMCE and the affected vcpu is
known. Otherwise, broadcast MCE to all vcpus on Intel host.
Signed-off-by: Haozhong Zhang
Reviewed-by: Jan Beulich
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/cpu/mcheck/mcaction.c | 23
Changes in v8:
* Adjust the generalization of setting vMCE parameters in patch 1&2.
* Other patches are not changed.
Haozhong Zhang (7):
[M ] 1/7 x86/domctl: generalize the restore of vMCE parameters
[ M ] 2/7 x86/vmce: emulate MSR_IA32_MCG_EXT_CTL
[ R ] 3/7 x86/vmce: enable injec
to reflect the extension.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Changes in v8:
* Rename valid_vmce_size[] tp valid_sizes[].
* Use offsetof() + sizeof() in valid_sizes[] and macroize it.
* Remove element 0 from valid_sizes[].
* int i --> unsigned int i
* Leav
If MCG_LMCE_P is present in guest MSR_IA32_MCG_CAP, then allow guest
to read/write MSR_IA32_MCG_EXT_CTL.
Signed-off-by: Haozhong Zhang
---
Cc: Jan Beulich
Cc: Andrew Cooper
Changes in v8:
* Use offsetof() + sizeof() (VMCE_SIZE()) in valid_sizes[].
---
xen/arch/x86/cpu/mcheck/vmce.c
If LMCE is supported by host and ' mca_caps = [ "lmce" ] ' is present
in xl config, the LMCE capability will be exposed in guest MSR_IA32_MCG_CAP.
By default, LMCE is not exposed to guest so as to keep the backwards migration
compatibility.
Signed-off-by: Haozhong Zhang
Revi
Inject LMCE to guest if the host MCE is LMCE and the affected vcpu is
known. Otherwise, broadcast MCE to all vcpus on Intel host.
Signed-off-by: Haozhong Zhang
Reviewed-by: Jan Beulich
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/cpu/mcheck/mcaction.c | 23
Signed-off-by: Haozhong Zhang
Reviewed-by: Jan Beulich
---
Cc: Jan Beulich
Cc: Andrew Cooper
---
xen/arch/x86/cpu/mcheck/mce.c | 24 +++-
xen/include/public/arch-x86/xen-mca.h | 1 +
2 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/xen/arch/x86/cpu
If option '-l' or '--lmce' is specified and the host supports LMCE,
xen-mceinj will inject LMCE to CPU specified by '-c' (or CPU0 if '-c'
is not present).
Signed-off-by: Haozhong Zhang
Acked-by: Wei Liu
---
Cc: Ian Jackson
Cc: Wei Liu
---
tool
Though XEN_MC_inject_v2 allows injecting MC# to specified CPUs, the
current xc_mca_op() does not use this feature and not provide an
interface to callers. This commit add a new xc_mca_op_inject_v2() that
receives a cpumap providing the set of target CPUs.
Signed-off-by: Haozhong Zhang
Acked-by
If LMCE is supported by host and ' mca_caps = [ "lmce" ] ' is present
in xl config, the LMCE capability will be exposed in guest MSR_IA32_MCG_CAP.
By default, LMCE is not exposed to guest so as to keep the backwards migration
compatibility.
Signed-off-by: Haozhong Zhang
Revi
v7 is based on staging branch and only contains the remaining patches.
Changes in v7:
* (Patch 1) Introduce a general way to restore vMCE parameters.
* (Patch 2) Adapt to the change in patch 1.
* Other patch 3 - 7 remain the same as v5 patch 7 - 11.
Haozhong Zhang (7):
[N ] 1/7 x86/domctl
If option '-l' or '--lmce' is specified and the host supports LMCE,
xen-mceinj will inject LMCE to CPU specified by '-c' (or CPU0 if '-c'
is not present).
Signed-off-by: Haozhong Zhang
Acked-by: Wei Liu
---
Cc: Ian Jackson
Cc: Wei Liu
---
tool
1 - 100 of 693 matches
Mail list logo