Port-xen archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[PATCH v3 0/7] Display IO topology when PXM data is available (plus some cleanup)
Changes in v3:
* Added patch #1 to more consistently define nodes as a u8 and properly
use NUMA_NO_NODE.
* Make changes to xen_sysctl_numainfo, similar to those made to
xen_sysctl_topologyinfo. (Q: I kept both sets of changes in the same
patch #3 to avoid bumping interface version twice. Perhaps it's better
to split it into two?)
* Instead of copying data for each loop index allocate a buffer and copy
once for all three queries in sysctl.c.
* Move hypercall buffer management from libxl to libxc (as requested by
Dario, patches #5 and #6).
* Report topology info for offlined CPUs as well
* Added LIBXL_HAVE_PCITOPO macro
Changes in v2:
* Split topology sysctls into two --- one for CPU topology and the other
for devices
* Avoid long loops in the hypervisor by using continuations. (I am not
particularly happy about using first_dev in the interface, suggestions
for a better interface would be appreciated)
* Use proper libxl conventions for interfaces
* Avoid hypervisor stack corruption when copying PXM data from guest
A few patches that add interface for querying hypervisor about device
topology and allow 'xl info -n' display this information if PXM object
is provided by ACPI.
This series also makes some optimizations and cleanup of current CPU
topology and NUMA sysctl queries.
Boris Ostrovsky (7):
x86/numa: Make use of NUMA_NO_NODE consistent
pci: Do not ignore device's PXM information
sysctl: Make topologyinfo and numainfo sysctls a little more
efficient
sysctl: Add sysctl interface for querying PCI topology
libxl/libxc: Move libxl_get_cpu_topology()'s hypercall buffer
management to libxc
libxl/libxc: Move libxl_get_numainfo()'s hypercall buffer management
to libxc
libxl: Add interface for querying hypervisor about PCI topology
tools/libxc/include/xenctrl.h | 11 ++-
tools/libxc/xc_misc.c | 84 ++++++++++++---
tools/libxl/libxl.c | 152 ++++++++++++-------------
tools/libxl/libxl.h | 14 +++
tools/libxl/libxl_freebsd.c | 14 +++
tools/libxl/libxl_internal.h | 5 +
tools/libxl/libxl_linux.c | 74 ++++++++++++
tools/libxl/libxl_netbsd.c | 14 +++
tools/libxl/libxl_types.idl | 7 +
tools/libxl/libxl_utils.c | 8 ++
tools/libxl/xl_cmdimpl.c | 44 ++++++-
tools/misc/xenpm.c | 92 ++++++---------
tools/python/xen/lowlevel/xc/xc.c | 103 ++++++-----------
xen/arch/x86/physdev.c | 23 ++++-
xen/arch/x86/smpboot.c | 2 +-
xen/arch/x86/srat.c | 39 ++++---
xen/arch/x86/x86_64/mm.c | 2 +-
xen/common/sysctl.c | 214 ++++++++++++++++++++++++++---------
xen/drivers/passthrough/pci.c | 13 ++-
xen/drivers/passthrough/vtd/iommu.c | 4 +-
xen/include/asm-x86/numa.h | 4 +-
xen/include/public/physdev.h | 6 +
xen/include/public/sysctl.h | 104 ++++++++++++-----
xen/include/xen/pci.h | 5 +-
24 files changed, 698 insertions(+), 340 deletions(-)
Home |
Main Index |
Thread Index |
Old Index