All of lore.kernel.org
 help / color / mirror / Atom feed
From: Doug Goldstein <cardoe@cardoe.com>
To: xen-devel@lists.xen.org
Cc: Keir Fraser <keir@xen.org>,
	Ian Campbell <ian.campbell@citrix.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Doug Goldstein <cardoe@cardoe.com>,
	Stefano Stabellini <stefano.stabellini@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Daniel De Graaf <dgdegra@tycho.nsa.gov>
Subject: [PATCH v8 05/28] build: convert HAS_PASSTHROUGH use to Kconfig
Date: Tue, 15 Dec 2015 07:13:03 -0600	[thread overview]
Message-ID: <1450185206-14259-6-git-send-email-cardoe@cardoe.com> (raw)
In-Reply-To: <1450185206-14259-1-git-send-email-cardoe@cardoe.com>

Use the Kconfig generated HAS_PASSTHROUGH defines for the code base.

CC: Ian Campbell <ian.campbell@citrix.com>
CC: Stefano Stabellini <stefano.stabellini@citrix.com>
CC: Keir Fraser <keir@xen.org>
CC: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
---
 xen/Rules.mk                    |  1 -
 xen/arch/arm/Kconfig            |  1 +
 xen/arch/arm/Rules.mk           |  1 -
 xen/arch/x86/Kconfig            |  1 +
 xen/arch/x86/Rules.mk           |  1 -
 xen/common/compat/memory.c      |  4 ++--
 xen/common/memory.c             |  8 ++++----
 xen/drivers/Kconfig             |  1 +
 xen/drivers/Makefile            |  2 +-
 xen/drivers/passthrough/Kconfig |  4 ++++
 xen/include/xen/sched.h         |  4 ++--
 xen/include/xsm/dummy.h         |  4 ++--
 xen/include/xsm/xsm.h           |  8 ++++----
 xen/xsm/dummy.c                 |  4 ++--
 xen/xsm/flask/hooks.c           | 10 +++++-----
 15 files changed, 29 insertions(+), 25 deletions(-)
 create mode 100644 xen/drivers/passthrough/Kconfig

diff --git a/xen/Rules.mk b/xen/Rules.mk
index d696206..a822147 100644
--- a/xen/Rules.mk
+++ b/xen/Rules.mk
@@ -58,7 +58,6 @@ CFLAGS-$(perfc_arrays)  += -DPERF_ARRAYS
 CFLAGS-$(lock_profile)  += -DLOCK_PROFILE
 CFLAGS-$(HAS_ACPI)      += -DHAS_ACPI
 CFLAGS-$(HAS_GDBSX)     += -DHAS_GDBSX
-CFLAGS-$(HAS_PASSTHROUGH) += -DHAS_PASSTHROUGH
 CFLAGS-$(HAS_DEVICE_TREE) += -DHAS_DEVICE_TREE
 CFLAGS-$(HAS_MEM_ACCESS)  += -DHAS_MEM_ACCESS
 CFLAGS-$(HAS_MEM_PAGING)  += -DHAS_MEM_PAGING
diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 91b96bc..0fd69a7 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -16,6 +16,7 @@ config ARM_64
 
 config ARM
 	def_bool y
+	select HAS_PASSTHROUGH
 
 config ARCH_DEFCONFIG
 	string
diff --git a/xen/arch/arm/Rules.mk b/xen/arch/arm/Rules.mk
index b31770c..86d7b81 100644
--- a/xen/arch/arm/Rules.mk
+++ b/xen/arch/arm/Rules.mk
@@ -9,7 +9,6 @@
 HAS_DEVICE_TREE := y
 HAS_VIDEO := y
 HAS_ARM_HDLCD := y
-HAS_PASSTHROUGH := y
 HAS_PDX := y
 
 CFLAGS += -I$(BASEDIR)/include
diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 9df34a4..3771256 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -3,6 +3,7 @@ config X86_64
 
 config X86
 	def_bool y
+	select HAS_PASSTHROUGH
 
 config ARCH_DEFCONFIG
 	string
diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk
index 5b8eaed..09f2844 100644
--- a/xen/arch/x86/Rules.mk
+++ b/xen/arch/x86/Rules.mk
@@ -8,7 +8,6 @@ HAS_VGA  := y
 HAS_VIDEO  := y
 HAS_CPUFREQ := y
 HAS_PCI := y
-HAS_PASSTHROUGH := y
 HAS_NS16550 := y
 HAS_EHCI := y
 HAS_KEXEC := y
diff --git a/xen/common/compat/memory.c b/xen/common/compat/memory.c
index bb10993..19a914d 100644
--- a/xen/common/compat/memory.c
+++ b/xen/common/compat/memory.c
@@ -18,7 +18,7 @@ CHECK_TYPE(domid);
 CHECK_mem_access_op;
 CHECK_vmemrange;
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
 struct get_reserved_device_memory {
     struct compat_reserved_device_memory_map map;
     unsigned int used_entries;
@@ -340,7 +340,7 @@ int compat_memory_op(unsigned int cmd, XEN_GUEST_HANDLE_PARAM(void) compat)
             break;
         }
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
         case XENMEM_reserved_device_memory_map:
         {
             struct get_reserved_device_memory grdm;
diff --git a/xen/common/memory.c b/xen/common/memory.c
index efb6e1a..6b3a755 100644
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -651,7 +651,7 @@ static int xenmem_add_to_physmap(struct domain *d,
     xatp->gpfn += start;
     xatp->size -= start;
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
     if ( need_iommu(d) )
         this_cpu(iommu_dont_flush_iotlb) = 1;
 #endif
@@ -674,7 +674,7 @@ static int xenmem_add_to_physmap(struct domain *d,
         }
     }
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
     if ( need_iommu(d) )
     {
         this_cpu(iommu_dont_flush_iotlb) = 0;
@@ -801,7 +801,7 @@ static int construct_memop_from_reservation(
     return 0;
 }
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
 struct get_reserved_device_memory {
     struct xen_reserved_device_memory_map map;
     unsigned int used_entries;
@@ -1245,7 +1245,7 @@ long do_memory_op(unsigned long cmd, XEN_GUEST_HANDLE_PARAM(void) arg)
         break;
     }
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
     case XENMEM_reserved_device_memory_map:
     {
         struct get_reserved_device_memory grdm;
diff --git a/xen/drivers/Kconfig b/xen/drivers/Kconfig
index 7bc7b6e..57311cc 100644
--- a/xen/drivers/Kconfig
+++ b/xen/drivers/Kconfig
@@ -1,3 +1,4 @@
 menu "Device Drivers"
 
+source "drivers/passthrough/Kconfig"
 endmenu
diff --git a/xen/drivers/Makefile b/xen/drivers/Makefile
index 9c70f20..e283870 100644
--- a/xen/drivers/Makefile
+++ b/xen/drivers/Makefile
@@ -1,6 +1,6 @@
 subdir-y += char
 subdir-$(HAS_CPUFREQ) += cpufreq
 subdir-$(HAS_PCI) += pci
-subdir-$(HAS_PASSTHROUGH) += passthrough
+subdir-$(CONFIG_HAS_PASSTHROUGH) += passthrough
 subdir-$(HAS_ACPI) += acpi
 subdir-$(HAS_VIDEO) += video
diff --git a/xen/drivers/passthrough/Kconfig b/xen/drivers/passthrough/Kconfig
new file mode 100644
index 0000000..05a8daf
--- /dev/null
+++ b/xen/drivers/passthrough/Kconfig
@@ -0,0 +1,4 @@
+
+# Select HAS_PASSTHROUGH if device pass through is supported
+config HAS_PASSTHROUGH
+	bool
diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h
index 3729b0f..fc61fc3 100644
--- a/xen/include/xen/sched.h
+++ b/xen/include/xen/sched.h
@@ -366,7 +366,7 @@ struct domain
 
     int64_t          time_offset_seconds;
 
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
     /* Does this guest need iommu mappings (-1 meaning "being set up")? */
     s8               need_iommu;
 #endif
@@ -839,7 +839,7 @@ void watchdog_domain_destroy(struct domain *d);
 #define has_hvm_container_vcpu(v)   (has_hvm_container_domain((v)->domain))
 #define is_pinned_vcpu(v) ((v)->domain->is_pinned || \
                            cpumask_weight((v)->cpu_hard_affinity) == 1)
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
 #define need_iommu(d)    ((d)->need_iommu)
 #else
 #define need_iommu(d)    (0)
diff --git a/xen/include/xsm/dummy.h b/xen/include/xsm/dummy.h
index e43f2a1..50b94a1 100644
--- a/xen/include/xsm/dummy.h
+++ b/xen/include/xsm/dummy.h
@@ -323,7 +323,7 @@ static XSM_INLINE int xsm_get_vnumainfo(XSM_DEFAULT_ARG struct domain *d)
     return xsm_default_action(action, current->domain, d);
 }
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_PCI)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_PCI)
 static XSM_INLINE int xsm_get_device_group(XSM_DEFAULT_ARG uint32_t machine_bdf)
 {
     XSM_ASSERT_ACTION(XSM_HOOK);
@@ -350,7 +350,7 @@ static XSM_INLINE int xsm_deassign_device(XSM_DEFAULT_ARG struct domain *d, uint
 
 #endif /* HAS_PASSTHROUGH && HAS_PCI */
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
 static XSM_INLINE int xsm_test_assign_dtdevice(XSM_DEFAULT_ARG const char *dtpath)
 {
     XSM_ASSERT_ACTION(XSM_HOOK);
diff --git a/xen/include/xsm/xsm.h b/xen/include/xsm/xsm.h
index f48cf60..e5cb088 100644
--- a/xen/include/xsm/xsm.h
+++ b/xen/include/xsm/xsm.h
@@ -114,14 +114,14 @@ struct xsm_operations {
     int (*iomem_mapping) (struct domain *d, uint64_t s, uint64_t e, uint8_t allow);
     int (*pci_config_permission) (struct domain *d, uint32_t machine_bdf, uint16_t start, uint16_t end, uint8_t access);
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_PCI)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_PCI)
     int (*get_device_group) (uint32_t machine_bdf);
     int (*test_assign_device) (uint32_t machine_bdf);
     int (*assign_device) (struct domain *d, uint32_t machine_bdf);
     int (*deassign_device) (struct domain *d, uint32_t machine_bdf);
 #endif
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
     int (*test_assign_dtdevice) (const char *dtpath);
     int (*assign_dtdevice) (struct domain *d, const char *dtpath);
     int (*deassign_dtdevice) (struct domain *d, const char *dtpath);
@@ -469,7 +469,7 @@ static inline int xsm_pci_config_permission (xsm_default_t def, struct domain *d
     return xsm_ops->pci_config_permission(d, machine_bdf, start, end, access);
 }
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_PCI)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_PCI)
 static inline int xsm_get_device_group(xsm_default_t def, uint32_t machine_bdf)
 {
     return xsm_ops->get_device_group(machine_bdf);
@@ -491,7 +491,7 @@ static inline int xsm_deassign_device(xsm_default_t def, struct domain *d, uint3
 }
 #endif /* HAS_PASSTHROUGH && HAS_PCI) */
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
 static inline int xsm_assign_dtdevice(xsm_default_t def, struct domain *d,
                                       const char *dtpath)
 {
diff --git a/xen/xsm/dummy.c b/xen/xsm/dummy.c
index 618a96e..036db4b 100644
--- a/xen/xsm/dummy.c
+++ b/xen/xsm/dummy.c
@@ -89,14 +89,14 @@ void xsm_fixup_ops (struct xsm_operations *ops)
     set_to_dummy_if_null(ops, pci_config_permission);
     set_to_dummy_if_null(ops, get_vnumainfo);
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_PCI)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_PCI)
     set_to_dummy_if_null(ops, get_device_group);
     set_to_dummy_if_null(ops, test_assign_device);
     set_to_dummy_if_null(ops, assign_device);
     set_to_dummy_if_null(ops, deassign_device);
 #endif
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
     set_to_dummy_if_null(ops, test_assign_dtdevice);
     set_to_dummy_if_null(ops, assign_dtdevice);
     set_to_dummy_if_null(ops, deassign_dtdevice);
diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c
index da8d287..3f4ceea 100644
--- a/xen/xsm/flask/hooks.c
+++ b/xen/xsm/flask/hooks.c
@@ -588,7 +588,7 @@ static int flask_domctl(struct domain *d, int cmd)
     case XEN_DOMCTL_ioport_permission:
     case XEN_DOMCTL_ioport_mapping:
 #endif
-#ifdef HAS_PASSTHROUGH
+#ifdef CONFIG_HAS_PASSTHROUGH
     /*
      * These have individual XSM hooks
      * (drivers/passthrough/{pci,device_tree.c)
@@ -1213,7 +1213,7 @@ static int flask_mem_sharing(struct domain *d)
 }
 #endif
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_PCI)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_PCI)
 static int flask_get_device_group(uint32_t machine_bdf)
 {
     u32 rsid;
@@ -1279,7 +1279,7 @@ static int flask_deassign_device(struct domain *d, uint32_t machine_bdf)
 }
 #endif /* HAS_PASSTHROUGH && HAS_PCI */
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
 static int flask_test_assign_dtdevice(const char *dtpath)
 {
     u32 rsid;
@@ -1725,14 +1725,14 @@ static struct xsm_operations flask_ops = {
     .remove_from_physmap = flask_remove_from_physmap,
     .map_gmfn_foreign = flask_map_gmfn_foreign,
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_PCI)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_PCI)
     .get_device_group = flask_get_device_group,
     .test_assign_device = flask_test_assign_device,
     .assign_device = flask_assign_device,
     .deassign_device = flask_deassign_device,
 #endif
 
