* [Qemu-devel] [PATCH] config: split PVRDMA from RDMA
@ 2018-08-16 9:06 Marcel Apfelbaum
2018-08-16 9:17 ` Thomas Huth
2018-08-16 9:21 ` Peter Maydell
0 siblings, 2 replies; 3+ messages in thread
From: Marcel Apfelbaum @ 2018-08-16 9:06 UTC (permalink / raw)
To: qemu-devel; +Cc: yuval.shaia, thuth, rebecca, peter.maydell
In some BSD systems RDMA migration is possible while
the pvrdma device can't be compiled because the mremap
system call is missing.
Reported-by: Rebecca Cran <rebecca@bluestop.org>
Signed-off-by: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
---
configure | 41 ++++++++++++++++++++++++++++++++++++++++-
hw/rdma/Makefile.objs | 2 +-
2 files changed, 41 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index 2a7796ea80..92591302d7 100755
--- a/configure
+++ b/configure
@@ -375,6 +375,7 @@ hax="no"
hvf="no"
whpx="no"
rdma=""
+pvrdma=""
gprof="no"
debug_tcg="no"
debug="no"
@@ -1363,6 +1364,10 @@ for opt do
;;
--disable-rdma) rdma="no"
;;
+ --enable-pvrdma) pvrdma="yes"
+ ;;
+ --disable-pvrdma) pvrdma="no"
+ ;;
--with-gtkabi=*) gtkabi="$optarg"
;;
--disable-vte) vte="no"
@@ -1669,7 +1674,8 @@ disabled with --disable-FEATURE, default is enabled if available:
hax HAX acceleration support
hvf Hypervisor.framework acceleration support
whpx Windows Hypervisor Platform acceleration support
- rdma Enable RDMA-based migration and PVRDMA support
+ rdma Enable RDMA-based migration
+ pvrdma Enable PVRDMA support
vde support for vde network
netmap support for netmap network
linux-aio Linux AIO support
@@ -3064,6 +3070,34 @@ EOF
fi
fi
+##########################################
+# PVRDMA detection
+
+if test "$rdma" = "yes" ; then
+ case "$pvrdma" in
+ "")
+ if test "$bsd" = "yes"; then
+ pvrdma="no"
+ else
+ pvrdma="yes"
+ fi
+ ;;
+ "yes")
+ if test "$bsd" = "yes"; then
+ error_exit "PVRDMA is not supported for bsd"
+ fi
+ pvrdma="yes"
+ ;;
+ "no")
+ pvrdma="no"
+ ;;
+ esac
+else
+ if test "$pvrdma" = "yes" ; then
+ error_exit "PVRDMA requires rdma suppport"
+ fi
+ pvrdma="no"
+fi
##########################################
# VNC SASL detection
@@ -5952,6 +5986,7 @@ if test "$tcg" = "yes" ; then
fi
echo "malloc trim support $malloc_trim"
echo "RDMA support $rdma"
+echo "PVRDMA support $pvrdma"
echo "fdt support $fdt"
echo "membarrier $membarrier"
echo "preadv support $preadv"
@@ -6708,6 +6743,10 @@ if test "$rdma" = "yes" ; then
echo "RDMA_LIBS=$rdma_libs" >> $config_host_mak
fi
+if test "$pvrdma" = "yes" ; then
+ echo "CONFIG_PVRDMA=y" >> $config_host_mak
+fi
+
if test "$have_rtnetlink" = "yes" ; then
echo "CONFIG_RTNETLINK=y" >> $config_host_mak
fi
diff --git a/hw/rdma/Makefile.objs b/hw/rdma/Makefile.objs
index 3504c39d21..bd36cbf51c 100644
--- a/hw/rdma/Makefile.objs
+++ b/hw/rdma/Makefile.objs
@@ -1,4 +1,4 @@
-ifeq ($(CONFIG_RDMA),y)
+ifeq ($(CONFIG_PVRDMA),y)
obj-$(CONFIG_PCI) += rdma_utils.o rdma_backend.o rdma_rm.o
obj-$(CONFIG_PCI) += vmw/pvrdma_dev_ring.o vmw/pvrdma_cmd.o \
vmw/pvrdma_qp_ops.o vmw/pvrdma_main.o
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH] config: split PVRDMA from RDMA
2018-08-16 9:06 [Qemu-devel] [PATCH] config: split PVRDMA from RDMA Marcel Apfelbaum
@ 2018-08-16 9:17 ` Thomas Huth
2018-08-16 9:21 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Huth @ 2018-08-16 9:17 UTC (permalink / raw)
To: Marcel Apfelbaum, qemu-devel; +Cc: yuval.shaia, rebecca, peter.maydell
On 08/16/2018 11:06 AM, Marcel Apfelbaum wrote:
> In some BSD systems RDMA migration is possible while
> the pvrdma device can't be compiled because the mremap
> system call is missing.
>
> Reported-by: Rebecca Cran <rebecca@bluestop.org>
> Signed-off-by: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
> ---
> configure | 41 ++++++++++++++++++++++++++++++++++++++++-
> hw/rdma/Makefile.objs | 2 +-
> 2 files changed, 41 insertions(+), 2 deletions(-)
[...]
> diff --git a/hw/rdma/Makefile.objs b/hw/rdma/Makefile.objs
> index 3504c39d21..bd36cbf51c 100644
> --- a/hw/rdma/Makefile.objs
> +++ b/hw/rdma/Makefile.objs
> @@ -1,4 +1,4 @@
> -ifeq ($(CONFIG_RDMA),y)
> +ifeq ($(CONFIG_PVRDMA),y)
> obj-$(CONFIG_PCI) += rdma_utils.o rdma_backend.o rdma_rm.o
> obj-$(CONFIG_PCI) += vmw/pvrdma_dev_ring.o vmw/pvrdma_cmd.o \
> vmw/pvrdma_qp_ops.o vmw/pvrdma_main.o
Shouldn't just the second line be guarded by CONFIG_PVRDMA ?
Thomas
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH] config: split PVRDMA from RDMA
2018-08-16 9:06 [Qemu-devel] [PATCH] config: split PVRDMA from RDMA Marcel Apfelbaum
2018-08-16 9:17 ` Thomas Huth
@ 2018-08-16 9:21 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Peter Maydell @ 2018-08-16 9:21 UTC (permalink / raw)
To: Marcel Apfelbaum; +Cc: QEMU Developers, Yuval Shaia, Thomas Huth, Rebecca Cran
On 16 August 2018 at 10:06, Marcel Apfelbaum <marcel.apfelbaum@gmail.com> wrote:
> In some BSD systems RDMA migration is possible while
> the pvrdma device can't be compiled because the mremap
> system call is missing.
>
> Reported-by: Rebecca Cran <rebecca@bluestop.org>
> Signed-off-by: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
> +##########################################
> +# PVRDMA detection
> +
> +if test "$rdma" = "yes" ; then
> + case "$pvrdma" in
> + "")
> + if test "$bsd" = "yes"; then
> + pvrdma="no"
> + else
> + pvrdma="yes"
> + fi
Please don't do tests against "which host OS is this?"
unless there is absolutely no other option. Prefer to
test for presence/absence of specific features (eg
"do we have mremap()?".
Otherwise you're likely to give the wrong answer
for other host OSes we have support for (Haiku,
Solaris) or other host OSes we add in future.
thanks
-- PMM
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-08-16 9:22 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-16 9:06 [Qemu-devel] [PATCH] config: split PVRDMA from RDMA Marcel Apfelbaum
2018-08-16 9:17 ` Thomas Huth
2018-08-16 9:21 ` Peter Maydell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).