Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Jan 2021 14:21:41 +0000 (UTC)
From:      =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <royger@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r563208 - in head: emulators/xen-kernel emulators/xen-kernel/files sysutils/xen-tools sysutils/xen-tools/files
Message-ID:  <202101291421.10TELfgn076512@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: royger (src committer)
Date: Fri Jan 29 14:21:41 2021
New Revision: 563208
URL: https://svnweb.freebsd.org/changeset/ports/563208

Log:
  emulators/xen-kernel,sysutils/xen-tools: update to 4.14.1
  
  Sponsored by:	Citrix Systems R&D
  Approved by:	bapt (implicit)

Added:
  head/emulators/xen-kernel/files/0001-x86-pvh-pass-module-command-line-to-dom0.patch   (contents, props changed)
Deleted:
  head/emulators/xen-kernel/files/0001-x86-use-constant-flags-for-section-.init.rodata.patch
  head/sysutils/xen-tools/files/
Modified:
  head/emulators/xen-kernel/Makefile
  head/emulators/xen-kernel/distinfo
  head/sysutils/xen-tools/Makefile
  head/sysutils/xen-tools/distinfo

Modified: head/emulators/xen-kernel/Makefile
==============================================================================
--- head/emulators/xen-kernel/Makefile	Fri Jan 29 13:43:05 2021	(r563207)
+++ head/emulators/xen-kernel/Makefile	Fri Jan 29 14:21:41 2021	(r563208)
@@ -1,7 +1,7 @@
 # $FreeBSD$
 
 PORTNAME=	xen
-PORTVERSION=	4.14.0
+PORTVERSION=	4.14.1
 PORTREVISION=	0
 CATEGORIES=	emulators
 MASTER_SITES=	http://downloads.xenproject.org/release/xen/${PORTVERSION}/
@@ -25,8 +25,8 @@ STRIP=		#
 PLIST_FILES=	/boot/xen \
 		lib/debug/boot/xen.debug
 
-# Fix build with clang 11
-EXTRA_PATCHES+= ${PATCHDIR}/0001-x86-use-constant-flags-for-section-.init.rodata.patch:-p1
+# Propagate module command line passed by the loader.
+EXTRA_PATCHES+= ${PATCHDIR}/0001-x86-pvh-pass-module-command-line-to-dom0.patch:-p1
 
 .include <bsd.port.options.mk>
 

Modified: head/emulators/xen-kernel/distinfo
==============================================================================
--- head/emulators/xen-kernel/distinfo	Fri Jan 29 13:43:05 2021	(r563207)
+++ head/emulators/xen-kernel/distinfo	Fri Jan 29 14:21:41 2021	(r563208)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1598458426
-SHA256 (xen-4.14.0.tar.gz) = 06839f68ea7620669dbe8b67861213223cc2a7d02ced61b56e5249c50e87f035
-SIZE (xen-4.14.0.tar.gz) = 39950576
+TIMESTAMP = 1611929407
+SHA256 (xen-4.14.1.tar.gz) = cf0d7316ad674491f49b7ef0518cb1d906a2e3bfad639deef0ef2343b119ac0c
+SIZE (xen-4.14.1.tar.gz) = 39970115

Added: head/emulators/xen-kernel/files/0001-x86-pvh-pass-module-command-line-to-dom0.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/xen-kernel/files/0001-x86-pvh-pass-module-command-line-to-dom0.patch	Fri Jan 29 14:21:41 2021	(r563208)
@@ -0,0 +1,54 @@
+From ddc03f91858b21a1641909d1a1f55604be627d82 Mon Sep 17 00:00:00 2001
+From: Roger Pau Monne <roger.pau@citrix.com>
+Date: Fri, 29 Jan 2021 09:59:03 +0100
+Subject: [PATCH] x86/pvh: pass module command line to dom0
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Both the multiboot and the HVM start info structures allow passing a
+string together with a module. Implement the missing support in
+pvh_load_kernel so that module strings found in the multiboot
+structure are forwarded to dom0.
+
+Fixes: 62ba982424 ('x86: parse Dom0 kernel for PVHv2')
+Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
+---
+NB: str cannot be made const because __hvm_copy buf parameter (that
+maps to str in the added code) is bi-directional depending on the
+flags passed to the function.
+---
+ xen/arch/x86/hvm/dom0_build.c | 17 ++++++++++++++++-
+ 1 file changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/xen/arch/x86/hvm/dom0_build.c b/xen/arch/x86/hvm/dom0_build.c
+index 12a82c9d7c..28c29d2669 100644
+--- a/xen/arch/x86/hvm/dom0_build.c
++++ b/xen/arch/x86/hvm/dom0_build.c
+@@ -617,7 +617,22 @@ static int __init pvh_load_kernel(struct domain *d, const module_t *image,
+ 
+         mod.paddr = last_addr;
+         mod.size = initrd->mod_end;
+-        last_addr += ROUNDUP(initrd->mod_end, PAGE_SIZE);
++        last_addr += ROUNDUP(initrd->mod_end, elf_64bit(&elf) ? 8 : 4);
++        if ( initrd->string )
++        {
++            char *str = __va(initrd->string);
++            unsigned int len = strlen(str) + 1;
++
++            rc = hvm_copy_to_guest_phys(last_addr, str, len, v);
++            if ( rc )
++            {
++                printk("Unable to copy module command line\n");
++                return rc;
++            }
++            mod.cmdline_paddr = last_addr;
++            last_addr += len;
++        }
++        last_addr = ROUNDUP(last_addr, PAGE_SIZE);
+     }
+ 
+     /* Free temporary buffers. */
+-- 
+2.29.2
+

Modified: head/sysutils/xen-tools/Makefile
==============================================================================
--- head/sysutils/xen-tools/Makefile	Fri Jan 29 13:43:05 2021	(r563207)
+++ head/sysutils/xen-tools/Makefile	Fri Jan 29 14:21:41 2021	(r563208)
@@ -2,8 +2,8 @@
 
 PORTNAME=	xen
 PKGNAMESUFFIX=	-tools
-PORTVERSION=	4.14.0
-PORTREVISION=	1
+PORTVERSION=	4.14.1
+PORTREVISION=	0
 CATEGORIES=	sysutils emulators
 MASTER_SITES=	http://downloads.xenproject.org/release/xen/${PORTVERSION}/
 
@@ -57,9 +57,6 @@ ALL_TARGET=		tools
 DOCS_ALL_TARGET=	docs
 INSTALL_TARGET=		install-tools
 DOCS_INSTALL_TARGET=	install-docs
-
-# Fix build with clang 11
-EXTRA_PATCHES+= ${PATCHDIR}/0001-x86-use-constant-flags-for-section-.init.rodata.patch:-p1
 
 .include <bsd.port.options.mk>
 

Modified: head/sysutils/xen-tools/distinfo
==============================================================================
--- head/sysutils/xen-tools/distinfo	Fri Jan 29 13:43:05 2021	(r563207)
+++ head/sysutils/xen-tools/distinfo	Fri Jan 29 14:21:41 2021	(r563208)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1598459427
-SHA256 (xen-4.14.0.tar.gz) = 06839f68ea7620669dbe8b67861213223cc2a7d02ced61b56e5249c50e87f035
-SIZE (xen-4.14.0.tar.gz) = 39950576
+TIMESTAMP = 1611929626
+SHA256 (xen-4.14.1.tar.gz) = cf0d7316ad674491f49b7ef0518cb1d906a2e3bfad639deef0ef2343b119ac0c
+SIZE (xen-4.14.1.tar.gz) = 39970115



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