All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/8] Display IO topology when PXM data is available (plus some cleanup)
@ 2015-03-19 21:53 Boris Ostrovsky
  2015-03-19 21:53 ` [PATCH v5 1/8] numa: __node_distance() should return u8 Boris Ostrovsky
                   ` (8 more replies)
  0 siblings, 9 replies; 45+ messages in thread
From: Boris Ostrovsky @ 2015-03-19 21:53 UTC (permalink / raw)
  To: andrew.cooper3, jbeulich, keir, ian.jackson, stefano.stabellini,
	ian.campbell, wei.liu2, dario.faggioli, elena.ufimtseva,
	xen-devel
  Cc: boris.ostrovsky

Changes in v5:
* Make CPU topology and NUMA info sysctls behave more like XEN_DOMCTL_get_vcpu_msrs
  when passed NULL buffers. This required toolstack changes as well
* Don't use 8-bit data types in interfaces
* Fold interface version update into patch#3

Changes in v4:
* Split cputopology and NUMA info changes into separate patches
* Added patch#1 (partly because patch#4 needs to know when when distance is invalid,
  i.e. NUMA_NO_DISTANCE)
* Split sysctl version update into a separate patch
* Other changes are listed in each patch
* NOTE: I did not test python's xc changes since I don't think I know how.

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 (8):
  numa: __node_distance() should return u8
  pci: Stash device's PXM information in struct pci_dev
  sysctl: Make XEN_SYSCTL_topologyinfo sysctl a little more efficient
  sysctl: Make XEN_SYSCTL_numainfo 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     |   12 ++-
 tools/libxc/xc_misc.c             |  102 ++++++++++++++++---
 tools/libxl/libxl.c               |  183 ++++++++++++++++------------------
 tools/libxl/libxl.h               |   12 ++
 tools/libxl/libxl_freebsd.c       |   12 ++
 tools/libxl/libxl_internal.h      |    5 +
 tools/libxl/libxl_linux.c         |   69 +++++++++++++
 tools/libxl/libxl_netbsd.c        |   12 ++
 tools/libxl/libxl_types.idl       |    7 ++
 tools/libxl/libxl_utils.c         |    8 ++
 tools/libxl/xl_cmdimpl.c          |   40 ++++++--
 tools/misc/xenpm.c                |  101 ++++++++----------
 tools/python/xen/lowlevel/xc/xc.c |  105 +++++++-------------
 xen/arch/x86/physdev.c            |   23 ++++-
 xen/arch/x86/srat.c               |   13 ++-
 xen/common/page_alloc.c           |    4 +-
 xen/common/sysctl.c               |  200 +++++++++++++++++++++++++++----------
 xen/drivers/passthrough/pci.c     |   13 ++-
 xen/include/asm-x86/numa.h        |    2 +-
 xen/include/public/physdev.h      |    6 +
 xen/include/public/sysctl.h       |  138 ++++++++++++++++---------
 xen/include/xen/numa.h            |    3 +-
 xen/include/xen/pci.h             |    5 +-
 23 files changed, 715 insertions(+), 360 deletions(-)

^ permalink raw reply	[flat|nested] 45+ messages in thread

end of thread, other threads:[~2015-03-25 16:13 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-19 21:53 [PATCH v5 0/8] Display IO topology when PXM data is available (plus some cleanup) Boris Ostrovsky
2015-03-19 21:53 ` [PATCH v5 1/8] numa: __node_distance() should return u8 Boris Ostrovsky
2015-03-20 14:25   ` Konrad Rzeszutek Wilk
2015-03-19 21:53 ` [PATCH v5 2/8] pci: Stash device's PXM information in struct pci_dev Boris Ostrovsky
2015-03-20 14:01   ` Konrad Rzeszutek Wilk
2015-03-19 21:53 ` [PATCH v5 3/8] sysctl: Make XEN_SYSCTL_topologyinfo sysctl a little more efficient Boris Ostrovsky
2015-03-20 13:25   ` Ian Campbell
2015-03-20 14:00     ` Boris Ostrovsky
2015-03-20 14:10       ` Ian Campbell
2015-03-25 16:13   ` Andrew Cooper
2015-03-19 21:54 ` [PATCH v5 4/8] sysctl: Make XEN_SYSCTL_numainfo " Boris Ostrovsky
2015-03-20 13:26   ` Ian Campbell
2015-03-20 16:15   ` Jan Beulich
2015-03-19 21:54 ` [PATCH v5 5/8] sysctl: Add sysctl interface for querying PCI topology Boris Ostrovsky
2015-03-20 14:21   ` Konrad Rzeszutek Wilk
2015-03-20 16:26   ` Jan Beulich
2015-03-20 20:01     ` Boris Ostrovsky
2015-03-23  8:15       ` Jan Beulich
2015-03-23 13:58         ` Boris Ostrovsky
2015-03-19 21:54 ` [PATCH v5 6/8] libxl/libxc: Move libxl_get_cpu_topology()'s hypercall buffer management to libxc Boris Ostrovsky
2015-03-20 13:54   ` Ian Campbell
2015-03-20 14:24     ` Boris Ostrovsky
2015-03-20 14:30       ` Ian Campbell
2015-03-19 21:54 ` [PATCH v5 7/8] libxl/libxc: Move libxl_get_numainfo()'s " Boris Ostrovsky
2015-03-20 13:49   ` Konrad Rzeszutek Wilk
2015-03-20 14:10     ` Boris Ostrovsky
2015-03-20 14:21       ` Ian Campbell
2015-03-20 13:56   ` Ian Campbell
2015-03-20 14:31     ` Boris Ostrovsky
2015-03-20 14:46       ` Ian Campbell
2015-03-20 14:59         ` Boris Ostrovsky
2015-03-19 21:54 ` [PATCH v5 8/8] libxl: Add interface for querying hypervisor about PCI topology Boris Ostrovsky
2015-03-23 12:42 ` [PATCH v5 0/8] Display IO topology when PXM data is available (plus some cleanup) Julien Grall
2015-03-23 13:47   ` Boris Ostrovsky
2015-03-23 14:30     ` George Dunlap
2015-03-23 14:33       ` Boris Ostrovsky
2015-03-23 14:42       ` Ian Campbell
2015-03-23 15:26     ` Julien Grall
2015-03-23 15:27     ` Jan Beulich
2015-03-23 15:33       ` Boris Ostrovsky
2015-03-23 15:46         ` Jan Beulich
2015-03-23 14:30   ` Jan Beulich
2015-03-23 14:38     ` George Dunlap
2015-03-23 15:17       ` Ian Campbell
2015-03-23 15:21       ` Julien Grall

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.