From nobody Mon Apr 29 14:58:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1635408790; cv=none; d=zohomail.com; s=zohoarc; b=APxTIdcMRDyqofA3seQDYI2cPKVZ1F6CQziKjrPx9ozPc0ickMbrff/vg+w1YOOAtW78oPCjg3OMhS0XBnUivCmyDWjJ1W2Ive45YXWtlL7ezLS3L5xr05fQVuRpsQOLykDumhFLUjp9U9xn67zXTSULZDznGQJ4q++LZkPgu/A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1635408790; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=cWdDMKt9ZR6fJrJlomm3JcZ8sxGTe4D9W9jT8YxWMnw=; b=XUZX3+r+d64uOgycsvMUsIYrajIaE40HgKy1LafYkwFspaYDpM4RM4zcJkYjTqDXNdmd60XGZdORAZJ6HWRJnurSw/Cm1zmj9Af8iv8b0He4sruh83h4XSC0F61RYPxx3YXVLkRd1pHZBsZ5xIZl42oAdMCDpjD2vLxPSWNVKUM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1635408790175190.0624745376707; Thu, 28 Oct 2021 01:13:10 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.217722.377865 (Exim 4.92) (envelope-from ) id 1mg0WR-00044R-R1; Thu, 28 Oct 2021 08:12:27 +0000 Received: by outflank-mailman (output) from mailman id 217722.377865; Thu, 28 Oct 2021 08:12:27 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mg0WR-00043u-Nf; Thu, 28 Oct 2021 08:12:27 +0000 Received: by outflank-mailman (input) for mailman id 217722; Thu, 28 Oct 2021 08:12:26 +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 ) id 1mg0WQ-000420-Hl for xen-devel@lists.xenproject.org; Thu, 28 Oct 2021 08:12:26 +0000 Received: from smtp-out2.suse.de (unknown [195.135.220.29]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id c82b039b-37c6-11ec-849a-12813bfff9fa; Thu, 28 Oct 2021 08:12:25 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 523121FD4C; Thu, 28 Oct 2021 08:12:24 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 0BF4814083; Thu, 28 Oct 2021 08:12:24 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 0BTdAWhbemE/MQAAMHmgww (envelope-from ); Thu, 28 Oct 2021 08:12:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c82b039b-37c6-11ec-849a-12813bfff9fa DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1635408744; 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=cWdDMKt9ZR6fJrJlomm3JcZ8sxGTe4D9W9jT8YxWMnw=; b=EuCcEXH/JLcU3tuPtMKIUeyYxSTGsXxYljjToHY98i+p3XwMuqaFiCREzyeFYCGweS9rqI +YHRCmT9ZqgJJnWVT/jjIYMdsOS57chc9ALp35rBB4lx0XZbVGQ5dfdwDea1ng60jsFqzV h2/kbtg7V1Eb8DRcHhV82XPX1/s9cSc= From: Juergen Gross To: xen-devel@lists.xenproject.org, x86@kernel.org, linux-kernel@vger.kernel.org Cc: Juergen Gross , Boris Ostrovsky , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" Subject: [PATCH 1/4] x86/xen: remove 32-bit pv leftovers Date: Thu, 28 Oct 2021 10:12:18 +0200 Message-Id: <20211028081221.2475-2-jgross@suse.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20211028081221.2475-1-jgross@suse.com> References: <20211028081221.2475-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1635408790633100002 Content-Type: text/plain; charset="utf-8" There are some remaining 32-bit pv-guest support leftovers in the Xen hypercall interface. Remove them. Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky --- arch/x86/include/asm/xen/hypercall.h | 40 +++++++--------------------- drivers/xen/mem-reservation.c | 27 +++++++------------ 2 files changed, 19 insertions(+), 48 deletions(-) diff --git a/arch/x86/include/asm/xen/hypercall.h b/arch/x86/include/asm/xe= n/hypercall.h index 454b20815f35..02156b76aa92 100644 --- a/arch/x86/include/asm/xen/hypercall.h +++ b/arch/x86/include/asm/xen/hypercall.h @@ -323,9 +323,7 @@ HYPERVISOR_get_debugreg(int reg) static inline int HYPERVISOR_update_descriptor(u64 ma, u64 desc) { - if (sizeof(u64) =3D=3D sizeof(long)) - return _hypercall2(int, update_descriptor, ma, desc); - return _hypercall4(int, update_descriptor, ma, ma>>32, desc, desc>>32); + return _hypercall2(int, update_descriptor, ma, desc); } =20 static inline long @@ -344,12 +342,7 @@ static inline int HYPERVISOR_update_va_mapping(unsigned long va, pte_t new_val, unsigned long flags) { - if (sizeof(new_val) =3D=3D sizeof(long)) - return _hypercall3(int, update_va_mapping, va, - new_val.pte, flags); - else - return _hypercall4(int, update_va_mapping, va, - new_val.pte, new_val.pte >> 32, flags); + return _hypercall3(int, update_va_mapping, va, new_val.pte, flags); } =20 static inline int @@ -461,16 +454,10 @@ MULTI_update_va_mapping(struct multicall_entry *mcl, = unsigned long va, { mcl->op =3D __HYPERVISOR_update_va_mapping; mcl->args[0] =3D va; - if (sizeof(new_val) =3D=3D sizeof(long)) { - mcl->args[1] =3D new_val.pte; - mcl->args[2] =3D flags; - } else { - mcl->args[1] =3D new_val.pte; - mcl->args[2] =3D new_val.pte >> 32; - mcl->args[3] =3D flags; - } + mcl->args[1] =3D new_val.pte; + mcl->args[2] =3D flags; =20 - trace_xen_mc_entry(mcl, sizeof(new_val) =3D=3D sizeof(long) ? 3 : 4); + trace_xen_mc_entry(mcl, 3); } =20 static inline void @@ -478,19 +465,10 @@ MULTI_update_descriptor(struct multicall_entry *mcl, = u64 maddr, struct desc_struct desc) { mcl->op =3D __HYPERVISOR_update_descriptor; - if (sizeof(maddr) =3D=3D sizeof(long)) { - mcl->args[0] =3D maddr; - mcl->args[1] =3D *(unsigned long *)&desc; - } else { - u32 *p =3D (u32 *)&desc; - - mcl->args[0] =3D maddr; - mcl->args[1] =3D maddr >> 32; - mcl->args[2] =3D *p++; - mcl->args[3] =3D *p; - } - - trace_xen_mc_entry(mcl, sizeof(maddr) =3D=3D sizeof(long) ? 2 : 4); + mcl->args[0] =3D maddr; + mcl->args[1] =3D *(unsigned long *)&desc; + + trace_xen_mc_entry(mcl, 2); } =20 static inline void diff --git a/drivers/xen/mem-reservation.c b/drivers/xen/mem-reservation.c index 3782cf070338..24648836e0d4 100644 --- a/drivers/xen/mem-reservation.c +++ b/drivers/xen/mem-reservation.c @@ -35,6 +35,7 @@ void __xenmem_reservation_va_mapping_update(unsigned long= count, for (i =3D 0; i < count; i++) { struct page *page =3D pages[i]; unsigned long pfn =3D page_to_pfn(page); + int ret; =20 BUG_ON(!page); =20 @@ -46,16 +47,10 @@ void __xenmem_reservation_va_mapping_update(unsigned lo= ng count, =20 set_phys_to_machine(pfn, frames[i]); =20 - /* Link back into the page tables if not highmem. */ - if (!PageHighMem(page)) { - int ret; - - ret =3D HYPERVISOR_update_va_mapping( - (unsigned long)__va(pfn << PAGE_SHIFT), - mfn_pte(frames[i], PAGE_KERNEL), - 0); - BUG_ON(ret); - } + ret =3D HYPERVISOR_update_va_mapping( + (unsigned long)__va(pfn << PAGE_SHIFT), + mfn_pte(frames[i], PAGE_KERNEL), 0); + BUG_ON(ret); } } EXPORT_SYMBOL_GPL(__xenmem_reservation_va_mapping_update); @@ -68,6 +63,7 @@ void __xenmem_reservation_va_mapping_reset(unsigned long = count, for (i =3D 0; i < count; i++) { struct page *page =3D pages[i]; unsigned long pfn =3D page_to_pfn(page); + int ret; =20 /* * We don't support PV MMU when Linux and Xen are using @@ -75,14 +71,11 @@ void __xenmem_reservation_va_mapping_reset(unsigned lon= g count, */ BUILD_BUG_ON(XEN_PAGE_SIZE !=3D PAGE_SIZE); =20 - if (!PageHighMem(page)) { - int ret; + ret =3D HYPERVISOR_update_va_mapping( + (unsigned long)__va(pfn << PAGE_SHIFT), + __pte_ma(0), 0); + BUG_ON(ret); =20 - ret =3D HYPERVISOR_update_va_mapping( - (unsigned long)__va(pfn << PAGE_SHIFT), - __pte_ma(0), 0); - BUG_ON(ret); - } __set_phys_to_machine(pfn, INVALID_P2M_ENTRY); } } --=20 2.26.2 From nobody Mon Apr 29 14:58:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1635408790; cv=none; d=zohomail.com; s=zohoarc; b=G1kRm+EVqeOrKdaZXR4dWhprbsJhnk1GyN50YVMSSclLe9z2Zgh921y3bVaeQ84FGgh+tO3AOiXtdNdHWdkuJC8jeKC5n+N4TieM6BwLh+6WJZCNcxDQ077HDcfbcMaO4tc4LzXfBiclSq686N5XTzcTX0CMEn4gTiwko6jw9kY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1635408790; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=QksQebk1Y8FPDBoAglLu73ax8R7o9eRK4x+nsqV+elk=; b=fQL0/iJLJ/Q2cUCV5lgVjqhWy0O3XKMK12hHknrPpE0+J5ph9AJBqIlohckWjH1ur5L4UMC3A2MJ6xAbLnnhMJqeBQi1Nd2gy3FVOY5V8JISsQoHzohWiBAmdUaKt/L1FmaemsnZq6bF7R+P4fRpI63Ufff/pu35XsO8tHexQbI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1635408790353647.1811114835372; Thu, 28 Oct 2021 01:13:10 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.217725.377905 (Exim 4.92) (envelope-from ) id 1mg0Wb-0005E8-QQ; Thu, 28 Oct 2021 08:12:37 +0000 Received: by outflank-mailman (output) from mailman id 217725.377905; Thu, 28 Oct 2021 08:12:37 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mg0Wb-0005Dt-Mx; Thu, 28 Oct 2021 08:12:37 +0000 Received: by outflank-mailman (input) for mailman id 217725; Thu, 28 Oct 2021 08:12:35 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mg0WZ-00041u-Ti for xen-devel@lists.xenproject.org; Thu, 28 Oct 2021 08:12:35 +0000 Received: from smtp-out2.suse.de (unknown [195.135.220.29]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id eb631bc3-ad74-4c17-a4d9-b2eeb376b7cf; Thu, 28 Oct 2021 08:12:25 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 B15881FD4E; Thu, 28 Oct 2021 08:12:24 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 58B2813B7D; Thu, 28 Oct 2021 08:12:24 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id WOSfFGhbemE/MQAAMHmgww (envelope-from ); Thu, 28 Oct 2021 08:12:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eb631bc3-ad74-4c17-a4d9-b2eeb376b7cf DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1635408744; 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=QksQebk1Y8FPDBoAglLu73ax8R7o9eRK4x+nsqV+elk=; b=lRnnR5fTPLeK40Bxibys9A9K4vacdHa60hfErHP2QMDlMAYS5tZ2OFxKFgIyzjDvyyneJq PtWY0wY+RlPdkWOtQlg1hLP644z5QrjQ14SBUP0M0No27CpxKyVolR4eycuZUHWyPswFvo pib9cppXK/qTrRCRqpBLV6HJOibwId4= From: Juergen Gross To: xen-devel@lists.xenproject.org, x86@kernel.org, linux-kernel@vger.kernel.org Cc: Juergen Gross , Stefano Stabellini , Russell King , Catalin Marinas , Will Deacon , Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/4] xen: allow pv-only hypercalls only with CONFIG_XEN_PV Date: Thu, 28 Oct 2021 10:12:19 +0200 Message-Id: <20211028081221.2475-3-jgross@suse.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20211028081221.2475-1-jgross@suse.com> References: <20211028081221.2475-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1635408792595100009 Content-Type: text/plain; charset="utf-8" Put the definitions of the hypercalls usable only by pv guests inside CONFIG_XEN_PV sections. On Arm two dummy functions related to pv hypercalls can be removed. While at it remove the no longer supported tmem hypercall definition. Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky --- arch/arm/xen/enlighten.c | 1 - arch/arm/xen/hypercall.S | 1 - arch/arm64/xen/hypercall.S | 1 - arch/x86/include/asm/xen/hypercall.h | 211 +++++++++++++-------------- include/xen/arm/hypercall.h | 15 -- 5 files changed, 102 insertions(+), 127 deletions(-) diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c index 7f1c106b746f..7619fbffcea2 100644 --- a/arch/arm/xen/enlighten.c +++ b/arch/arm/xen/enlighten.c @@ -442,7 +442,6 @@ EXPORT_SYMBOL_GPL(HYPERVISOR_hvm_op); EXPORT_SYMBOL_GPL(HYPERVISOR_memory_op); EXPORT_SYMBOL_GPL(HYPERVISOR_physdev_op); EXPORT_SYMBOL_GPL(HYPERVISOR_vcpu_op); -EXPORT_SYMBOL_GPL(HYPERVISOR_tmem_op); EXPORT_SYMBOL_GPL(HYPERVISOR_platform_op_raw); EXPORT_SYMBOL_GPL(HYPERVISOR_multicall); EXPORT_SYMBOL_GPL(HYPERVISOR_vm_assist); diff --git a/arch/arm/xen/hypercall.S b/arch/arm/xen/hypercall.S index b11bba542fac..f794dac9859a 100644 --- a/arch/arm/xen/hypercall.S +++ b/arch/arm/xen/hypercall.S @@ -88,7 +88,6 @@ HYPERCALL2(hvm_op); HYPERCALL2(memory_op); HYPERCALL2(physdev_op); HYPERCALL3(vcpu_op); -HYPERCALL1(tmem_op); HYPERCALL1(platform_op_raw); HYPERCALL2(multicall); HYPERCALL2(vm_assist); diff --git a/arch/arm64/xen/hypercall.S b/arch/arm64/xen/hypercall.S index 5b09aca55108..9d01361696a1 100644 --- a/arch/arm64/xen/hypercall.S +++ b/arch/arm64/xen/hypercall.S @@ -80,7 +80,6 @@ HYPERCALL2(hvm_op); HYPERCALL2(memory_op); HYPERCALL2(physdev_op); HYPERCALL3(vcpu_op); -HYPERCALL1(tmem_op); HYPERCALL1(platform_op_raw); HYPERCALL2(multicall); HYPERCALL2(vm_assist); diff --git a/arch/x86/include/asm/xen/hypercall.h b/arch/x86/include/asm/xe= n/hypercall.h index 02156b76aa92..b4832ec1a047 100644 --- a/arch/x86/include/asm/xen/hypercall.h +++ b/arch/x86/include/asm/xen/hypercall.h @@ -248,6 +248,7 @@ privcmd_call(unsigned int call, return res; } =20 +#ifdef CONFIG_XEN_PV static inline int HYPERVISOR_set_trap_table(struct trap_info *table) { @@ -280,6 +281,107 @@ HYPERVISOR_callback_op(int cmd, void *arg) return _hypercall2(int, callback_op, cmd, arg); } =20 +static inline int +HYPERVISOR_set_debugreg(int reg, unsigned long value) +{ + return _hypercall2(int, set_debugreg, reg, value); +} + +static inline unsigned long +HYPERVISOR_get_debugreg(int reg) +{ + return _hypercall1(unsigned long, get_debugreg, reg); +} + +static inline int +HYPERVISOR_update_descriptor(u64 ma, u64 desc) +{ + return _hypercall2(int, update_descriptor, ma, desc); +} + +static inline int +HYPERVISOR_update_va_mapping(unsigned long va, pte_t new_val, + unsigned long flags) +{ + return _hypercall3(int, update_va_mapping, va, new_val.pte, flags); +} + +static inline int +HYPERVISOR_set_segment_base(int reg, unsigned long value) +{ + return _hypercall2(int, set_segment_base, reg, value); +} + +static inline void +MULTI_fpu_taskswitch(struct multicall_entry *mcl, int set) +{ + mcl->op =3D __HYPERVISOR_fpu_taskswitch; + mcl->args[0] =3D set; + + trace_xen_mc_entry(mcl, 1); +} + +static inline void +MULTI_update_va_mapping(struct multicall_entry *mcl, unsigned long va, + pte_t new_val, unsigned long flags) +{ + mcl->op =3D __HYPERVISOR_update_va_mapping; + mcl->args[0] =3D va; + mcl->args[1] =3D new_val.pte; + mcl->args[2] =3D flags; + + trace_xen_mc_entry(mcl, 3); +} + +static inline void +MULTI_update_descriptor(struct multicall_entry *mcl, u64 maddr, + struct desc_struct desc) +{ + mcl->op =3D __HYPERVISOR_update_descriptor; + mcl->args[0] =3D maddr; + mcl->args[1] =3D *(unsigned long *)&desc; + + trace_xen_mc_entry(mcl, 2); +} + +static inline void +MULTI_mmu_update(struct multicall_entry *mcl, struct mmu_update *req, + int count, int *success_count, domid_t domid) +{ + mcl->op =3D __HYPERVISOR_mmu_update; + mcl->args[0] =3D (unsigned long)req; + mcl->args[1] =3D count; + mcl->args[2] =3D (unsigned long)success_count; + mcl->args[3] =3D domid; + + trace_xen_mc_entry(mcl, 4); +} + +static inline void +MULTI_mmuext_op(struct multicall_entry *mcl, struct mmuext_op *op, int cou= nt, + int *success_count, domid_t domid) +{ + mcl->op =3D __HYPERVISOR_mmuext_op; + mcl->args[0] =3D (unsigned long)op; + mcl->args[1] =3D count; + mcl->args[2] =3D (unsigned long)success_count; + mcl->args[3] =3D domid; + + trace_xen_mc_entry(mcl, 4); +} + +static inline void +MULTI_stack_switch(struct multicall_entry *mcl, + unsigned long ss, unsigned long esp) +{ + mcl->op =3D __HYPERVISOR_stack_switch; + mcl->args[0] =3D ss; + mcl->args[1] =3D esp; + + trace_xen_mc_entry(mcl, 2); +} +#endif + static inline int HYPERVISOR_sched_op(int cmd, void *arg) { @@ -308,24 +410,6 @@ HYPERVISOR_platform_op(struct xen_platform_op *op) return _hypercall1(int, platform_op, op); } =20 -static inline int -HYPERVISOR_set_debugreg(int reg, unsigned long value) -{ - return _hypercall2(int, set_debugreg, reg, value); -} - -static inline unsigned long -HYPERVISOR_get_debugreg(int reg) -{ - return _hypercall1(unsigned long, get_debugreg, reg); -} - -static inline int -HYPERVISOR_update_descriptor(u64 ma, u64 desc) -{ - return _hypercall2(int, update_descriptor, ma, desc); -} - static inline long HYPERVISOR_memory_op(unsigned int cmd, void *arg) { @@ -338,13 +422,6 @@ HYPERVISOR_multicall(void *call_list, uint32_t nr_call= s) return _hypercall2(int, multicall, call_list, nr_calls); } =20 -static inline int -HYPERVISOR_update_va_mapping(unsigned long va, pte_t new_val, - unsigned long flags) -{ - return _hypercall3(int, update_va_mapping, va, new_val.pte, flags); -} - static inline int HYPERVISOR_event_channel_op(int cmd, void *arg) { @@ -387,14 +464,6 @@ HYPERVISOR_vcpu_op(int cmd, int vcpuid, void *extra_ar= gs) return _hypercall3(int, vcpu_op, cmd, vcpuid, extra_args); } =20 -#ifdef CONFIG_X86_64 -static inline int -HYPERVISOR_set_segment_base(int reg, unsigned long value) -{ - return _hypercall2(int, set_segment_base, reg, value); -} -#endif - static inline int HYPERVISOR_suspend(unsigned long start_info_mfn) { @@ -415,13 +484,6 @@ HYPERVISOR_hvm_op(int op, void *arg) return _hypercall2(unsigned long, hvm_op, op, arg); } =20 -static inline int -HYPERVISOR_tmem_op( - struct tmem_op *op) -{ - return _hypercall1(int, tmem_op, op); -} - static inline int HYPERVISOR_xenpmu_op(unsigned int op, void *arg) { @@ -439,73 +501,4 @@ HYPERVISOR_dm_op( return ret; } =20 -static inline void -MULTI_fpu_taskswitch(struct multicall_entry *mcl, int set) -{ - mcl->op =3D __HYPERVISOR_fpu_taskswitch; - mcl->args[0] =3D set; - - trace_xen_mc_entry(mcl, 1); -} - -static inline void -MULTI_update_va_mapping(struct multicall_entry *mcl, unsigned long va, - pte_t new_val, unsigned long flags) -{ - mcl->op =3D __HYPERVISOR_update_va_mapping; - mcl->args[0] =3D va; - mcl->args[1] =3D new_val.pte; - mcl->args[2] =3D flags; - - trace_xen_mc_entry(mcl, 3); -} - -static inline void -MULTI_update_descriptor(struct multicall_entry *mcl, u64 maddr, - struct desc_struct desc) -{ - mcl->op =3D __HYPERVISOR_update_descriptor; - mcl->args[0] =3D maddr; - mcl->args[1] =3D *(unsigned long *)&desc; - - trace_xen_mc_entry(mcl, 2); -} - -static inline void -MULTI_mmu_update(struct multicall_entry *mcl, struct mmu_update *req, - int count, int *success_count, domid_t domid) -{ - mcl->op =3D __HYPERVISOR_mmu_update; - mcl->args[0] =3D (unsigned long)req; - mcl->args[1] =3D count; - mcl->args[2] =3D (unsigned long)success_count; - mcl->args[3] =3D domid; - - trace_xen_mc_entry(mcl, 4); -} - -static inline void -MULTI_mmuext_op(struct multicall_entry *mcl, struct mmuext_op *op, int cou= nt, - int *success_count, domid_t domid) -{ - mcl->op =3D __HYPERVISOR_mmuext_op; - mcl->args[0] =3D (unsigned long)op; - mcl->args[1] =3D count; - mcl->args[2] =3D (unsigned long)success_count; - mcl->args[3] =3D domid; - - trace_xen_mc_entry(mcl, 4); -} - -static inline void -MULTI_stack_switch(struct multicall_entry *mcl, - unsigned long ss, unsigned long esp) -{ - mcl->op =3D __HYPERVISOR_stack_switch; - mcl->args[0] =3D ss; - mcl->args[1] =3D esp; - - trace_xen_mc_entry(mcl, 2); -} - #endif /* _ASM_X86_XEN_HYPERCALL_H */ diff --git a/include/xen/arm/hypercall.h b/include/xen/arm/hypercall.h index b40485e54d80..9d7dd1c65a21 100644 --- a/include/xen/arm/hypercall.h +++ b/include/xen/arm/hypercall.h @@ -53,7 +53,6 @@ unsigned long HYPERVISOR_hvm_op(int op, void *arg); int HYPERVISOR_memory_op(unsigned int cmd, void *arg); int HYPERVISOR_physdev_op(int cmd, void *arg); int HYPERVISOR_vcpu_op(int cmd, int vcpuid, void *extra_args); -int HYPERVISOR_tmem_op(void *arg); int HYPERVISOR_vm_assist(unsigned int cmd, unsigned int type); int HYPERVISOR_dm_op(domid_t domid, unsigned int nr_bufs, struct xen_dm_op_buf *bufs); @@ -74,18 +73,4 @@ HYPERVISOR_suspend(unsigned long start_info_mfn) return HYPERVISOR_sched_op(SCHEDOP_shutdown, &r); } =20 -static inline void -MULTI_update_va_mapping(struct multicall_entry *mcl, unsigned long va, - unsigned int new_val, unsigned long flags) -{ - BUG(); -} - -static inline void -MULTI_mmu_update(struct multicall_entry *mcl, struct mmu_update *req, - int count, int *success_count, domid_t domid) -{ - BUG(); -} - #endif /* _ASM_ARM_XEN_HYPERCALL_H */ --=20 2.26.2 From nobody Mon Apr 29 14:58:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1635408789; cv=none; d=zohomail.com; s=zohoarc; b=AzRDk9jR45ugxzUIyrpZ+tE+Ci4esRq5mnj8tOOPBEHbaeEE6Lb3uojvKkBQzrWVTp5r1yPnYp1Oy8pbwkYRBQQUa2ta+Z+cqELnO9TpHWlLe5IphzmBC7wIMn6FAQMbDlPNWoguS99SLvE+Gqnhr5Ff1bJS7UjDjbzGLxL1BAQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1635408789; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=dqnayNM2vGd2Nrg8Q8qI72d6PyZbBY3HiH0gFXYcd+Y=; b=HcbGLtv4o57qZL0Qda6uPtc5fT4eDMsruPJF26n7RryYMTZl7JBa6BaSw18bqRnCtSAiCLHJEwCR1xnQ/KGnmWIwCPhbSOA+IkB2WsxUSHwpc6mo+jO7+0kdObc5Dwj0btC9a9dboORmifoLJEr8ofk5RxPnXCJdr9+z2fJhfrM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1635408789749331.9951771809905; Thu, 28 Oct 2021 01:13:09 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.217723.377883 (Exim 4.92) (envelope-from ) id 1mg0WW-0004ZC-4K; Thu, 28 Oct 2021 08:12:32 +0000 Received: by outflank-mailman (output) from mailman id 217723.377883; Thu, 28 Oct 2021 08:12:32 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mg0WW-0004Z1-0c; Thu, 28 Oct 2021 08:12:32 +0000 Received: by outflank-mailman (input) for mailman id 217723; Thu, 28 Oct 2021 08:12:31 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mg0WU-00041u-TR for xen-devel@lists.xenproject.org; Thu, 28 Oct 2021 08:12:30 +0000 Received: from smtp-out2.suse.de (unknown [195.135.220.29]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 5daee37d-a544-4438-9282-357a0ff238fd; Thu, 28 Oct 2021 08:12:25 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 07CF41FD4F; Thu, 28 Oct 2021 08:12:25 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 imap2.suse-dmz.suse.de (Postfix) with ESMTPS id B678814083; Thu, 28 Oct 2021 08:12:24 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id CK1RK2hbemE/MQAAMHmgww (envelope-from ); Thu, 28 Oct 2021 08:12:24 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 5daee37d-a544-4438-9282-357a0ff238fd DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1635408745; 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=dqnayNM2vGd2Nrg8Q8qI72d6PyZbBY3HiH0gFXYcd+Y=; b=BXb9x2kWX32ZD+ibkO+u1SI6k7/MiU42TziCvwCnK6bY2CW2BUuJTmX90k2dYpTMlzNZz/ 7i6vxJGKz8/7y1Hwj4C5OncMAvmb+xf06mYWq6vciW1LQPlr0Eic5whbcU6Kl6gEERsQQ4 YOp9GpFxlPrjYfE4Z+5OPdo6fsWubzg= From: Juergen Gross To: xen-devel@lists.xenproject.org, x86@kernel.org, linux-kernel@vger.kernel.org Cc: Juergen Gross , Boris Ostrovsky , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" Subject: [PATCH 3/4] xen: remove highmem remnants Date: Thu, 28 Oct 2021 10:12:20 +0200 Message-Id: <20211028081221.2475-4-jgross@suse.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20211028081221.2475-1-jgross@suse.com> References: <20211028081221.2475-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1635408790657100004 Content-Type: text/plain; charset="utf-8" There are some references to highmem left in Xen pv specific code which can be removed. Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky --- arch/x86/xen/enlighten_pv.c | 7 ------- arch/x86/xen/mmu_pv.c | 1 - 2 files changed, 8 deletions(-) diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c index a7b7d674f500..fe19a398bc00 100644 --- a/arch/x86/xen/enlighten_pv.c +++ b/arch/x86/xen/enlighten_pv.c @@ -27,7 +27,6 @@ #include #include #include -#include #include #include #include @@ -1245,12 +1244,6 @@ asmlinkage __visible void __init xen_start_kernel(vo= id) __supported_pte_mask &=3D ~_PAGE_GLOBAL; __default_kernel_pte_mask &=3D ~_PAGE_GLOBAL; =20 - /* - * Prevent page tables from being allocated in highmem, even - * if CONFIG_HIGHPTE is enabled. - */ - __userpte_alloc_gfp &=3D ~__GFP_HIGHMEM; - /* Get mfn list */ xen_build_dynamic_phys_to_machine(); =20 diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c index 3359c23573c5..793870fb942a 100644 --- a/arch/x86/xen/mmu_pv.c +++ b/arch/x86/xen/mmu_pv.c @@ -41,7 +41,6 @@ * Jeremy Fitzhardinge , XenSource Inc, 2007 */ #include -#include #include #include #include --=20 2.26.2 From nobody Mon Apr 29 14:58:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1635408789; cv=none; d=zohomail.com; s=zohoarc; b=JruHO348lk8lseXzt4Dxv3H+1nqXPL4ge4rbHGYPrZVpIjCGRsk5tTsUw+7b2Mw6bfqSCB5kz3JJscJ3JvPzUaa0qtapSuI8jORJtGoZdQBmQ0b2qfVUobSfm7xPat6r61urJzLKNO1JFfxMXcrd2wCSV0w8qi7evmB/sLNxVWg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1635408789; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=Xwab1206kf6LPwimd9DqBNkl2HPMyacCxBPHJc6oauA=; b=JXzV7PjSNYm6RTKknSn4CH9t7zQ743ymhBSsLBvMGVowHzGjiJ5vsg5wtJ9+0AmfzJJ0dJNByIL49FWsIgyZDBUpbx3hg4NUdJqty7nMII5xDN4KKYZ75CHcXZGmsOwWs/+i3aB5PhbVfeR4Z4gj5sHo1nhlaafPLE/fRrTnhtY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 163540878959437.85857542573763; Thu, 28 Oct 2021 01:13:09 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.217724.377894 (Exim 4.92) (envelope-from ) id 1mg0WY-0004sp-Hs; Thu, 28 Oct 2021 08:12:34 +0000 Received: by outflank-mailman (output) from mailman id 217724.377894; Thu, 28 Oct 2021 08:12:34 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mg0WY-0004sb-Dm; Thu, 28 Oct 2021 08:12:34 +0000 Received: by outflank-mailman (input) for mailman id 217724; Thu, 28 Oct 2021 08:12:31 +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 ) id 1mg0WV-000420-E4 for xen-devel@lists.xenproject.org; Thu, 28 Oct 2021 08:12:31 +0000 Received: from smtp-out2.suse.de (unknown [195.135.220.29]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id c8ed97ca-37c6-11ec-849a-12813bfff9fa; Thu, 28 Oct 2021 08:12:26 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 533B81FD50; Thu, 28 Oct 2021 08:12:25 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (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 imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 0D7CE13B7D; Thu, 28 Oct 2021 08:12:25 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id 6B8ZAmlbemE/MQAAMHmgww (envelope-from ); Thu, 28 Oct 2021 08:12:25 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c8ed97ca-37c6-11ec-849a-12813bfff9fa DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1635408745; 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=Xwab1206kf6LPwimd9DqBNkl2HPMyacCxBPHJc6oauA=; b=lXctq1nTr/IrpFNo9dzqTLg+Mk1DHZaLUAO1sv3bfQ2soI/KtJHeCVSpvwoaVFIthWU0W7 JK3fBD95T9sTH3Cj0cGhOQFvUtMTlplsFlS4HSWyMKrCHMfX6hpvgOsajs2KiFqgr1ce3n S/YBqk6nsSp6iJ9uuY1NpttjHYqYmSc= From: Juergen Gross To: xen-devel@lists.xenproject.org, x86@kernel.org, linux-kernel@vger.kernel.org Cc: Juergen Gross , Boris Ostrovsky , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" Subject: [PATCH 4/4] x86/xen: remove 32-bit awareness from startup_xen Date: Thu, 28 Oct 2021 10:12:21 +0200 Message-Id: <20211028081221.2475-5-jgross@suse.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20211028081221.2475-1-jgross@suse.com> References: <20211028081221.2475-1-jgross@suse.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1635408790586100001 Content-Type: text/plain; charset="utf-8" startup_xen is still 32-bit aware, even if no longer needed. Replace the register macros by the 64-bit register names for making it more readable. Signed-off-by: Juergen Gross Reviewed-by: Boris Ostrovsky --- arch/x86/xen/xen-head.S | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S index cb6538ae2fe0..38b0a3226c95 100644 --- a/arch/x86/xen/xen-head.S +++ b/arch/x86/xen/xen-head.S @@ -28,13 +28,13 @@ SYM_CODE_START(startup_xen) =20 /* Clear .bss */ xor %eax,%eax - mov $__bss_start, %_ASM_DI - mov $__bss_stop, %_ASM_CX - sub %_ASM_DI, %_ASM_CX - shr $__ASM_SEL(2, 3), %_ASM_CX - rep __ASM_SIZE(stos) + mov $__bss_start, %rdi + mov $__bss_stop, %rcx + sub %rdi, %rcx + shr $3, %rcx + rep stosq =20 - mov %_ASM_SI, xen_start_info + mov %rsi, xen_start_info mov initial_stack(%rip), %rsp =20 /* Set up %gs. --=20 2.26.2