From minios-devel-bounces@lists.xenproject.org Tue Aug 17 09:55:18 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Aug 2021 09:55:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.167682.306093 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFvoR-0007Hs-KT; Tue, 17 Aug 2021 09:55:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 167682.306093; Tue, 17 Aug 2021 09:55:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFvoR-0007Hl-HV; Tue, 17 Aug 2021 09:55:15 +0000
Received: by outflank-mailman (input) for mailman id 167682;
 Tue, 17 Aug 2021 09:55:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OoW9=NI=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1mFvoR-0007HZ-1S
 for minios-devel@lists.xenproject.org; Tue, 17 Aug 2021 09:55:15 +0000
Received: from smtp-out1.suse.de (unknown [195.135.220.28])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 370c78c0-ff41-11eb-a498-12813bfff9fa;
 Tue, 17 Aug 2021 09:55:13 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id 499E421ECD;
 Tue, 17 Aug 2021 09:55:12 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id 10D8F13318;
 Tue, 17 Aug 2021 09:55:12 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap1.suse-dmz.suse.de with ESMTPSA id r6adAoCHG2FEDwAAGKfGzw
 (envelope-from <jgross@suse.com>); Tue, 17 Aug 2021 09:55:12 +0000
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 370c78c0-ff41-11eb-a498-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1629194112; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=9AWfd4PjJv9MY/T21Yeryt5HQZJaCzl6pn5VQ/We+pA=;
	b=YbcY86CRFfJq7cur/mmqjqgmHn2aY6iWDi4qD2fa59mDd9X07tRbNV276Spo27OkIb3sAR
	qmE0Hh0xHlQig7P6zZjISPQpmZQ1/fSKj7m9+UH1f7/XbNx2Bmv8YehV4KE6RCPNQ1X87d
	Y1S+9q9CgDK7umzCHABadVGsxDR4jfU=
From: Juergen Gross <jgross@suse.com>
To: minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org
Cc: samuel.thibault@ens-lyon.org,
	wl@xen.org,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH 0/2] mini-os: config related cleanups
Date: Tue, 17 Aug 2021 11:54:57 +0200
Message-Id: <20210817095459.27671-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

While writing patch 2 I stumbled over CONFIG_TEST having no effect at
the C source level, so I added patch 1 to avoid further similar
problems.

The additionally fixed CONFIG_XC issue wasn't triggered in any known
case, probably as FTYPE_XC hasn't been used in our code base.

Juergen Gross (2):
  mini-os: make config handling more generic
  mini-os: move test functions under CONFIG_TEST

 Config.mk       | 66 +++++++++++++++++++++----------------------------
 xenbus/xenbus.c | 32 +++++++++++++-----------
 2 files changed, 45 insertions(+), 53 deletions(-)

-- 
2.26.2



From minios-devel-bounces@lists.xenproject.org Tue Aug 17 09:55:18 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Aug 2021 09:55:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.167683.306098 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFvoS-0007Jo-M2; Tue, 17 Aug 2021 09:55:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 167683.306098; Tue, 17 Aug 2021 09:55:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFvoS-0007Jh-Ix; Tue, 17 Aug 2021 09:55:16 +0000
Received: by outflank-mailman (input) for mailman id 167683;
 Tue, 17 Aug 2021 09:55:15 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OoW9=NI=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1mFvoR-0007Ha-6Q
 for minios-devel@lists.xenproject.org; Tue, 17 Aug 2021 09:55:15 +0000
Received: from smtp-out2.suse.de (unknown [195.135.220.29])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id cc6e5109-a177-46dc-a90c-ea52122590ff;
 Tue, 17 Aug 2021 09:55:13 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id B6B801FF2C;
 Tue, 17 Aug 2021 09:55:12 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id 87BC413318;
 Tue, 17 Aug 2021 09:55:12 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap1.suse-dmz.suse.de with ESMTPSA id sMCmH4CHG2FEDwAAGKfGzw
 (envelope-from <jgross@suse.com>); Tue, 17 Aug 2021 09:55:12 +0000
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: cc6e5109-a177-46dc-a90c-ea52122590ff
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1629194112; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=6C/kYgeCHpbmW4aQY5wUhjgZzqJkvYkEyqUXd4wWzEM=;
	b=igvi9mJDRgK1cbndd4mDIjnvgEhYsOX4p+oW4RPNh9dShzPROZgiHXE8ZdmCU2LEu4KX+/
	9wsBiSuZUrDjQi8wk2z8j92kBhsuhkez5CwmKlbUBYouV1vTKI/Mg8MIaR0uR5G9PqnyA4
	T7dqfBuXC0kNSS/L+cwCA1lU84l1Fh4=
From: Juergen Gross <jgross@suse.com>
To: minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org
Cc: samuel.thibault@ens-lyon.org,
	wl@xen.org,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH 2/2] mini-os: move test functions under CONFIG_TEST
Date: Tue, 17 Aug 2021 11:54:59 +0200
Message-Id: <20210817095459.27671-3-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210817095459.27671-1-jgross@suse.com>
References: <20210817095459.27671-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

There is no need to have the xenbus test support functions always
included in Mini-OS. Move them inside #ifdef CONFIG_TEST.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 xenbus/xenbus.c | 32 +++++++++++++++++---------------
 1 file changed, 17 insertions(+), 15 deletions(-)

diff --git a/xenbus/xenbus.c b/xenbus/xenbus.c
index fdb0934..11427ba 100644
--- a/xenbus/xenbus.c
+++ b/xenbus/xenbus.c
@@ -573,21 +573,6 @@ static char *errmsg(struct xsd_sockmsg *rep)
     return res;
 }
 
-/* Send a debug message to xenbus.  Can block. */
-static void xenbus_debug_msg(const char *msg)
-{
-    int len = strlen(msg);
-    struct write_req req[] = {
-        { "print", sizeof("print") },
-        { msg, len },
-        { "", 1 }};
-    struct xsd_sockmsg *reply;
-
-    reply = xenbus_msg_reply(XS_DEBUG, 0, req, ARRAY_SIZE(req));
-    printk("Got a reply, type %d, id %d, len %d.\n",
-            reply->type, reply->req_id, reply->len);
-}
-
 /* List the contents of a directory.  Returns a malloc()ed array of
    pointers to malloc()ed strings.  The array is NULL terminated.  May
    block. */
@@ -882,6 +867,22 @@ domid_t xenbus_get_self_id(void)
     return ret;
 }
 
+#ifdef CONFIG_TEST
+/* Send a debug message to xenbus.  Can block. */
+static void xenbus_debug_msg(const char *msg)
+{
+    int len = strlen(msg);
+    struct write_req req[] = {
+        { "print", sizeof("print") },
+        { msg, len },
+        { "", 1 }};
+    struct xsd_sockmsg *reply;
+
+    reply = xenbus_msg_reply(XS_DEBUG, 0, req, ARRAY_SIZE(req));
+    printk("Got a reply, type %d, id %d, len %d.\n",
+            reply->type, reply->req_id, reply->len);
+}
+
 static void do_ls_test(const char *pre)
 {
     char **dirs, *msg;
@@ -968,6 +969,7 @@ void test_xenbus(void)
     do_read_test("device/vif/0/flibble");
     printk("(Should have said ENOENT)\n");
 }
