From nobody Mon Feb 9 02:28:34 2026 Delivered-To: importer@patchew.org Received-SPF: none (zohomail.com: 192.237.175.120 is neither permitted nor denied by domain of lists.xenproject.org) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; spf=none (zohomail.com: 192.237.175.120 is neither permitted nor denied by domain of lists.xenproject.org) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1581493374305288.0231451153239; Tue, 11 Feb 2020 23:42:54 -0800 (PST) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1j1mer-00010v-Lm; Wed, 12 Feb 2020 07:42:05 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1j1meq-00010o-Af for xen-devel@lists.xenproject.org; Wed, 12 Feb 2020 07:42:04 +0000 Received: from mx2.suse.de (unknown [195.135.220.15]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 25b49bf4-4d6b-11ea-ade5-bc764e2007e4; Wed, 12 Feb 2020 07:41:58 +0000 (UTC) Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 30C21AF62; Wed, 12 Feb 2020 07:41:57 +0000 (UTC) X-Inumbo-ID: 25b49bf4-4d6b-11ea-ade5-bc764e2007e4 X-Virus-Scanned: by amavisd-new at test-mx.suse.de From: Juergen Gross To: xen-devel@lists.xenproject.org Date: Wed, 12 Feb 2020 08:41:52 +0100 Message-Id: <20200212074154.23755-2-jgross@suse.com> X-Mailer: git-send-email 2.16.4 In-Reply-To: <20200212074154.23755-1-jgross@suse.com> References: <20200212074154.23755-1-jgross@suse.com> Subject: [Xen-devel] [PATCH v2 1/3] xenstore: setup xenstore stubdom console interface properly X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , Ian Jackson , Wei Liu MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" In order to be able to get access to the console of Xenstore stubdom we need an appropriate granttab entry. So call xc_dom_gnttab_init() when constructing the domain and preset some information needed for that function in the dom structure. We need to create the event channel for the console, too. Do that and store all necessary data locally. Signed-off-by: Juergen Gross Acked-by: Wei Liu --- tools/helpers/init-xenstore-domain.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tools/helpers/init-xenstore-domain.c b/tools/helpers/init-xens= tore-domain.c index adb8408b63..3a8ca64741 100644 --- a/tools/helpers/init-xenstore-domain.c +++ b/tools/helpers/init-xenstore-domain.c @@ -24,6 +24,7 @@ static char *param; static char *name =3D "Xenstore"; static int memory; static int maxmem; +static xc_evtchn_port_or_error_t console_evtchn; =20 static struct option options[] =3D { { "kernel", 1, NULL, 'k' }, @@ -113,6 +114,12 @@ static int build(xc_interface *xch) fprintf(stderr, "xc_domain_setmaxmem failed\n"); goto err; } + console_evtchn =3D xc_evtchn_alloc_unbound(xch, domid, 0); + if ( console_evtchn < 0 ) + { + fprintf(stderr, "xc_evtchn_alloc_unbound failed\n"); + goto err; + } rv =3D xc_domain_set_memmap_limit(xch, domid, limit_kb); if ( rv ) { @@ -133,6 +140,15 @@ static int build(xc_interface *xch) snprintf(cmdline, 512, "--event %d --internal-db", rv); =20 dom =3D xc_dom_allocate(xch, cmdline, NULL); + if ( !dom ) + { + fprintf(stderr, "xc_dom_allocate failed\n"); + goto err; + } + dom->container_type =3D XC_DOM_PV_CONTAINER; + dom->xenstore_domid =3D domid; + dom->console_evtchn =3D console_evtchn; + rv =3D xc_dom_kernel_file(dom, kernel); if ( rv ) { @@ -186,6 +202,12 @@ static int build(xc_interface *xch) fprintf(stderr, "xc_dom_boot_image failed\n"); goto err; } + rv =3D xc_dom_gnttab_init(dom); + if ( rv ) + { + fprintf(stderr, "xc_dom_gnttab_init failed\n"); + goto err; + } =20 rv =3D xc_domain_set_virq_handler(xch, domid, VIRQ_DOM_EXC); if ( rv ) --=20 2.16.4 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel