Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Jan 2019 23:32:08 +0000 (UTC)
From:      Brooks Davis <brooks@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r491520 - in head/emulators/qemu-cheri: . files
Message-ID:  <201901282332.x0SNW8fJ015641@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: brooks
Date: Mon Jan 28 23:32:08 2019
New Revision: 491520
URL: https://svnweb.freebsd.org/changeset/ports/491520

Log:
  Update to a new snapshow matching our upcoming paper.
  
  Grab the build fix for 12.x and -CURRENT from r484695.
  
  Sponsored by:	DARPA, AFRL

Added:
  head/emulators/qemu-cheri/files/patch-rdma-pvrdma-split
     - copied unchanged from r491519, head/emulators/qemu/files/patch-rdma-pvrdma-split
Modified:
  head/emulators/qemu-cheri/Makefile
  head/emulators/qemu-cheri/Makefile.snapshot
  head/emulators/qemu-cheri/distinfo

Modified: head/emulators/qemu-cheri/Makefile
==============================================================================
--- head/emulators/qemu-cheri/Makefile	Mon Jan 28 21:59:41 2019	(r491519)
+++ head/emulators/qemu-cheri/Makefile	Mon Jan 28 23:32:08 2019	(r491520)
@@ -10,6 +10,8 @@ COMMENT?=	QEMU emulator with CHERI CPU support
 
 # XXX: disabling gnutls doesn't work so depend on it to avoid breakage.
 LIB_DEPENDS=	libcapstone.so:devel/capstone3 \
+		libdrm.so:graphics/libdrm \
+		libepoxy.so:graphics/libepoxy \
 		libgnutls.so:security/gnutls \
 		libnettle.so:security/nettle
 RUN_DEPENDS=	qemu-system-i386:emulators/qemu
@@ -25,6 +27,7 @@ HAS_CONFIGURE=	yes
 USES=	gettext-runtime gmake gnome libtool makeinfo pkgconfig python:2.7,build
 USE_XORG=	pixman
 USE_GNOME+=	glib20 libxml2
+USE_GL+=	gbm
 ONLY_FOR_ARCHS=	amd64 powerpc64
 
 OPTIONS_DEFINE=	DOCS

Modified: head/emulators/qemu-cheri/Makefile.snapshot
==============================================================================
--- head/emulators/qemu-cheri/Makefile.snapshot	Mon Jan 28 21:59:41 2019	(r491519)
+++ head/emulators/qemu-cheri/Makefile.snapshot	Mon Jan 28 23:32:08 2019	(r491520)
@@ -4,6 +4,6 @@
 #
 # Generated by: files/gen-Makefile.snapshot.sh.
 #
-SNAPDATE=	20181031
+SNAPDATE=	20190128
 
-QEMU_COMMIT=		05df601224d09e5e454ae778d31b9951c5b96d25
+QEMU_COMMIT=		86927ac45db75b1eaac578ed58b32355ca9ad5f6

Modified: head/emulators/qemu-cheri/distinfo
==============================================================================
--- head/emulators/qemu-cheri/distinfo	Mon Jan 28 21:59:41 2019	(r491519)
+++ head/emulators/qemu-cheri/distinfo	Mon Jan 28 23:32:08 2019	(r491520)
@@ -1,5 +1,5 @@
-TIMESTAMP = 1542228858
-SHA256 (CTSRD-CHERI-qemu-0.d20181031-05df601224d09e5e454ae778d31b9951c5b96d25_GH0.tar.gz) = 2ed68cddbbd19df77c73337254ddf4ddc139c319efec4f6ec733b0d31a65888a
-SIZE (CTSRD-CHERI-qemu-0.d20181031-05df601224d09e5e454ae778d31b9951c5b96d25_GH0.tar.gz) = 16153356
+TIMESTAMP = 1548717778
+SHA256 (CTSRD-CHERI-qemu-0.d20190128-86927ac45db75b1eaac578ed58b32355ca9ad5f6_GH0.tar.gz) = 0b274ed75457a3b277d54c83e414a3c750efb85a60104a7e4c124b4d656c49f0
+SIZE (CTSRD-CHERI-qemu-0.d20190128-86927ac45db75b1eaac578ed58b32355ca9ad5f6_GH0.tar.gz) = 16158436
 SHA256 (qemu-keycodemapdb-6b3d716_GH0.tar.gz) = c9d3412510aac999865d01aaa14b1fa8dc0385db55c5cf6c4d95d160bd0eaee9
 SIZE (qemu-keycodemapdb-6b3d716_GH0.tar.gz) = 47905

Copied: head/emulators/qemu-cheri/files/patch-rdma-pvrdma-split (from r491519, head/emulators/qemu/files/patch-rdma-pvrdma-split)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/qemu-cheri/files/patch-rdma-pvrdma-split	Mon Jan 28 23:32:08 2019	(r491520, copy of r491519, head/emulators/qemu/files/patch-rdma-pvrdma-split)
@@ -0,0 +1,123 @@
+diff --git configure configure
+index 457684a7e6..3da60d8436 100755
+--- configure
++++ configure
+@@ -353,6 +353,7 @@ hax="no"
+ hvf="no"
+ whpx="no"
+ rdma=""
++pvrdma=""
+ gprof="no"
+ debug_tcg="no"
+ debug="no"
+@@ -1308,6 +1309,10 @@ for opt do
+   ;;
+   --disable-rdma) rdma="no"
+   ;;
++  --enable-pvrdma) pvrdma="yes"
++  ;;
++  --disable-pvrdma) pvrdma="no"
++  ;;
+   --with-gtkabi=*) gtkabi="$optarg"
+   ;;
+   --disable-vte) vte="no"
+@@ -1593,7 +1598,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
+@@ -2971,6 +2977,48 @@ EOF
+   fi
+ fi
+ 
++##########################################
++# PVRDMA detection
++
++cat > $TMPC <<EOF &&
++#include <sys/mman.h>
++
++int
++main(void)
++{
++    char buf = 0;
++    void *addr = &buf;
++    addr = mremap(addr, 0, 1, MREMAP_MAYMOVE | MREMAP_FIXED);
++
++    return 0;
++}
++EOF
++
++if test "$rdma" = "yes" ; then
++    case "$pvrdma" in
++    "")
++        if compile_prog "" ""; then
++            pvrdma="yes"
++        else
++            pvrdma="no"
++        fi
++        ;;
++    "yes")
++        if ! compile_prog "" ""; then
++            error_exit "PVRDMA is not supported since mremap is not implemented"
++        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
+@@ -5820,6 +5868,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"
+@@ -6568,6 +6617,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 hw/rdma/Makefile.objs hw/rdma/Makefile.objs
+index 3504c39d21..bd36cbf51c 100644
+--- hw/rdma/Makefile.objs
++++ 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
+diff --git hw/rdma/vmw/pvrdma_cmd.c hw/rdma/vmw/pvrdma_cmd.c
+index 99019d8741..bd14b4bc47 100644
+--- hw/rdma/vmw/pvrdma_cmd.c
++++ hw/rdma/vmw/pvrdma_cmd.c
+@@ -16,7 +16,6 @@
+ #include "qemu/osdep.h"
+ #include "qemu/error-report.h"
+ #include "cpu.h"
+-#include <linux/types.h>
+ #include "hw/hw.h"
+ #include "hw/pci/pci.h"
+ #include "hw/pci/pci_ids.h"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201901282332.x0SNW8fJ015641>