+#endif /* CONFIG_TEST */
 
 /*
  * Local variables:
-- 
2.26.2



From minios-devel-bounces@lists.xenproject.org Tue Aug 17 09:55:26 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Aug 2021 09:55:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.167686.306124 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFvoc-0007w6-8H; Tue, 17 Aug 2021 09:55:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 167686.306124; Tue, 17 Aug 2021 09:55:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFvoc-0007vz-4S; Tue, 17 Aug 2021 09:55:26 +0000
Received: by outflank-mailman (input) for mailman id 167686;
 Tue, 17 Aug 2021 09:55:24 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=OoW9=NI=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1mFvoa-0007HZ-Q9
 for minios-devel@lists.xenproject.org; Tue, 17 Aug 2021 09:55:24 +0000
Received: from smtp-out2.suse.de (unknown [195.135.220.29])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 370c78c1-ff41-11eb-a498-12813bfff9fa;
 Tue, 17 Aug 2021 09:55:13 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 805191FF2A;
 Tue, 17 Aug 2021 09:55:12 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id 50B9113318;
 Tue, 17 Aug 2021 09:55:12 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap1.suse-dmz.suse.de with ESMTPSA id cEsyEoCHG2FEDwAAGKfGzw
 (envelope-from <jgross@suse.com>); Tue, 17 Aug 2021 09:55:12 +0000
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 370c78c1-ff41-11eb-a498-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1629194112; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references;
	bh=z7e67WuvV4pKmdIXjVMDTNBcSJU1S8WTkTBIrXnVCNo=;
	b=nWFEioz4JgFpFDtLsmXwKUIjBQgufaQmMJankVSMenhEkuE0MvmQ3SQwix2GdbqoUbCPvG
	BjsN1jXHh5koKWK2TpcD4WOZ/eY9I4GnV2xdxFo6nrloS5kW7DbUIw3Ieja+oPmGiEvnhO
	eKco3UZL6Q52yL1qqn9SNy3Mf1OMCKQ=
From: Juergen Gross <jgross@suse.com>
To: minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org
Cc: samuel.thibault@ens-lyon.org,
	wl@xen.org,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH 1/2] mini-os: make config handling more generic
Date: Tue, 17 Aug 2021 11:54:58 +0200
Message-Id: <20210817095459.27671-2-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
In-Reply-To: <20210817095459.27671-1-jgross@suse.com>
References: <20210817095459.27671-1-jgross@suse.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

When adding a new CONFIG_ variable this needs to be done in multiple
places. Change the handling to be more generic.

This at once fixes a bug with CONFIG_XC which was not defined for the
C preprocessor (it seems that this never resulted in any real issues,
though).

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 Config.mk | 66 +++++++++++++++++++++++--------------------------------
 1 file changed, 28 insertions(+), 38 deletions(-)

diff --git a/Config.mk b/Config.mk
index cb823c2..15311ef 100644
--- a/Config.mk
+++ b/Config.mk
@@ -171,49 +171,39 @@ endif
 # CONFIG_ variables.
 
 # Configuration defaults
+CONFIG-y += CONFIG_START_NETWORK
+CONFIG-y += CONFIG_SPARSE_BSS
+CONFIG-y += CONFIG_BLKFRONT
+CONFIG-y += CONFIG_NETFRONT
+CONFIG-y += CONFIG_FBFRONT
+CONFIG-y += CONFIG_KBDFRONT
+CONFIG-y += CONFIG_CONSFRONT
+CONFIG-y += CONFIG_XENBUS
+CONFIG-y += CONFIG_XC
+CONFIG-n += CONFIG_QEMU_XS_ARGS
+CONFIG-n += CONFIG_TEST
+CONFIG-n += CONFIG_PCIFRONT
+CONFIG-n += CONFIG_TPMFRONT
+CONFIG-n += CONFIG_TPM_TIS
+CONFIG-n += CONFIG_TPMBACK
+CONFIG-n += CONFIG_BALLOON
+# Setting CONFIG_USE_XEN_CONSOLE copies all print output to the Xen emergency
+# console apart of standard dom0 handled console.
+CONFIG-n += CONFIG_USE_XEN_CONSOLE
 ifeq ($(TARGET_ARCH_FAM),x86)
-CONFIG_PARAVIRT ?= y
+CONFIG-y += CONFIG_PARAVIRT
 else
-CONFIG_PARAVIRT ?= n
+CONFIG-n += CONFIG_PARAVIRT
 endif
-CONFIG_START_NETWORK ?= y
-CONFIG_SPARSE_BSS ?= y
-CONFIG_QEMU_XS_ARGS ?= n
-CONFIG_TEST ?= n
-CONFIG_PCIFRONT ?= n
-CONFIG_BLKFRONT ?= y
-CONFIG_TPMFRONT ?= n
-CONFIG_TPM_TIS ?= n
-CONFIG_TPMBACK ?= n
-CONFIG_NETFRONT ?= y
-CONFIG_FBFRONT ?= y
-CONFIG_KBDFRONT ?= y
-CONFIG_CONSFRONT ?= y
-CONFIG_XENBUS ?= y
-CONFIG_XC ?=y
-CONFIG_LWIP ?= $(lwip)
-CONFIG_BALLOON ?= n
-# Setting CONFIG_USE_XEN_CONSOLE copies all print output to the Xen emergency
-# console apart of standard dom0 handled console.
-CONFIG_USE_XEN_CONSOLE ?= n
+CONFIG-$(lwip) += CONFIG_LWIP
+
+$(foreach i,$(CONFIG-y),$(eval $(i) ?= y))
+$(foreach i,$(CONFIG-n),$(eval $(i) ?= n))
+
+CONFIG-all := $(CONFIG-y) $(CONFIG-n)
 
 # Export config items as compiler directives
-DEFINES-$(CONFIG_PARAVIRT) += -DCONFIG_PARAVIRT
-DEFINES-$(CONFIG_START_NETWORK) += -DCONFIG_START_NETWORK
-DEFINES-$(CONFIG_SPARSE_BSS) += -DCONFIG_SPARSE_BSS
-DEFINES-$(CONFIG_QEMU_XS_ARGS) += -DCONFIG_QEMU_XS_ARGS
-DEFINES-$(CONFIG_PCIFRONT) += -DCONFIG_PCIFRONT
-DEFINES-$(CONFIG_BLKFRONT) += -DCONFIG_BLKFRONT
-DEFINES-$(CONFIG_TPMFRONT) += -DCONFIG_TPMFRONT
-DEFINES-$(CONFIG_TPM_TIS) += -DCONFIG_TPM_TIS
-DEFINES-$(CONFIG_TPMBACK) += -DCONFIG_TPMBACK
-DEFINES-$(CONFIG_NETFRONT) += -DCONFIG_NETFRONT
-DEFINES-$(CONFIG_KBDFRONT) += -DCONFIG_KBDFRONT
-DEFINES-$(CONFIG_FBFRONT) += -DCONFIG_FBFRONT
-DEFINES-$(CONFIG_CONSFRONT) += -DCONFIG_CONSFRONT
-DEFINES-$(CONFIG_XENBUS) += -DCONFIG_XENBUS
-DEFINES-$(CONFIG_BALLOON) += -DCONFIG_BALLOON
-DEFINES-$(CONFIG_USE_XEN_CONSOLE) += -DCONFIG_USE_XEN_CONSOLE
+$(foreach i,$(CONFIG-all),$(eval DEFINES-$($(i)) += -D$(i)))
 
 DEFINES-y += -D__XEN_INTERFACE_VERSION__=$(XEN_INTERFACE_VERSION)
 
-- 
2.26.2



From minios-devel-bounces@lists.xenproject.org Tue Aug 17 10:14:45 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Aug 2021 10:14:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.167702.306139 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFw7H-0002fw-TN; Tue, 17 Aug 2021 10:14:43 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 167702.306139; Tue, 17 Aug 2021 10:14:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFw7H-0002fp-QK; Tue, 17 Aug 2021 10:14:43 +0000
Received: by outflank-mailman (input) for mailman id 167702;
 Tue, 17 Aug 2021 10:14:42 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O7ht=NI=ens-lyon.org=samuel.thibault@srs-us1.protection.inumbo.net>)
 id 1mFw7G-0002fi-8P
 for minios-devel@lists.xenproject.org; Tue, 17 Aug 2021 10:14:42 +0000
Received: from hera.aquilenet.fr (unknown [185.233.100.1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 4f536afc-b243-4627-a5cb-be3615a70d6e;
 Tue, 17 Aug 2021 10:14:39 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 761F4140;
 Tue, 17 Aug 2021 12:14:37 +0200 (CEST)
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id BdcDoQExvbwW; Tue, 17 Aug 2021 12:14:33 +0200 (CEST)
Received: from begin (unknown [IPv6:2a01:cb19:956:1b00:de41:a9ff:fe47:ec49])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id C61A1B8;
 Tue, 17 Aug 2021 12:14:31 +0200 (CEST)
Received: from samy by begin with local (Exim 4.94.2)
 (envelope-from <samuel.thibault@ens-lyon.org>)
 id 1mFw74-002XiE-Na; Tue, 17 Aug 2021 12:14:30 +0200
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4f536afc-b243-4627-a5cb-be3615a70d6e
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Date: Tue, 17 Aug 2021 12:14:30 +0200
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
To: Juergen Gross <jgross@suse.com>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org,
	wl@xen.org
Subject: Re: [PATCH 1/2] mini-os: make config handling more generic
Message-ID: <20210817101430.fzr25viy54ygagnp@begin>
Mail-Followup-To: Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Juergen Gross <jgross@suse.com>, minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org, wl@xen.org
References: <20210817095459.27671-1-jgross@suse.com>
 <20210817095459.27671-2-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210817095459.27671-2-jgross@suse.com>
Organization: I am not organized
User-Agent: NeoMutt/20170609 (1.8.3)
X-Spamd-Bar: --
Authentication-Results: hera.aquilenet.fr
X-Rspamd-Server: hera
X-Rspamd-Queue-Id: 761F4140
X-Spamd-Result: default: False [-2.50 / 15.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.10)[text/plain];
	 HAS_ORG_HEADER(0.00)[];
	 RCVD_COUNT_THREE(0.00)[3];
	 RCVD_NO_TLS_LAST(0.10)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MID_RHS_NOT_FQDN(0.50)[];
	 BAYES_HAM(-3.00)[100.00%]

Juergen Gross, le mar. 17 août 2021 11:54:58 +0200, a ecrit:
> When adding a new CONFIG_ variable this needs to be done in multiple
> places. Change the handling to be more generic.
> 
> This at once fixes a bug with CONFIG_XC which was not defined for the
> C preprocessor (it seems that this never resulted in any real issues,
> though).
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> ---
>  Config.mk | 66 +++++++++++++++++++++++--------------------------------
>  1 file changed, 28 insertions(+), 38 deletions(-)
> 
> diff --git a/Config.mk b/Config.mk
> index cb823c2..15311ef 100644
> --- a/Config.mk
> +++ b/Config.mk
> @@ -171,49 +171,39 @@ endif
>  # CONFIG_ variables.
>  
>  # Configuration defaults
> +CONFIG-y += CONFIG_START_NETWORK
> +CONFIG-y += CONFIG_SPARSE_BSS
> +CONFIG-y += CONFIG_BLKFRONT
> +CONFIG-y += CONFIG_NETFRONT
> +CONFIG-y += CONFIG_FBFRONT
> +CONFIG-y += CONFIG_KBDFRONT
> +CONFIG-y += CONFIG_CONSFRONT
> +CONFIG-y += CONFIG_XENBUS
> +CONFIG-y += CONFIG_XC
> +CONFIG-n += CONFIG_QEMU_XS_ARGS
> +CONFIG-n += CONFIG_TEST
> +CONFIG-n += CONFIG_PCIFRONT
> +CONFIG-n += CONFIG_TPMFRONT
> +CONFIG-n += CONFIG_TPM_TIS
> +CONFIG-n += CONFIG_TPMBACK
> +CONFIG-n += CONFIG_BALLOON
> +# Setting CONFIG_USE_XEN_CONSOLE copies all print output to the Xen emergency
> +# console apart of standard dom0 handled console.
> +CONFIG-n += CONFIG_USE_XEN_CONSOLE
>  ifeq ($(TARGET_ARCH_FAM),x86)
> -CONFIG_PARAVIRT ?= y
> +CONFIG-y += CONFIG_PARAVIRT
>  else
> -CONFIG_PARAVIRT ?= n
> +CONFIG-n += CONFIG_PARAVIRT
>  endif
> -CONFIG_START_NETWORK ?= y
> -CONFIG_SPARSE_BSS ?= y
> -CONFIG_QEMU_XS_ARGS ?= n
> -CONFIG_TEST ?= n
> -CONFIG_PCIFRONT ?= n
> -CONFIG_BLKFRONT ?= y
> -CONFIG_TPMFRONT ?= n
> -CONFIG_TPM_TIS ?= n
> -CONFIG_TPMBACK ?= n
> -CONFIG_NETFRONT ?= y
> -CONFIG_FBFRONT ?= y
> -CONFIG_KBDFRONT ?= y
> -CONFIG_CONSFRONT ?= y
> -CONFIG_XENBUS ?= y
> -CONFIG_XC ?=y
> -CONFIG_LWIP ?= $(lwip)
> -CONFIG_BALLOON ?= n
> -# Setting CONFIG_USE_XEN_CONSOLE copies all print output to the Xen emergency
> -# console apart of standard dom0 handled console.
> -CONFIG_USE_XEN_CONSOLE ?= n
> +CONFIG-$(lwip) += CONFIG_LWIP
> +
> +$(foreach i,$(CONFIG-y),$(eval $(i) ?= y))
> +$(foreach i,$(CONFIG-n),$(eval $(i) ?= n))
> +
> +CONFIG-all := $(CONFIG-y) $(CONFIG-n)
>  
>  # Export config items as compiler directives
> -DEFINES-$(CONFIG_PARAVIRT) += -DCONFIG_PARAVIRT
> -DEFINES-$(CONFIG_START_NETWORK) += -DCONFIG_START_NETWORK
> -DEFINES-$(CONFIG_SPARSE_BSS) += -DCONFIG_SPARSE_BSS
> -DEFINES-$(CONFIG_QEMU_XS_ARGS) += -DCONFIG_QEMU_XS_ARGS
> -DEFINES-$(CONFIG_PCIFRONT) += -DCONFIG_PCIFRONT
> -DEFINES-$(CONFIG_BLKFRONT) += -DCONFIG_BLKFRONT
> -DEFINES-$(CONFIG_TPMFRONT) += -DCONFIG_TPMFRONT
> -DEFINES-$(CONFIG_TPM_TIS) += -DCONFIG_TPM_TIS
> -DEFINES-$(CONFIG_TPMBACK) += -DCONFIG_TPMBACK
> -DEFINES-$(CONFIG_NETFRONT) += -DCONFIG_NETFRONT
> -DEFINES-$(CONFIG_KBDFRONT) += -DCONFIG_KBDFRONT
> -DEFINES-$(CONFIG_FBFRONT) += -DCONFIG_FBFRONT
> -DEFINES-$(CONFIG_CONSFRONT) += -DCONFIG_CONSFRONT
> -DEFINES-$(CONFIG_XENBUS) += -DCONFIG_XENBUS
> -DEFINES-$(CONFIG_BALLOON) += -DCONFIG_BALLOON
> -DEFINES-$(CONFIG_USE_XEN_CONSOLE) += -DCONFIG_USE_XEN_CONSOLE
> +$(foreach i,$(CONFIG-all),$(eval DEFINES-$($(i)) += -D$(i)))
>  
>  DEFINES-y += -D__XEN_INTERFACE_VERSION__=$(XEN_INTERFACE_VERSION)


From minios-devel-bounces@lists.xenproject.org Tue Aug 17 10:16:17 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Aug 2021 10:16:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.167710.306164 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFw8m-0003h1-NI; Tue, 17 Aug 2021 10:16:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 167710.306164; Tue, 17 Aug 2021 10:16:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mFw8m-0003gv-KQ; Tue, 17 Aug 2021 10:16:16 +0000
Received: by outflank-mailman (input) for mailman id 167710;
 Tue, 17 Aug 2021 10:16:15 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=O7ht=NI=ens-lyon.org=samuel.thibault@srs-us1.protection.inumbo.net>)
 id 1mFw8k-0003Nf-U7
 for minios-devel@lists.xenproject.org; Tue, 17 Aug 2021 10:16:14 +0000
Received: from hera.aquilenet.fr (unknown [185.233.100.1])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 222d78c1-ff44-11eb-a49a-12813bfff9fa;
 Tue, 17 Aug 2021 10:16:07 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id C30FE140;
 Tue, 17 Aug 2021 12:16:06 +0200 (CEST)
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id WDfEdwOskQdw; Tue, 17 Aug 2021 12:16:02 +0200 (CEST)
Received: from begin (unknown [IPv6:2a01:cb19:956:1b00:de41:a9ff:fe47:ec49])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 054BDB8;
 Tue, 17 Aug 2021 12:16:02 +0200 (CEST)
Received: from samy by begin with local (Exim 4.94.2)
 (envelope-from <samuel.thibault@ens-lyon.org>)
 id 1mFw8X-002Xl7-Au; Tue, 17 Aug 2021 12:16:01 +0200
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 222d78c1-ff44-11eb-a49a-12813bfff9fa
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Date: Tue, 17 Aug 2021 12:16:01 +0200
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
To: Juergen Gross <jgross@suse.com>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org,
	wl@xen.org
Subject: Re: [PATCH 2/2] mini-os: move test functions under CONFIG_TEST
Message-ID: <20210817101601.k6mrqh5zje5shgak@begin>
Mail-Followup-To: Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Juergen Gross <jgross@suse.com>, minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org, wl@xen.org
References: <20210817095459.27671-1-jgross@suse.com>
 <20210817095459.27671-3-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210817095459.27671-3-jgross@suse.com>
Organization: I am not organized
User-Agent: NeoMutt/20170609 (1.8.3)
X-Spamd-Bar: --
Authentication-Results: hera.aquilenet.fr
X-Rspamd-Server: hera
X-Rspamd-Queue-Id: C30FE140
X-Spamd-Result: default: False [-2.50 / 15.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.10)[text/plain];
	 HAS_ORG_HEADER(0.00)[];
	 RCVD_COUNT_THREE(0.00)[3];
	 RCVD_NO_TLS_LAST(0.10)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MID_RHS_NOT_FQDN(0.50)[];
	 BAYES_HAM(-3.00)[100.00%]

Juergen Gross, le mar. 17 août 2021 11:54:59 +0200, a ecrit:
> There is no need to have the xenbus test support functions always
> included in Mini-OS. Move them inside #ifdef CONFIG_TEST.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> ---
>  xenbus/xenbus.c | 32 +++++++++++++++++---------------
>  1 file changed, 17 insertions(+), 15 deletions(-)
> 
> diff --git a/xenbus/xenbus.c b/xenbus/xenbus.c
> index fdb0934..11427ba 100644
> --- a/xenbus/xenbus.c
> +++ b/xenbus/xenbus.c
> @@ -573,21 +573,6 @@ static char *errmsg(struct xsd_sockmsg *rep)
>      return res;
>  }
>  
> -/* Send a debug message to xenbus.  Can block. */
> -static void xenbus_debug_msg(const char *msg)
> -{
> -    int len = strlen(msg);
> -    struct write_req req[] = {
> -        { "print", sizeof("print") },
> -        { msg, len },
> -        { "", 1 }};
> -    struct xsd_sockmsg *reply;
> -
> -    reply = xenbus_msg_reply(XS_DEBUG, 0, req, ARRAY_SIZE(req));
> -    printk("Got a reply, type %d, id %d, len %d.\n",
> -            reply->type, reply->req_id, reply->len);
> -}
> -
>  /* List the contents of a directory.  Returns a malloc()ed array of
>     pointers to malloc()ed strings.  The array is NULL terminated.  May
>     block. */
> @@ -882,6 +867,22 @@ domid_t xenbus_get_self_id(void)
>      return ret;
>  }
>  
> +#ifdef CONFIG_TEST
> +/* Send a debug message to xenbus.  Can block. */
> +static void xenbus_debug_msg(const char *msg)
> +{
> +    int len = strlen(msg);
> +    struct write_req req[] = {
> +        { "print", sizeof("print") },
> +        { msg, len },
> +        { "", 1 }};
> +    struct xsd_sockmsg *reply;
> +
> +    reply = xenbus_msg_reply(XS_DEBUG, 0, req, ARRAY_SIZE(req));
> +    printk("Got a reply, type %d, id %d, len %d.\n",
> +            reply->type, reply->req_id, reply->len);
> +}
> +
>  static void do_ls_test(const char *pre)
>  {
>      char **dirs, *msg;
> @@ -968,6 +969,7 @@ void test_xenbus(void)
>      do_read_test("device/vif/0/flibble");
>      printk("(Should have said ENOENT)\n");
>  }
> +#endif /* CONFIG_TEST */
>  
>  /*
>   * Local variables:
> -- 
> 2.26.2
> 


From minios-devel-bounces@lists.xenproject.org Wed Aug 18 15:26:25 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 18 Aug 2021 15:26:25 +0000
Received: from list by lists.xenproject.org with outflank-mailman.168289.307266 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mGNSR-0001rF-Qr; Wed, 18 Aug 2021 15:26:23 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 168289.307266; Wed, 18 Aug 2021 15:26:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mGNSR-0001r8-Nw; Wed, 18 Aug 2021 15:26:23 +0000
Received: by outflank-mailman (input) for mailman id 168289;
 Wed, 18 Aug 2021 15:26:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=jUNG=NJ=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1mGNSP-0001r2-Ot
 for minios-devel@lists.xenproject.org; Wed, 18 Aug 2021 15:26:21 +0000
Received: from smtp-out1.suse.de (unknown [195.135.220.28])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a530762d-025b-4ec1-b95e-f3ff4ecab5a7;
 Wed, 18 Aug 2021 15:26:19 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out1.suse.de (Postfix) with ESMTPS id A0F4622072;
 Wed, 18 Aug 2021 15:26:17 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id 68F9D1371C;
 Wed, 18 Aug 2021 15:26:17 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap1.suse-dmz.suse.de with ESMTPSA id HyKCF5kmHWGOfgAAGKfGzw
 (envelope-from <jgross@suse.com>); Wed, 18 Aug 2021 15:26:17 +0000
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a530762d-025b-4ec1-b95e-f3ff4ecab5a7
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1629300377; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=Ru9tdnr7RGNWbnwLSBztvmMC/Sy6D40bdl/GXajU2l4=;
	b=VRuUJ7c60SuloVWkLtr1a0bk9fGtwVfU4YyohCppk1Wii0i3LWWf0gD+krLeOgXBEmJgcL
	lFEp96KRUGMay54R3H11Dy0EJXttmkEbTlf9f3dw7hxELhy0sQAbk9USiBAdNzpW4Gf8Lq
	pm4jBM18M8tUANLwQyzQ2zKx50Fb4p0=
From: Juergen Gross <jgross@suse.com>
To: minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org
Cc: samuel.thibault@ens-lyon.org,
	wl@xen.org,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH] mini-os: xenbus: support large messages
Date: Wed, 18 Aug 2021 17:26:10 +0200
Message-Id: <20210818152610.6114-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Today the implementation of the xenbus protocol in Mini-OS will only
allow to transfer the complete message to or from the ring page buffer.
This is limiting the maximum message size to lower values as the xenbus
protocol normally would allow.

Change that by allowing to transfer the xenbus message in chunks as
soon as they are available.

Avoid crashing Mini-OS in case of illegal data read from the ring
buffer.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 xenbus/xenbus.c | 212 ++++++++++++++++++++++++++++--------------------
 1 file changed, 124 insertions(+), 88 deletions(-)

diff --git a/xenbus/xenbus.c b/xenbus/xenbus.c
index 23de61e..3fbb122 100644
--- a/xenbus/xenbus.c
+++ b/xenbus/xenbus.c
@@ -29,6 +29,7 @@
 #include <xen/hvm/params.h>
 #include <mini-os/spinlock.h>
 #include <mini-os/xmalloc.h>
+#include <mini-os/semaphore.h>
 
 #define min(x,y) ({                       \
         typeof(x) tmpx = (x);                 \
@@ -46,6 +47,7 @@
 static struct xenstore_domain_interface *xenstore_buf;
 static DECLARE_WAIT_QUEUE_HEAD(xb_waitq);
 DECLARE_WAIT_QUEUE_HEAD(xenbus_watch_queue);
+static __DECLARE_SEMAPHORE_GENERIC(xb_write_sem, 1);
 
 xenbus_event_queue xenbus_events;
 static struct watch {
@@ -231,75 +233,105 @@ char *xenbus_wait_for_state_change(const char* path, XenbusState *state, xenbus_
 }
 
 
+static void xenbus_read_data(char *buf, unsigned int len)
+{
+    unsigned int off = 0;
+    unsigned int prod;
+    unsigned int size;
+    int notify;
+
+    while (off != len)
+    {
+        if (xenstore_buf->rsp_prod == xenstore_buf->rsp_cons)
+            wait_event(xb_waitq,
+                       xenstore_buf->rsp_prod != xenstore_buf->rsp_cons);
+
+        prod = xenstore_buf->rsp_prod;
+        DEBUG("Rsp_cons %d, rsp_prod %d.\n", xenstore_buf->rsp_cons, prod);
+        size = min(len - off, prod - xenstore_buf->rsp_cons);
+        memcpy_from_ring(xenstore_buf->rsp, buf + off,
+                         MASK_XENSTORE_IDX(xenstore_buf->rsp_cons), size);
+        off += size;
+        notify = (xenstore_buf->rsp_cons + XENSTORE_RING_SIZE ==
+                  xenstore_buf->rsp_prod);
+        rmb();
+        xenstore_buf->rsp_cons += size;
+        wmb();
+        if (notify)
+            notify_remote_via_evtchn(xenbus_evtchn);
+    }
+}
+
 static void xenbus_thread_func(void *ign)
 {
     struct xsd_sockmsg msg;
-    unsigned prod = xenstore_buf->rsp_prod;
+    char *data;
 
     for (;;) {
-        wait_event(xb_waitq, prod != xenstore_buf->rsp_prod);
-        while (1) {
-            prod = xenstore_buf->rsp_prod;
-            DEBUG("Rsp_cons %d, rsp_prod %d.\n", xenstore_buf->rsp_cons,
-                  xenstore_buf->rsp_prod);
-            if (xenstore_buf->rsp_prod - xenstore_buf->rsp_cons < sizeof(msg))
-                break;
-            rmb();
-            memcpy_from_ring(xenstore_buf->rsp, &msg,
-                             MASK_XENSTORE_IDX(xenstore_buf->rsp_cons),
-                             sizeof(msg));
-            DEBUG("Msg len %d, %d avail, id %d.\n", msg.len + sizeof(msg),
-                  xenstore_buf->rsp_prod - xenstore_buf->rsp_cons, msg.req_id);
-
-            if (xenstore_buf->rsp_prod - xenstore_buf->rsp_cons <
-                sizeof(msg) + msg.len)
-                break;
-
-            DEBUG("Message is good.\n");
-
-            if (msg.type == XS_WATCH_EVENT) {
-                struct xenbus_event *event = malloc(sizeof(*event) + msg.len);
-                xenbus_event_queue *events = NULL;
-                char *data = (char*)event + sizeof(*event);
-                struct watch *watch;
-
-                memcpy_from_ring(xenstore_buf->rsp, data,
-                    MASK_XENSTORE_IDX(xenstore_buf->rsp_cons + sizeof(msg)),
-                    msg.len);
-
-                event->path = data;
-                event->token = event->path + strlen(event->path) + 1;
-
-                mb();
-                xenstore_buf->rsp_cons += msg.len + sizeof(msg);
-
-                for (watch = watches; watch; watch = watch->next)
-                    if (!strcmp(watch->token, event->token)) {
-                        events = watch->events;
-                        break;
-                    }
-
-                if (events) {
-                    event->next = *events;
-                    *events = event;
-                    wake_up(&xenbus_watch_queue);
-                } else {
-                    printk("unexpected watch token %s\n", event->token);
-                    free(event);
+        xenbus_read_data((char *)&msg, sizeof(msg));
+        DEBUG("Msg len %d, %d avail, id %d.\n", msg.len + sizeof(msg),
+              xenstore_buf->rsp_prod - xenstore_buf->rsp_cons, msg.req_id);
+
+        if (msg.len > XENSTORE_PAYLOAD_MAX) {
+            printk("Xenstore violates protocol, message longer than allowed.\n");
+            return;
+        }
+
+        if (msg.type == XS_WATCH_EVENT) {
+            struct xenbus_event *event = malloc(sizeof(*event) + msg.len);
+            xenbus_event_queue *events = NULL;
+            struct watch *watch;
+            char *c;
+            int zeroes = 0;
+
+            data = (char*)event + sizeof(*event);
+            xenbus_read_data(data, msg.len);
+
+            for (c = data; c < data + msg.len; c++)
+                if (!*c)
+                    zeroes++;
+            if (zeroes != 2) {
+                printk("Xenstore: illegal watch event data\n");
+                free(event);
+                continue;
+            }
+
+            event->path = data;
+            event->token = event->path + strlen(event->path) + 1;
+
+            for (watch = watches; watch; watch = watch->next)
+                if (!strcmp(watch->token, event->token)) {
+                    events = watch->events;
+                    break;
                 }
+
+            if (events) {
+                event->next = *events;
+                *events = event;
+                wake_up(&xenbus_watch_queue);
             } else {
-                req_info[msg.req_id].reply = malloc(sizeof(msg) + msg.len);
-                memcpy_from_ring(xenstore_buf->rsp, req_info[msg.req_id].reply,
-                                 MASK_XENSTORE_IDX(xenstore_buf->rsp_cons),
-                                 msg.len + sizeof(msg));
-                mb();
-                xenstore_buf->rsp_cons += msg.len + sizeof(msg);
-                wake_up(&req_info[msg.req_id].waitq);
+                printk("Xenstore: unexpected watch token %s\n", event->token);
+                free(event);
             }
 
-            wmb();
-            notify_remote_via_evtchn(xenbus_evtchn);
+            continue;
         }
+
+        data = malloc(sizeof(msg) + msg.len);
+        memcpy(data, &msg, sizeof(msg));
+        xenbus_read_data(data + sizeof(msg), msg.len);
+
+        if (msg.req_id >= NR_REQS || !req_info[msg.req_id].in_use) {
+            printk("Xenstore: illegal request id %d\n", msg.req_id);
+            free(data);
+            continue;
+        }
+
+        DEBUG("Message is good.\n");
+
+        req_info[msg.req_id].reply = data;
+
+        wake_up(&req_info[msg.req_id].waitq);
     }
 }
 
@@ -451,36 +483,40 @@ static void xb_write(int type, int req_id, xenbus_transaction_t trans_id,
 
     cur_req = &header_req;
 
-    BUG_ON(len > XENSTORE_RING_SIZE);
-    /* Wait for the ring to drain to the point where we can send the
-       message. */
-    prod = xenstore_buf->req_prod;
-    if (prod + len - xenstore_buf->req_cons > XENSTORE_RING_SIZE) 
-    {
-        /* Wait for there to be space on the ring */
-        DEBUG("prod %d, len %d, cons %d, size %d; waiting.\n",
-                prod, len, xenstore_buf->req_cons, XENSTORE_RING_SIZE);
-        wait_event(xb_waitq,
-                xenstore_buf->req_prod + len - xenstore_buf->req_cons <=
-                XENSTORE_RING_SIZE);
-        DEBUG("Back from wait.\n");
-        prod = xenstore_buf->req_prod;
-    }
+    BUG_ON(len > XENSTORE_PAYLOAD_MAX);
 