-#if defined(HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
+#if defined(CONFIG_HAS_PASSTHROUGH) && defined(HAS_DEVICE_TREE)
     .test_assign_dtdevice = flask_test_assign_dtdevice,
     .assign_dtdevice = flask_assign_dtdevice,
     .deassign_dtdevice = flask_deassign_dtdevice,
-- 
2.4.10

  parent reply	other threads:[~2015-12-15 13:13 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-15 13:12 [PATCH v8 00/28] Kconfig conversion Doug Goldstein
2015-12-15 13:12 ` [PATCH v8 01/28] build: import Kbuild/Kconfig from Linux 4.3 Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 02/28] MAINTAINERS: add myself for kconfig Doug Goldstein
2015-12-15 21:58   ` Doug Goldstein
2015-12-16  7:39     ` Jan Beulich
2015-12-15 22:39   ` [PATCH] " Doug Goldstein
2015-12-16  7:27     ` Jan Beulich
2015-12-16 10:49       ` Doug Goldstein
2015-12-16 14:41         ` Doug Goldstein
2016-01-05 12:07           ` Ian Campbell
2016-01-06 13:45             ` Jan Beulich
2016-01-06 14:26               ` Tim Deegan
2016-01-06 14:40                 ` Jan Beulich
2016-01-06 14:58                   ` Ian Jackson
2016-01-06 14:42                 ` Ian Campbell
2016-01-06 15:31                 ` Lars Kurth
2016-01-06 16:30                   ` Ian Jackson
2016-01-14 17:19                     ` Lars Kurth
2016-01-14 17:24                       ` Ian Campbell
2016-01-15 15:59                         ` Ian Campbell
2016-01-15 16:17                           ` Jan Beulich
2016-01-18 17:05           ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 03/28] build: build Kconfig and config rules Doug Goldstein
2015-12-16 10:27   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 04/28] build: use generated Kconfig options for Xen Doug Goldstein
2015-12-16 10:27   ` Ian Campbell
2015-12-16 10:33   ` Ian Campbell
2015-12-15 13:13 ` Doug Goldstein [this message]
2015-12-15 21:25   ` [PATCH v8 05/28] build: convert HAS_PASSTHROUGH use to Kconfig Daniel De Graaf
2015-12-16 10:34   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 06/28] build: convert HAS_DEVICE_TREE " Doug Goldstein
2015-12-15 21:25   ` Daniel De Graaf
2015-12-16 10:34   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 07/28] build: convert HAS_PCI " Doug Goldstein
2015-12-15 21:26   ` Daniel De Graaf
2015-12-15 13:13 ` [PATCH v8 08/28] build: convert HAS_NS16550 " Doug Goldstein
2015-12-16 10:34   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 09/28] build: convert HAS_IOPORTS " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 10/28] build: convert HAS_ACPI " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 11/28] build: convert HAS_VIDEO " Doug Goldstein
2015-12-16 10:35   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 12/28] build: convert HAS_VGA " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 13/28] build: convert HAS_CPUFREQ " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 14/28] build: convert HAS_GDBSX " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 15/28] build: convert HAS_PDX " Doug Goldstein
2015-12-16 10:35   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 16/28] build: convert HAS_KEXEC / KEXEC " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 17/28] build: convert HAS_ARM_HDLCD " Doug Goldstein
2015-12-16 10:35   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 18/28] build: convert HAS_CADENCE_UART " Doug Goldstein
2015-12-16 10:36   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 19/28] build: convert HAS_PL011 " Doug Goldstein
2015-12-16 10:36   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 20/28] build: convert HAS_EXYNOS4210 " Doug Goldstein
2015-12-16 10:36   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 21/28] build: convert HAS_OMAP " Doug Goldstein
2015-12-16 10:38   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 22/28] build: convert HAS_SCIF " Doug Goldstein
2015-12-16 10:38   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 23/28] build: convert HAS_EHCI " Doug Goldstein
2015-12-15 13:13 ` [PATCH v8 24/28] build: convert HAS_MEM_ACCESS " Doug Goldstein
2015-12-15 21:26   ` Daniel De Graaf
2015-12-16 10:38   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 25/28] build: convert HAS_MEM_PAGING " Doug Goldstein
2015-12-15 21:27   ` Daniel De Graaf
2015-12-16 10:39   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 26/28] build: convert HAS_MEM_SHARING " Doug Goldstein
2015-12-15 21:27   ` Daniel De Graaf
2015-12-15 13:13 ` [PATCH v8 27/28] build: convert HAS_GICV3 " Doug Goldstein
2015-12-16 10:39   ` Ian Campbell
2015-12-15 13:13 ` [PATCH v8 28/28] build: convert CONFIG_COMPAT " Doug Goldstein
2015-12-15 15:23   ` Jan Beulich
2015-12-16 12:00     ` [PATCH] " Doug Goldstein
2015-12-16 12:52       ` Jan Beulich
2015-12-16 17:01       ` Jan Beulich
2015-12-17 16:00         ` Doug Goldstein
2015-12-16 12:02     ` [PATCH v8 28/28] " Doug Goldstein
2015-12-16  7:37 ` [PATCH v8 00/28] Kconfig conversion Jan Beulich
2015-12-16 10:41   ` Ian Campbell
2015-12-16 14:38   ` Doug Goldstein
2015-12-16 10:33 ` Ian Campbell
2015-12-16 10:43   ` Ian Campbell
2015-12-16 11:42   ` [PATCH] squash into 'build: use generated Kconfig options for Xen' Doug Goldstein
2015-12-16 11:55     ` Ian Campbell
2015-12-16 11:49   ` [PATCH v8 00/28] Kconfig conversion Doug Goldstein
2015-12-18 10:30 ` Ian Campbell
2015-12-18 14:20   ` Doug Goldstein
2015-12-18 14:55     ` Juergen Gross
2015-12-18 15:06       ` Andrew Cooper
2015-12-18 15:16         ` Jan Beulich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1450185206-14259-6-git-send-email-cardoe@cardoe.com \
    --to=cardoe@cardoe.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=dgdegra@tycho.nsa.gov \
    --cc=ian.campbell@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=keir@xen.org \
    --cc=stefano.stabellini@citrix.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.