[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 02/12] hw/i386/xen/: move xen-mapcache.c to hw/xen/


  • To: Paul Durrant <xadimgnik@xxxxxxxxx>, "qemu-devel@xxxxxxxxxx" <qemu-devel@xxxxxxxxxx>
  • From: "Garhwal, Vikram" <vikram.garhwal@xxxxxxx>
  • Date: Thu, 1 Dec 2022 20:25:48 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none
  • 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JgrukNMH+r9O8CsJpFXjip/dCeEhoo9aAFpinq4jaws=; b=bXWEFDPWn90/3GiWJA4KvTsUHzk/FhGJCriH4eXy+gRIWbeHMu6OnVN8ntx+idoBzDpJ9hTUI/g/4vNQ7+QGHkoLTYYRSj0mmZOlQiJC7IXQ/2OgyjQJigQbULT76dMS+oJfJT2BKp2wZFrLjhu+dgfWpKgSwbC2AQ4Tb4cdMwd5ZQOIOG8iZ3fuJaQVAgzoGejW0M9rA0f/7vFLukERjHxMGk3weqURQMqtw/5GYddKcM8TzV+CN+QGPoBOLIdElgAzpCaMXHG2E7ijO5rzM02S3w3A1LJ/1I9C8Y6xl37nUtji0HBdm+83mHgWB+B64+oKj1OPZy9KyhxIpxw2Lw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XPVLpY95BUvr7SH5wYLeeVjGkPJp67KaxBIU9n2Ah+r3WPAzDSu5PCR6eZJpRblChVC6glXVCx6+GaWzhXGwC3ZBwZY33Vb+XT/uJiCyH2j3qAIyk2VQOxcWgoBtrFQkekSFVsED6xvs/Y1PyDi3ftckVF5lebD9WUYcjQdIA0xEzUO3BipPqPKfyyCyf9WPJoCRRKq4zgbbM/QB62D3oN6Lizri2gFqqKN4kf+FFEDcg1cQU/9S1bwzmY9r6YxK487AWsSaa5PzMcrDNjdvNoFtlWL5BJwW8+RFp/oVqlJCkk+hstuCMjNFfA4kzIZYD2fpiFMK12XRFvOwPPSWZQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com;
  • Cc: "Stabellini, Stefano" <stefano.stabellini@xxxxxxx>, "Michael S. Tsirkin" <mst@xxxxxxxxxx>, Marcel Apfelbaum <marcel.apfelbaum@xxxxxxxxx>, Paolo Bonzini <pbonzini@xxxxxxxxxx>, Richard Henderson <richard.henderson@xxxxxxxxxx>, Eduardo Habkost <eduardo@xxxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, "open list:X86 Xen CPUs" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 01 Dec 2022 20:25:58 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHY4FQylV3vdT7ngEmf8YcSO4sRc64V1JMAgEPwSro=
  • Thread-topic: [PATCH v1 02/12] hw/i386/xen/: move xen-mapcache.c to hw/xen/

Hi Paul,

From: Paul Durrant <xadimgnik@xxxxxxxxx>
Date: Wednesday, October 19, 2022 at 7:54 AM
To: Garhwal, Vikram <vikram.garhwal@xxxxxxx>, qemu-devel@xxxxxxxxxx 
<qemu-devel@xxxxxxxxxx>
Cc: Stabellini, Stefano <stefano.stabellini@xxxxxxx>, Michael S. Tsirkin 
<mst@xxxxxxxxxx>, Marcel Apfelbaum <marcel.apfelbaum@xxxxxxxxx>, Paolo Bonzini 
<pbonzini@xxxxxxxxxx>, Richard Henderson <richard.henderson@xxxxxxxxxx>, 
Eduardo Habkost <eduardo@xxxxxxxxxxx>, Stefano Stabellini 
<sstabellini@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, open 
list:X86 Xen CPUs <xen-devel@xxxxxxxxxxxxxxxxxxxx>
Subject: Re: [PATCH v1 02/12] hw/i386/xen/: move xen-mapcache.c to hw/xen/
On 15/10/2022 06:07, Vikram Garhwal wrote:
> xen-mapcache.c contains common functions which can be used for enabling Xen on
> aarch64 with IOREQ handling. Moving it out from hw/i386/xen to hw/xen to make 
> it
> accessible for both aarch64 and x86.
>
> Signed-off-by: Vikram Garhwal <vikram.garhwal@xxxxxxx>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxx>
> ---
>   hw/i386/meson.build              | 1 +
>   hw/i386/xen/meson.build          | 1 -
>   hw/i386/xen/trace-events         | 5 -----
>   hw/xen/meson.build               | 4 ++++
>   hw/xen/trace-events              | 5 +++++
>   hw/{i386 => }/xen/xen-mapcache.c | 0
>   6 files changed, 10 insertions(+), 6 deletions(-)
>   rename hw/{i386 => }/xen/xen-mapcache.c (100%)
>
> diff --git a/hw/i386/meson.build b/hw/i386/meson.build
> index 213e2e82b3..cfdbfdcbcb 100644
> --- a/hw/i386/meson.build
> +++ b/hw/i386/meson.build
> @@ -33,5 +33,6 @@ subdir('kvm')
>   subdir('xen')
>
>   i386_ss.add_all(xenpv_ss)
> +i386_ss.add_all(xen_ss)
>
>   hw_arch += {'i386': i386_ss}
> diff --git a/hw/i386/xen/meson.build b/hw/i386/xen/meson.build
> index be84130300..2fcc46e6ca 100644
> --- a/hw/i386/xen/meson.build
> +++ b/hw/i386/xen/meson.build
> @@ -1,6 +1,5 @@
>   i386_ss.add(when: 'CONFIG_XEN', if_true: files(
>     'xen-hvm.c',
> -  'xen-mapcache.c',
>     'xen_apic.c',
>     'xen_platform.c',
>     'xen_pvdevice.c',
> diff --git a/hw/i386/xen/trace-events b/hw/i386/xen/trace-events
> index 5d6be61090..a0c89d91c4 100644
> --- a/hw/i386/xen/trace-events
> +++ b/hw/i386/xen/trace-events
> @@ -21,8 +21,3 @@ xen_map_resource_ioreq(uint32_t id, void *addr) "id: %u 
> addr: %p"
>   cpu_ioreq_config_read(void *req, uint32_t sbdf, uint32_t reg, uint32_t 
> size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x"
>   cpu_ioreq_config_write(void *req, uint32_t sbdf, uint32_t reg, uint32_t 
> size, uint32_t data) "I/O=%p sbdf=0x%x reg=%u size=%u data=0x%x"
>
> -# xen-mapcache.c
> -xen_map_cache(uint64_t phys_addr) "want 0x%"PRIx64
> -xen_remap_bucket(uint64_t index) "index 0x%"PRIx64
> -xen_map_cache_return(void* ptr) "%p"
> -
> diff --git a/hw/xen/meson.build b/hw/xen/meson.build
> index ae0ace3046..19d0637c46 100644
> --- a/hw/xen/meson.build
> +++ b/hw/xen/meson.build
> @@ -22,3 +22,7 @@ else
>   endif
>
>   specific_ss.add_all(when: ['CONFIG_XEN', xen], if_true: xen_specific_ss)
> +
> +xen_ss = ss.source_set()
> +
> +xen_ss.add(when: 'CONFIG_XEN', if_true: files('xen-mapcache.c'))

Curious as to why you couldn't just add this to the softmmu_ss list above?
Moving it to softmmu_ss breaks the build as it builds without XEN_CONFIG. I 
think xen option in “softmmu_ss.add(when: ['CONFIG_XEN', xen], if_true: files” 
is problem here.  I see below error:
/sysemu/xen-mapcache.h:16:8: error: attempt to use poisoned "CONFIG_XEN"
#ifdef CONFIG_XEN
        ^
../hw/xen/xen-mapcache.c:106:6: error: redefinition of 'xen_map_cache_init'
void xen_map_cache_init(phys_offset_to_gaddr_t f, void *opaque)


   Paul

> diff --git a/hw/xen/trace-events b/hw/xen/trace-events
> index 3da3fd8348..2c8f238f42 100644
> --- a/hw/xen/trace-events
> +++ b/hw/xen/trace-events
> @@ -41,3 +41,8 @@ xs_node_vprintf(char *path, char *value) "%s %s"
>   xs_node_vscanf(char *path, char *value) "%s %s"
>   xs_node_watch(char *path) "%s"
>   xs_node_unwatch(char *path) "%s"
> +
> +# xen-mapcache.c
> +xen_map_cache(uint64_t phys_addr) "want 0x%"PRIx64
> +xen_remap_bucket(uint64_t index) "index 0x%"PRIx64
> +xen_map_cache_return(void* ptr) "%p"
> diff --git a/hw/i386/xen/xen-mapcache.c b/hw/xen/xen-mapcache.c
> similarity index 100%
> rename from hw/i386/xen/xen-mapcache.c
> rename to hw/xen/xen-mapcache.c

<<attachment: winmail.dat>>


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.