-    /* We're now guaranteed to be able to send the message without
-       overflowing the ring.  Do so. */
+    /* Make sure we are the only thread trying to write. */
+    down(&xb_write_sem);
+
+    /* Send the message in chunks using free ring space when available. */
     total_off = 0;
     req_off = 0;
-    while (total_off < len) 
+    while (total_off < len)
     {
+        prod = xenstore_buf->req_prod;
+        if (prod - xenstore_buf->req_cons >= XENSTORE_RING_SIZE)
+        {
+            /* Send evtchn to notify remote */
+            notify_remote_via_evtchn(xenbus_evtchn);
+
+            /* Wait for there to be space on the ring */
+            DEBUG("prod %d, len %d, cons %d, size %d; waiting.\n", prod,
+                  len - total_off, xenstore_buf->req_cons, XENSTORE_RING_SIZE);
+            wait_event(xb_waitq,
+                       prod - xenstore_buf->req_cons < XENSTORE_RING_SIZE);
+            DEBUG("Back from wait.\n");
+        }
+
         this_chunk = min(cur_req->len - req_off,
-                XENSTORE_RING_SIZE - MASK_XENSTORE_IDX(prod));
+                         XENSTORE_RING_SIZE - MASK_XENSTORE_IDX(prod));
+        this_chunk = min(this_chunk,
+                         xenstore_buf->req_cons + XENSTORE_RING_SIZE - prod);
         memcpy((char *)xenstore_buf->req + MASK_XENSTORE_IDX(prod),
-                (char *)cur_req->data + req_off, this_chunk);
+               (char *)cur_req->data + req_off, this_chunk);
         prod += this_chunk;
         req_off += this_chunk;
         total_off += this_chunk;
