From nobody Thu Sep 19 01:12:19 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=reject dis=none) header.from=citrix.com ARC-Seal: i=1; a=rsa-sha256; t=1722007914; cv=none; d=zohomail.com; s=zohoarc; b=DjNUhFfIvQmS2TFE99cPAdhAPCy4esJ4d2EdZ2d1vHHYwNEjpatGPs7Wh7RIFK4Is9YVVPRabR65c4BryLyrtRnnUVddqN+nx3CcmMex+WAsSbmy0o/Savp4sAee801iW2WP6CCt9au3epZk5YivALTVzdkQxBi4BXDuRhHv0O4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1722007914; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=rKymiwpMPZJ5/hzGvo04irbMOh4ckmWGExUi8izxgEY=; b=JnWYIHuLjR0EsGo9h0Oe5VxRATGOV0NOSMkmHfQig3fmvRQ+sPh4g1B/jwATjovXqV7rIfaxgbr4XPCgReu5OgDuVQEXVKyEHAECS66XhgvuWRwzEa5CicuRgelhsZrPbr2YIMSLSP+agZ3PXjRU4OqaAMuN6re9grMDksgftL8= 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=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1722007914904347.24848144112286; Fri, 26 Jul 2024 08:31:54 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.765510.1176127 (Exim 4.92) (envelope-from ) id 1sXMus-00005t-H5; Fri, 26 Jul 2024 15:31:34 +0000 Received: by outflank-mailman (output) from mailman id 765510.1176127; Fri, 26 Jul 2024 15:31: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 1sXMus-00005k-Dk; Fri, 26 Jul 2024 15:31:34 +0000 Received: by outflank-mailman (input) for mailman id 765510; Fri, 26 Jul 2024 15:31:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sXMus-00084T-2x for xen-devel@lists.xenproject.org; Fri, 26 Jul 2024 15:31:34 +0000 Received: from mail-qk1-x730.google.com (mail-qk1-x730.google.com [2607:f8b0:4864:20::730]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 225b2650-4b64-11ef-8776-851b0ebba9a2; Fri, 26 Jul 2024 17:31:32 +0200 (CEST) Received: by mail-qk1-x730.google.com with SMTP id af79cd13be357-7a1dea79e1aso46018885a.1 for ; Fri, 26 Jul 2024 08:31:32 -0700 (PDT) Received: from localhost ([213.195.124.163]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7a1d73b6030sm184648085a.52.2024.07.26.08.31.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 26 Jul 2024 08:31:30 -0700 (PDT) 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: 225b2650-4b64-11ef-8776-851b0ebba9a2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.com; s=google; t=1722007891; x=1722612691; darn=lists.xenproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rKymiwpMPZJ5/hzGvo04irbMOh4ckmWGExUi8izxgEY=; b=g2CZh8PzJVV6cSccLzcfZao96z+rrxvlhV/jpqKyjIwTYzWn5GNoDkKHugM3d1P8j1 lrwSyBWFFNxJi8Jpff7C/MrhR5XtaJUe36O5gVmv4+WHywNE0swkG3eHDnrOVOq+lit0 u5E225yvs1PGMM2skBwlh3CGPKStapi7dFUj4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722007891; x=1722612691; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rKymiwpMPZJ5/hzGvo04irbMOh4ckmWGExUi8izxgEY=; b=vSdKYiFYkWjuXCI8mzRNXYK1CEZSjuUitWYsH/SyxTIVhnfIOh5H14vJP2cfsBc6jU KjIXu6ll/smE4u1LEax5IwHKWOdM08RbIzfEB9p6flTTAzmdMybxOhihOQlwFEHoRTRR 0LzIRCRj2ELUUadJJGWMWQoRkulQ6Do3dZ55QzAJujmfXFrDi7WdQEeOTWXXSIiLa6U2 77CD+Xy+7jWC/3sVOmyHwsAY//yAZ/yfM2Ri2V04ow/vrH5IGHZzHJcFpt6Jf7qmQNtj L61/C7ka8lZbPSQIE8n16+0rqqpBB31YRO5iorVDyJfoyTbEx+jaZU+Xxt8Whse0AIQr W6YA== X-Gm-Message-State: AOJu0Yz7d048j2LP1tJ34vJ0VJG5C/2ibTLtgthsvBTI5UYbTuGseBja iinc3ANkEJIvyj7TB9xBCFnybJcFP+zIOzcxR5//lccavS8h5nZdeNqZhV1y9NeC4n4FNPZjJ94 G X-Google-Smtp-Source: AGHT+IEdUO0MI9dsyDOfxgyck3T6p5fTlRG7Ie+Y+ECT2UK0qouUz1Bg+vc3njuND80gxH1JaE/PaQ== X-Received: by 2002:a05:620a:4013:b0:79f:17af:e360 with SMTP id af79cd13be357-7a1e525e9c4mr11217485a.33.1722007890580; Fri, 26 Jul 2024 08:31:30 -0700 (PDT) From: Roger Pau Monne To: xen-devel@lists.xenproject.org Cc: alejandro.vallejo@cloud.com, Roger Pau Monne , Jan Beulich , Andrew Cooper Subject: [PATCH 02/22] x86/mm: rename l{1,2,3,4}e_read_atomic() Date: Fri, 26 Jul 2024 17:21:46 +0200 Message-ID: <20240726152206.28411-3-roger.pau@citrix.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20240726152206.28411-1-roger.pau@citrix.com> References: <20240726152206.28411-1-roger.pau@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @citrix.com) X-ZM-MESSAGEID: 1722007915549116600 There's no l{1,2,3,4}e_read() implementation, so drop the _atomic suffix fr= om the read helpers. This allows unifying the naming with the write helpers, which are also atomic but don't have the suffix already: l{1,2,3,4}e_write(= ). No functional change intended. Signed-off-by: Roger Pau Monn=C3=A9 Reviewed-by: Jan Beulich --- xen/arch/x86/include/asm/page.h | 16 ++++++++-------- xen/arch/x86/include/asm/x86_64/page.h | 2 -- xen/arch/x86/mm.c | 12 ++++++------ xen/arch/x86/traps.c | 8 ++++---- 4 files changed, 18 insertions(+), 20 deletions(-) diff --git a/xen/arch/x86/include/asm/page.h b/xen/arch/x86/include/asm/pag= e.h index 3d20ee507a33..e48571de9332 100644 --- a/xen/arch/x86/include/asm/page.h +++ b/xen/arch/x86/include/asm/page.h @@ -16,14 +16,14 @@ #include =20 /* Read a pte atomically from memory. */ -#define l1e_read_atomic(l1ep) \ - l1e_from_intpte(pte_read_atomic(&l1e_get_intpte(*(l1ep)))) -#define l2e_read_atomic(l2ep) \ - l2e_from_intpte(pte_read_atomic(&l2e_get_intpte(*(l2ep)))) -#define l3e_read_atomic(l3ep) \ - l3e_from_intpte(pte_read_atomic(&l3e_get_intpte(*(l3ep)))) -#define l4e_read_atomic(l4ep) \ - l4e_from_intpte(pte_read_atomic(&l4e_get_intpte(*(l4ep)))) +#define l1e_read(l1ep) \ + l1e_from_intpte(read_atomic(&l1e_get_intpte(*(l1ep)))) +#define l2e_read(l2ep) \ + l2e_from_intpte(read_atomic(&l2e_get_intpte(*(l2ep)))) +#define l3e_read(l3ep) \ + l3e_from_intpte(read_atomic(&l3e_get_intpte(*(l3ep)))) +#define l4e_read(l4ep) \ + l4e_from_intpte(read_atomic(&l4e_get_intpte(*(l4ep)))) =20 /* Write a pte atomically to memory. */ #define l1e_write(l1ep, l1e) \ diff --git a/xen/arch/x86/include/asm/x86_64/page.h b/xen/arch/x86/include/= asm/x86_64/page.h index 03fcce61c052..465a70731214 100644 --- a/xen/arch/x86/include/asm/x86_64/page.h +++ b/xen/arch/x86/include/asm/x86_64/page.h @@ -69,8 +69,6 @@ typedef l4_pgentry_t root_pgentry_t; =20 #endif /* !__ASSEMBLY__ */ =20 -#define pte_read_atomic(ptep) read_atomic(ptep) - /* Given a virtual address, get an entry offset into a linear page table. = */ #define l1_linear_offset(_a) (((_a) & VADDR_MASK) >> L1_PAGETABLE_SHIFT) #define l2_linear_offset(_a) (((_a) & VADDR_MASK) >> L2_PAGETABLE_SHIFT) diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c index fab2de5fae27..6ffacab341ad 100644 --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -2147,7 +2147,7 @@ static int mod_l1_entry(l1_pgentry_t *pl1e, l1_pgentr= y_t nl1e, struct vcpu *pt_vcpu, struct domain *pg_dom) { bool preserve_ad =3D (cmd =3D=3D MMU_PT_UPDATE_PRESERVE_AD); - l1_pgentry_t ol1e =3D l1e_read_atomic(pl1e); + l1_pgentry_t ol1e =3D l1e_read(pl1e); struct domain *pt_dom =3D pt_vcpu->domain; int rc =3D 0; =20 @@ -2270,7 +2270,7 @@ static int mod_l2_entry(l2_pgentry_t *pl2e, return -EPERM; } =20 - ol2e =3D l2e_read_atomic(pl2e); + ol2e =3D l2e_read(pl2e); =20 if ( l2e_get_flags(nl2e) & _PAGE_PRESENT ) { @@ -2332,7 +2332,7 @@ static int mod_l3_entry(l3_pgentry_t *pl3e, if ( pgentry_ptr_to_slot(pl3e) >=3D 3 && is_pv_32bit_domain(d) ) return -EINVAL; =20 - ol3e =3D l3e_read_atomic(pl3e); + ol3e =3D l3e_read(pl3e); =20 if ( l3e_get_flags(nl3e) & _PAGE_PRESENT ) { @@ -2394,7 +2394,7 @@ static int mod_l4_entry(l4_pgentry_t *pl4e, return -EINVAL; } =20 - ol4e =3D l4e_read_atomic(pl4e); + ol4e =3D l4e_read(pl4e); =20 if ( l4e_get_flags(nl4e) & _PAGE_PRESENT ) { @@ -5925,7 +5925,7 @@ void init_or_livepatch modify_xen_mappings_lite( while ( v < e ) { l2_pgentry_t *pl2e =3D &l2_xenmap[l2_table_offset(v)]; - l2_pgentry_t l2e =3D l2e_read_atomic(pl2e); + l2_pgentry_t l2e =3D l2e_read(pl2e); unsigned int l2f =3D l2e_get_flags(l2e); =20 ASSERT(l2f & _PAGE_PRESENT); @@ -5947,7 +5947,7 @@ void init_or_livepatch modify_xen_mappings_lite( while ( v < e ) { l1_pgentry_t *pl1e =3D &pl1t[l1_table_offset(v)]; - l1_pgentry_t l1e =3D l1e_read_atomic(pl1e); + l1_pgentry_t l1e =3D l1e_read(pl1e); unsigned int l1f =3D l1e_get_flags(l1e); =20 ASSERT(l1f & _PAGE_PRESENT); diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c index ee91fc56b125..b4fb95917023 100644 --- a/xen/arch/x86/traps.c +++ b/xen/arch/x86/traps.c @@ -1450,7 +1450,7 @@ static enum pf_type __page_fault_type(unsigned long a= ddr, mfn =3D cr3 >> PAGE_SHIFT; =20 l4t =3D map_domain_page(_mfn(mfn)); - l4e =3D l4e_read_atomic(&l4t[l4_table_offset(addr)]); + l4e =3D l4e_read(&l4t[l4_table_offset(addr)]); mfn =3D l4e_get_pfn(l4e); unmap_domain_page(l4t); if ( ((l4e_get_flags(l4e) & required_flags) !=3D required_flags) || @@ -1459,7 +1459,7 @@ static enum pf_type __page_fault_type(unsigned long a= ddr, page_user &=3D l4e_get_flags(l4e); =20 l3t =3D map_domain_page(_mfn(mfn)); - l3e =3D l3e_read_atomic(&l3t[l3_table_offset(addr)]); + l3e =3D l3e_read(&l3t[l3_table_offset(addr)]); mfn =3D l3e_get_pfn(l3e); unmap_domain_page(l3t); if ( ((l3e_get_flags(l3e) & required_flags) !=3D required_flags) || @@ -1470,7 +1470,7 @@ static enum pf_type __page_fault_type(unsigned long a= ddr, goto leaf; =20 l2t =3D map_domain_page(_mfn(mfn)); - l2e =3D l2e_read_atomic(&l2t[l2_table_offset(addr)]); + l2e =3D l2e_read(&l2t[l2_table_offset(addr)]); mfn =3D l2e_get_pfn(l2e); unmap_domain_page(l2t); if ( ((l2e_get_flags(l2e) & required_flags) !=3D required_flags) || @@ -1481,7 +1481,7 @@ static enum pf_type __page_fault_type(unsigned long a= ddr, goto leaf; =20 l1t =3D map_domain_page(_mfn(mfn)); - l1e =3D l1e_read_atomic(&l1t[l1_table_offset(addr)]); + l1e =3D l1e_read(&l1t[l1_table_offset(addr)]); mfn =3D l1e_get_pfn(l1e); unmap_domain_page(l1t); if ( ((l1e_get_flags(l1e) & required_flags) !=3D required_flags) || --=20 2.45.2