-        if (req_off == cur_req->len) 
+        if (req_off == cur_req->len)
         {
             req_off = 0;
             if (cur_req == &header_req)
@@ -488,20 +524,20 @@ static void xb_write(int type, int req_id, xenbus_transaction_t trans_id,
             else
                 cur_req++;
         }
+
+        /* Remote must see entire message before updating indexes */
+        wmb();
+        xenstore_buf->req_prod = prod;
     }
 
+    /* Send evtchn to notify remote */
+    notify_remote_via_evtchn(xenbus_evtchn);
+
     DEBUG("Complete main loop of xb_write.\n");
     BUG_ON(req_off != 0);
     BUG_ON(total_off != len);
-    BUG_ON(prod > xenstore_buf->req_cons + XENSTORE_RING_SIZE);
-
-    /* Remote must see entire message before updating indexes */
-    wmb();
-
-    xenstore_buf->req_prod += len;
 
-    /* Send evtchn to notify remote */
-    notify_remote_via_evtchn(xenbus_evtchn);
+    up(&xb_write_sem);
 }
 
 /* Send a mesasge to xenbus, in the same fashion as xb_write, and
-- 
2.26.2



From minios-devel-bounces@lists.xenproject.org Thu Aug 19 05:31:11 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Aug 2021 05:31:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.168384.307445 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mGadx-00048A-Oc; Thu, 19 Aug 2021 05:31:09 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 168384.307445; Thu, 19 Aug 2021 05:31:09 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mGadx-00047z-Ky; Thu, 19 Aug 2021 05:31:09 +0000
Received: by outflank-mailman (input) for mailman id 168384;
 Thu, 19 Aug 2021 05:31:08 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=/7+2=NK=suse.com=jgross@srs-us1.protection.inumbo.net>)
 id 1mGadw-0003rI-Kd
 for minios-devel@lists.xenproject.org; Thu, 19 Aug 2021 05:31:08 +0000
Received: from smtp-out2.suse.de (unknown [195.135.220.29])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id a3d6454f-00ae-11ec-a5b3-12813bfff9fa;
 Thu, 19 Aug 2021 05:31:02 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by smtp-out2.suse.de (Postfix) with ESMTPS id 315D41FD2D;
 Thu, 19 Aug 2021 05:31:01 +0000 (UTC)
Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512)
 (No client certificate requested)
 by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id F1AA31371C;
 Thu, 19 Aug 2021 05:31:00 +0000 (UTC)
Received: from dovecot-director2.suse.de ([192.168.254.65])
 by imap1.suse-dmz.suse.de with ESMTPSA id WOnxOJTsHWEzFgAAGKfGzw
 (envelope-from <jgross@suse.com>); Thu, 19 Aug 2021 05:31:00 +0000
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a3d6454f-00ae-11ec-a5b3-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1;
	t=1629351061; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc:
	 mime-version:mime-version:  content-transfer-encoding:content-transfer-encoding;
	bh=JAlAwR9/QksTzRSgjsQCc86kQ6ZiSu8rGtdbGLfgZFw=;
	b=qUfHRUp4JLy98LyOC+faN9t1R0hLK1Rk6uOLQQtwBdMkLLL5KQvuX5KL0Bk4a2B1Sgk4Oq
	kXbTG3n/EEPyvOgGxtAsnIrjYoP7hj5l5vWn2mb/Wz407/Q1TS+XLAnWZaKuT9053wUl7z
	34IoPGJ/QgVjuHmTfgo19BMXmVgzwBM=
From: Juergen Gross <jgross@suse.com>
To: minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org
Cc: samuel.thibault@ens-lyon.org,
	wl@xen.org,
	Juergen Gross <jgross@suse.com>
Subject: [PATCH] mini-os: netfront: fix initialization without ip address in xenstore
Date: Thu, 19 Aug 2021 07:30:56 +0200
Message-Id: <20210819053056.32675-1-jgross@suse.com>
X-Mailer: git-send-email 2.26.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Commit 4821876fcd2ff ("mini-os: netfront: fix suspend/resume handling")
introduced a NULL pointer dereference in the initialization of netfront
in the case of no IP address being set in Xenstore.

Fix that by testing this condition. At the same time fix a long
standing bug for the same condition if someone used init_netfront()
with a non-NULL ip parameter.

Fixes: 4821876fcd2ff ("mini-os: netfront: fix suspend/resume handling")
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 netfront.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/netfront.c b/netfront.c
index f927e99..dfe065b 100644
--- a/netfront.c
+++ b/netfront.c
@@ -365,7 +365,7 @@ out:
         rawmac[5] = dev->rawmac[5];
 	}
     if (ip)
-        *ip = strdup(dev->ip);
+        *ip = dev->ip ? strdup(dev->ip) : NULL;
 
 err:
     return dev;
@@ -527,7 +527,7 @@ done:
         snprintf(path, sizeof(path), "%s/ip", dev->backend);
         xenbus_read(XBT_NIL, path, &dev->ip);
 
-        p = strchr(dev->ip, ' ');
+        p = dev->ip ? strchr(dev->ip, ' ') : NULL;
         if (p) {
             *p++ = '\0';
             dev->mask = p;
-- 
2.26.2



From minios-devel-bounces@lists.xenproject.org Thu Aug 19 07:13:24 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 19 Aug 2021 07:13:24 +0000
Received: from list by lists.xenproject.org with outflank-mailman.168399.307471 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mGcEs-0006Bi-G2; Thu, 19 Aug 2021 07:13:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 168399.307471; Thu, 19 Aug 2021 07:13:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mGcEs-0006Ba-Cj; Thu, 19 Aug 2021 07:13:22 +0000
Received: by outflank-mailman (input) for mailman id 168399;
 Thu, 19 Aug 2021 07:13:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=sPwx=NK=ens-lyon.org=samuel.thibault@srs-us1.protection.inumbo.net>)
 id 1mGcEr-0005vD-Ca
 for minios-devel@lists.xenproject.org; Thu, 19 Aug 2021 07:13:21 +0000
Received: from hera.aquilenet.fr (unknown [2a0c:e300::1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 571c985f-85e9-4db5-b543-88f6de9b5c29;
 Thu, 19 Aug 2021 07:13:14 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id E723B261;
 Thu, 19 Aug 2021 09:13:12 +0200 (CEST)
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id R9IsyADec-bF; Thu, 19 Aug 2021 09:13:08 +0200 (CEST)
Received: from begin (unknown [IPv6:2a01:cb19:956:1b00:de41:a9ff:fe47:ec49])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 4CA19222;
 Thu, 19 Aug 2021 09:13:08 +0200 (CEST)
Received: from samy by begin with local (Exim 4.94.2)
 (envelope-from <samuel.thibault@ens-lyon.org>)
 id 1mGcEd-008yRU-Ds; Thu, 19 Aug 2021 09:13:07 +0200
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 571c985f-85e9-4db5-b543-88f6de9b5c29
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Date: Thu, 19 Aug 2021 09:13:07 +0200
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
To: Juergen Gross <jgross@suse.com>
Cc: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org,
	wl@xen.org
Subject: Re: [PATCH] mini-os: netfront: fix initialization without ip address
 in xenstore
Message-ID: <20210819071307.zitx72bbylsusxkx@begin>
Mail-Followup-To: Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Juergen Gross <jgross@suse.com>, minios-devel@lists.xenproject.org,
	xen-devel@lists.xenproject.org, wl@xen.org
References: <20210819053056.32675-1-jgross@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20210819053056.32675-1-jgross@suse.com>
Organization: I am not organized
User-Agent: NeoMutt/20170609 (1.8.3)
X-Spamd-Bar: --
Authentication-Results: hera.aquilenet.fr
X-Rspamd-Server: hera
X-Rspamd-Queue-Id: E723B261
X-Spamd-Result: default: False [-2.50 / 15.00];
	 ARC_NA(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.10)[text/plain];
	 HAS_ORG_HEADER(0.00)[];
	 RCVD_COUNT_THREE(0.00)[3];
	 RCVD_NO_TLS_LAST(0.10)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MID_RHS_NOT_FQDN(0.50)[];
	 BAYES_HAM(-3.00)[100.00%]

Juergen Gross, le jeu. 19 août 2021 07:30:56 +0200, a ecrit:
> Commit 4821876fcd2ff ("mini-os: netfront: fix suspend/resume handling")
> introduced a NULL pointer dereference in the initialization of netfront
> in the case of no IP address being set in Xenstore.
> 
> Fix that by testing this condition. At the same time fix a long
> standing bug for the same condition if someone used init_netfront()
> with a non-NULL ip parameter.
> 
> Fixes: 4821876fcd2ff ("mini-os: netfront: fix suspend/resume handling")
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> ---
>  netfront.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/netfront.c b/netfront.c
> index f927e99..dfe065b 100644
> --- a/netfront.c
> +++ b/netfront.c
> @@ -365,7 +365,7 @@ out:
>          rawmac[5] = dev->rawmac[5];
>  	}
>      if (ip)
> -        *ip = strdup(dev->ip);
> +        *ip = dev->ip ? strdup(dev->ip) : NULL;
>  
>  err:
>      return dev;
> @@ -527,7 +527,7 @@ done:
>          snprintf(path, sizeof(path), "%s/ip", dev->backend);
>          xenbus_read(XBT_NIL, path, &dev->ip);
>  
> -        p = strchr(dev->ip, ' ');
> +        p = dev->ip ? strchr(dev->ip, ' ') : NULL;
>          if (p) {
>              *p++ = '\0';
>              dev->mask = p;
> -- 
> 2.26.2


From minios-devel-bounces@lists.xenproject.org Thu Aug 26 10:20:40 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Aug 2021 10:20:40 +0000
Received: from list by lists.xenproject.org with outflank-mailman.172912.315521 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mJCUw-0004zU-50; Thu, 26 Aug 2021 10:20:38 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 172912.315521; Thu, 26 Aug 2021 10:20:38 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mJCUw-0004zL-1u; Thu, 26 Aug 2021 10:20:38 +0000
Received: by outflank-mailman (input) for mailman id 172912;
 Thu, 26 Aug 2021 10:20:37 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <SRS0=HXzX=NR=suse.com=jbeulich@srs-us1.protection.inumbo.net>)
 id 1mJCUv-0004gq-JL
 for minios-devel@lists.xenproject.org; Thu, 26 Aug 2021 10:20:37 +0000
Received: from de-smtp-delivery-102.mimecast.com (unknown [194.104.109.102])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 982dae5d-3f69-4f7d-a5e3-609e5fa890aa;
 Thu, 26 Aug 2021 10:20:32 +0000 (UTC)
Received: from EUR01-VE1-obe.outbound.protection.outlook.com
 (mail-ve1eur01lp2057.outbound.protection.outlook.com [104.47.1.57]) (Using
 TLS) by relay.mimecast.com with ESMTP id
 de-mta-17-Og2hYKa9Ocq1qQaRhWuaBg-1; Thu, 26 Aug 2021 12:20:29 +0200
Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16)
 by VI1PR04MB4384.eurprd04.prod.outlook.com (2603:10a6:803:6f::26)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4436.19; Thu, 26 Aug
 2021 10:20:29 +0000
Received: from VI1PR04MB5600.eurprd04.prod.outlook.com
 ([fe80::4d37:ec64:4e90:b16b]) by VI1PR04MB5600.eurprd04.prod.outlook.com
 ([fe80::4d37:ec64:4e90:b16b%7]) with mapi id 15.20.4457.017; Thu, 26 Aug 2021
 10:20:29 +0000
Received: from [10.156.60.236] (37.24.206.209) by
 AM4PR0701CA0024.eurprd07.prod.outlook.com (2603:10a6:200:42::34) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.9 via Frontend
 Transport; Thu, 26 Aug 2021 10:20:28 +0000
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 982dae5d-3f69-4f7d-a5e3-609e5fa890aa
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619;
	t=1629973231;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=gM66SGIX8qXvHn91ogQHgEbJLUM5BeCodBHE2m3SzTw=;
	b=JVoXiQSGHmhsrT1Sle1iY6yapIc/yFfQj4+sbePLjPhAtsQFPFteLcI92jW81o5OTkTlYn
	c0ve50WsE8CPl8Ba+Z7F98PZijD1frGYYrqUSO9oJI1HiZRBNgYeW/wPv437/8d83WDro6
	jfaEv4OyR4soY0DN723OQkddVupseVA=
X-MC-Unique: Og2hYKa9Ocq1qQaRhWuaBg-1
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ATK8CvPTEBnAg3JDROcer4E+aJbsOnAsTzOgHVcmcXPCl8hJEo7MO0qwz3icg8Vw9RM0HUMKR5P4Cf73c1kKwMojGsJ1KXuqJsLEf2ZuNGcr7OOabGiSuwSrKnffqAuvWcMVmy4OUAtP12zmpKTma0gN5bUGJBlHHPOVkYzgz+UnLP5hjBp/sB81bw0gBdTip4ss5jw4ahe7crQzoX6hgtWUIxven2WRdNO89L2966vChiJw6ndEjLTJ4jF5809f88w4rqCMXA//pW92ht90knCaphRxPRfI+6DyfRzY6yMOwK4FH+U5liuYSQVEPUgsCE8M63JgkmrDNplH97uLrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=gM66SGIX8qXvHn91ogQHgEbJLUM5BeCodBHE2m3SzTw=;
 b=L8FWT6tRzM5bgFJdHp/BTxWQ357Mnv706kgkVV4c6/fxRDlnDYGFzGZVANKHl1Q3aRxlvldQKTdQyI5o/speozwuiCpwVJDHfyW7eaLCBKltgd4eo2vh4R6nwtOc5/xJGksGmgOIgGs2VhycWw/b5vnOhHQ49l5W326U20C1kpPO5g9DZIAHDx+I69/fVZhvbEypTUpe2KXZC6QuzIEP/6BRi6B2KQI0Ymlf7ZW1N0MP8StzbNzmy3cnBlXQvmF09+CPfoqL0Tznc1an9u63oD4IQ4u8kD89IAr+aGEcQBFEo6QuySA+qAUygNRNIQwfNKhORvhZ1BWT7mjTej6wuQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com;
 dkim=pass header.d=suse.com; arc=none
Authentication-Results: lists.xenproject.org; dkim=none (message not signed)
 header.d=none;lists.xenproject.org; dmarc=none action=none
 header.from=suse.com;
To: Minios-devel <minios-devel@lists.xenproject.org>
Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>, Wei Liu <wl@xen.org>,
 "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
From: Jan Beulich <jbeulich@suse.com>
Subject: [PATCH MINI-OS] gnttab: drop GNTMAP_can_fail
Message-ID: <6b356c6d-d9d5-65ca-50b9-4381d535fe79@suse.com>
Date: Thu, 26 Aug 2021 12:20:26 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.13.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-ClientProxiedBy: AM4PR0701CA0024.eurprd07.prod.outlook.com
 (2603:10a6:200:42::34) To VI1PR04MB5600.eurprd04.prod.outlook.com
 (2603:10a6:803:e7::16)
MIME-Version: 1.0
X-MS-Exchange-MessageSentRepresentingType: 1
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 77828429-971b-4c8d-be17-08d9687b20ab
X-MS-TrafficTypeDiagnostic: VI1PR04MB4384:
X-Microsoft-Antispam-PRVS:
	<VI1PR04MB4384F5B3CDE434E7BE2C3460B3C79@VI1PR04MB4384.eurprd04.prod.outlook.com>
X-MS-Oob-TLC-OOBClassifiers: OLM:6430;
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info:
	d+avy9651hcs/4/BcKoxlyYke+oqJqGuHJuQTbeqqnGhKwXYRctkggt1iz+Q8bKBYEAsb+ixwkwgIjo8yi/bNQh+/G8X4MeBKujb/61eZuaHylvILOne3BOKwGzRfwyglbtLfZWaoJodBnkL3853uQNs1jK8E0TsQ6UYqNqU17nE9HzwCVaEfacE9KECbheKHOdm/fvr3tIUoWUKhkFDE5851YEWtIp+cT6taeQfciRvbFF8pkdfdy38Bio/3PYFTZCJqiS1SCo7mLUZ/eC+T8NALOC17vp73cUGSmdRwr3lb9v/BUACWgYkUc/7/xkBAFDKI+wmah0fFIWLo05JeeFTNKPGP6foTAnZ26PNkxVuQvlS2MIEgWRYI5vEiEUrQmuc1q5JF7RjJ7uxRLTpEk40aTknyIxYE+ftR76GVpIxrtlSFuLi2pPOk1n0ZrQT9snDC/jyb+wLJuGfJBC6jygjsbLSFDQi0rgzHPlzYFgTKbcsmZbvuG0SjnsDHZGld+uX19q/ekUEK1wx0wtTiqa+8e5HsQr6Gs2xXfAIhLEQAlR9qvlsP7VhiSes0ah3y61IoBij+MChGrmgbOjRshsxuUmg8w5Rk88H5Sn6UVIORfRMKm3pEBcMb8O+1RMdKyYYemgtgE3dj95HdafoNqHWkH+zttjGfqF2BpdeXNE9B4BqCaYaqxSNovzMr3NZmf1+6SnEov9Hqvxj4V9507ncZUiRMtpr92KPMOraIIw=
X-Forefront-Antispam-Report:
	CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR04MB5600.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(396003)(346002)(376002)(136003)(39860400002)(5660300002)(956004)(86362001)(186003)(66556008)(66946007)(66476007)(31686004)(36756003)(6486002)(2906002)(8676002)(2616005)(26005)(4326008)(478600001)(4744005)(6916009)(16576012)(8936002)(316002)(54906003)(38100700002)(31696002)(45980500001)(43740500002);DIR:OUT;SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0:
	=?utf-8?B?VXRZdVhkZDdQZFdZS0kvTHNQSDY2eS9TWk9pTGJDcWJsWWtyb3hsUkJOZVpK?=
 =?utf-8?B?N1p4TWxEL0dGUTVkdUVXYTVvZnNnM1VNaUJRL3RZWlFqVWNDYTRvaWNDYkJC?=
 =?utf-8?B?dTBnNWJpcmpiUmJQYWFJNHQ1VTArQUQxazhybXBValUvYlhZTDB3SGJ3STZa?=
 =?utf-8?B?dUEydU02bDdZUTNVeUUrWTFPY0sxbVVwM0dRTm5XbUhMVDdNR3ZNd3dodXFE?=
 =?utf-8?B?RjMrdXIzck5MeVV2ZGZmRkFpOTRBMjc2aEoxZHNTejhmNjNyM3ZsVnVYMkRl?=
 =?utf-8?B?SFJNSTg0dGxxNVVOR1R4Z2NQWEtwU2Q1Q1lZelJoSWxnSm1BcEI0L0NDdG9x?=
 =?utf-8?B?WUdMdk5vZEZiNkhUMGdsU1BZOTg2MmtSQVJnM1VSdDFOdk9YKzBTOHAvR09a?=
 =?utf-8?B?ZHg3MUZENU5GbnY2dkRNSDFDZy9DNlN4SE1hUUNlQmJkYUw1YzQxMDd5cGtG?=
 =?utf-8?B?eE1INzEwNkNXSVNZOWNiazhTOERYSTJhTWxUdzRlVkNIa200cTBWN1dKT1FM?=
 =?utf-8?B?UU1CSlg0QnYycnd3TUFmV3RibnhodUpXdFlkTnNjNmY1RWxDZkNyYjl3OUFO?=
 =?utf-8?B?cDBFQXcvYnE0SitQMk9KZ0I2VW04ZlIvTTc2dGVPVUZxNW5mOGtUUTVMbmZ4?=
 =?utf-8?B?dEttRG9OeWxLaE5TVmV1T3ZkcVE0aGtldzd4Zm55VDU2U0M1dVJuRjM2b1VC?=
 =?utf-8?B?dGQyc0tqMW9xMkVWTk90R0dWZG9waEl6ZUJ4REJNbWxzYlF0L0RFQzlBR09R?=
 =?utf-8?B?YlZLVFJtV0pMaUdGdTI3dllCQ3ZUYkk5N1dxdkdFQlIyOC9xT1hXQzlaTXNF?=
 =?utf-8?B?VXNHNXJPZEd6M0dIUjFHbHlmZk84SnBlY21xa3JiTUV2Zmg3M2pvREd5WG8y?=
 =?utf-8?B?Q1orbzc2RHQ5NEgweFlJWFRRNERrdXd4bWhiU0pjbi9LcERlOGNNclVNTk9a?=
 =?utf-8?B?azFSNThRa3J4bnlkemw1eVByditDOWhkd0dPTFhGNTc4MjZMODFPTVJFMEZ1?=
 =?utf-8?B?dkZHNFEzQTl5Q05yS0U1WW9UejdZY3B4S0lIRnZ0TnpScEFKN3FFb1YvWHRX?=
 =?utf-8?B?dFM1STJRV1EyL0xwYzY5Q3F4N2ZpRllUVlV1cjZGKy9CU1lYdHVSeC9ET29a?=
 =?utf-8?B?MFhqcjlCQ2IrNlkzTzRBUEgwSmJjM3gyRjhnZXNDOFJFWVdsemZvTWJqdEp1?=
 =?utf-8?B?SXNNdzlERnRBUjJ4SW03MzVOTk5qNEp5WFdRb1FLazVlNXFLOXBpVnJMZlpa?=
 =?utf-8?B?WVBTa0V6R3N4dHB0aFFwU3d6S0JFWFdQYmgzaEFwTkd1bjV5LzRGd3h6L0RK?=
 =?utf-8?B?VFRqNi91VkZFTmNWeXYrbnBBYUdDQVdkUisyaENOMERJS3Z2UGJxUm9pTFRx?=
 =?utf-8?B?Y3NLZ2lhcGRQNGtKTVVqdUROM2c3dFYxWDhNa3EyZzZ1RXpjelpFbmRKaE9z?=
 =?utf-8?B?aWZQN3V1SklpVUMwOUtaK2JVTVRmT21WM3RiRnU2aVhGZHJVQ0V0STQwcDl1?=
 =?utf-8?B?WTdpbURKTUZVSm5SRWZBTFY1THpsZEJTcEw4RkI2SU5KS1Z6b1dmcXhUMWJJ?=
 =?utf-8?B?dkNkRkNRa01Vd2NTVWZXK3lDQ1NielFORm4wRWxhOEhIQkRIS1J0cWUwNFcw?=
 =?utf-8?B?a3d6bjhsY2VYOGgyVVN0bkhPOTcrOWNCd2xaK3UrTmI4UzMyQUhnd0k1eWJV?=
 =?utf-8?B?RExlUi9SdUhJUXp1Y3VVL2F5bldGenhsVythaFQvZlpPNzA5ZDVrZmEwbnl3?=
 =?utf-8?Q?vC58ifi1Ek4buYdeiV5a5aufHXhrhh7oI7Fi6um?=
X-OriginatorOrg: suse.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 77828429-971b-4c8d-be17-08d9687b20ab
X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Aug 2021 10:20:28.8967
 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: hrCilkg1TuNO68uBt30aHQjurkVZTkHh8u7ZTBY8cmxwb+I4bvSyy86PoRAaVa8zR7LPmD5nP6u+upWKUYcdzA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB4384

There's neither documentation of what this flag is supposed to mean, nor
any implementation in the hypervisor.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/include/xen/grant_table.h
+++ b/include/xen/grant_table.h
@@ -627,9 +627,6 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_cache_flu
 #define _GNTMAP_contains_pte    (4)
 #define GNTMAP_contains_pte     (1<<_GNTMAP_contains_pte)
 
-#define _GNTMAP_can_fail        (5)
-#define GNTMAP_can_fail         (1<<_GNTMAP_can_fail)
-
 /*
  * Bits to be placed in guest kernel available PTE bits (architecture
  * dependent; only supported when XENFEAT_gnttab_map_avail_bits is set).



From minios-devel-bounces@lists.xenproject.org Thu Aug 26 10:33:38 2021
Return-path: <minios-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 26 Aug 2021 10:33:38 +0000
Received: from list by lists.xenproject.org with outflank-mailman.172925.315543 (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mJChV-0007L8-Fw; Thu, 26 Aug 2021 10:33:37 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 172925.315543; Thu, 26 Aug 2021 10:33:37 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <minios-devel-bounces@lists.xenproject.org>)
	id 1mJChV-0007L1-D0; Thu, 26 Aug 2021 10:33:37 +0000
Received: by outflank-mailman (input) for mailman id 172925;
 Thu, 26 Aug 2021 10:33:36 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=9eI9=NR=ens-lyon.org=samuel.thibault@srs-us1.protection.inumbo.net>)
 id 1mJChU-0007Kc-N2
 for minios-devel@lists.xenproject.org; Thu, 26 Aug 2021 10:33:36 +0000
Received: from hera.aquilenet.fr (unknown [185.233.100.1])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 6943740e-03bd-4a0c-927d-6f93bac6bd5f;
 Thu, 26 Aug 2021 10:33:34 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 49F2C1A5;
 Thu, 26 Aug 2021 12:33:33 +0200 (CEST)
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id R0SAFipxd0yY; Thu, 26 Aug 2021 12:33:28 +0200 (CEST)
Received: from begin (unknown [IPv6:2a01:cb19:956:1b00:de41:a9ff:fe47:ec49])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 9ECF688;
 Thu, 26 Aug 2021 12:33:28 +0200 (CEST)
Received: from samy by begin with local (Exim 4.94.2)
 (envelope-from <samuel.thibault@ens-lyon.org>)
 id 1mJChL-004NeY-N3; Thu, 26 Aug 2021 12:33:27 +0200
X-BeenThere: minios-devel@lists.xenproject.org
List-Id: Mini-os development list <minios-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/mailman/options/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:minios-devel@lists.xenproject.org>
List-Help: <mailto:minios-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/minios-devel>, 
 <mailto:minios-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: minios-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "Minios-devel" <minios-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 6943740e-03bd-4a0c-927d-6f93bac6bd5f
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Date: Thu, 26 Aug 2021 12:33:27 +0200
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
To: Jan Beulich <jbeulich@suse.com>
Cc: Minios-devel <minios-devel@lists.xenproject.org>, Wei Liu <wl@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH MINI-OS] gnttab: drop GNTMAP_can_fail
Message-ID: <20210826103327.diijakop36vvrzu7@begin>
Mail-Followup-To: Samuel Thibault <samuel.thibault@ens-lyon.org>,
	Jan Beulich <jbeulich@suse.com>,
	Minios-devel <minios-devel@lists.xenproject.org>,
	Wei Liu <wl@xen.org>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
References: <6b356c6d-d9d5-65ca-50b9-4381d535fe79@suse.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <6b356c6d-d9d5-65ca-50b9-4381d535fe79@suse.com>
Organization: I am not organized
User-Agent: NeoMutt/20170609 (1.8.3)
X-Spamd-Bar: --
Authentication-Results: hera.aquilenet.fr
X-Rspamd-Server: hera
X-Rspamd-Queue-Id: 49F2C1A5
X-Spamd-Result: default: False [-2.50 / 15.00];
	 ARC_NA(0.00)[];
	 TO_DN_EQ_ADDR_SOME(0.00)[];
	 RCVD_VIA_SMTP_AUTH(0.00)[];
	 FROM_HAS_DN(0.00)[];
	 RCPT_COUNT_THREE(0.00)[4];
	 TO_DN_SOME(0.00)[];
	 TO_MATCH_ENVRCPT_ALL(0.00)[];
	 MIME_GOOD(-0.10)[text/plain];
	 HAS_ORG_HEADER(0.00)[];
	 RCVD_COUNT_THREE(0.00)[3];
	 RCVD_NO_TLS_LAST(0.10)[];
	 FROM_EQ_ENVFROM(0.00)[];
	 MID_RHS_NOT_FQDN(0.50)[];
	 BAYES_HAM(-3.00)[100.00%]

Jan Beulich, le jeu. 26 août 2021 12:20:26 +0200, a ecrit:
> There's neither documentation of what this flag is supposed to mean, nor
> any implementation in the hypervisor.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

> --- a/include/xen/grant_table.h
> +++ b/include/xen/grant_table.h
> @@ -627,9 +627,6 @@ DEFINE_XEN_GUEST_HANDLE(gnttab_cache_flu
>  #define _GNTMAP_contains_pte    (4)
>  #define GNTMAP_contains_pte     (1<<_GNTMAP_contains_pte)
>  
> -#define _GNTMAP_can_fail        (5)
> -#define GNTMAP_can_fail         (1<<_GNTMAP_can_fail)
> -
>  /*
>   * Bits to be placed in guest kernel available PTE bits (architecture
>   * dependent; only supported when XENFEAT_gnttab_map_avail_bits is set).
> 


