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

Re: [XEN][PATCH 0/8] xen/arm64: make aarch32 support optional


  • To: "Orzel, Michal" <michal.orzel@xxxxxxx>, Julien Grall <julien@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
  • Date: Wed, 23 Jul 2025 14:48:43 +0300
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=cpuQVp/0GWYtsop6GCJd4tyjv2frhPIgnU1Nk10seqo=; b=Zw9XJ3rBW6HZnfugH69X+QB8A78/zXoNiQ+Y5QFrlgEP6kcBTym6VCbA5iXKK+SeFiXrFmPqed+l0e7g2Ud10aEtzSkLSh02p3UxVqYGttfizlZiiJXjwP57t7ozfk5Nrvu18epWevtO73UwJE9UeaLwsWhCTyhwEX70ExhGqIzKSvOmNWc3RgRpPwHYPtR8Qs98NLOZ1W+YFZ4ZGhXOBU2z5xN3GV527UXtj3lh05I/U+96Z+7D/QJoo7IGIZ4TLMMHrQg2oz8q8epHj/PLGw9sbm6xZ+6+C8mTGqLRfXNS1QmBfgSEGBYcE/129MGShbqpGk81DLcO3r0ROPZcHA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tW/qSQueXbUp9xx0B6DalRQtyIVUBUt5JsYptx3khWTKDUssdfUWSvTN1ADlIUdcO5pYLIhthwUn49j+IR6RJ5+a3B/I/Ur6kAw18Pc18KimDXf5dxFDbVJDPsM9sZuV9AexM/NIvGyJ1wGbgC2efuv8jdwje06nuqHIqTCFXoDh+7l0SYHEZM0h2xrvYHToGCcXcjUdnBqD52lKyYw5Jli1pdFmbUIlHl2f9aiNqN5MgoBVSFQ7aYTih+mxN27AJw+Rupb0UU41iSRe34oA53o08reD/evTXBTZYXFwPDpCxWmev62EYInH+018ni+DpFNckDnHWP2U6xjKOO1OVg==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
  • Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Roger Pau Monne <roger.pau@xxxxxxxxxx>
  • Delivery-date: Wed, 23 Jul 2025 11:48:56 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>



On 23.07.25 13:54, Orzel, Michal wrote:


On 23/07/2025 10:06, Julien Grall wrote:


On 23/07/2025 08:58, Grygorii Strashko wrote:
From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>

Hi,

Hi Grygorii,

Now Arm64 AArch32 guest support is always enabled and built-in while not
all Arm64 platforms supports AArch32 or this support might not be needed.

I am not entirely sure I like the proliferation of using CONFIG_* for
every single feature. This makes the testing a bit more complicated.

Can you clarify what the goal with this patch?
AArch32 is used quite rarely in embedded systems. Also, in Armv9A it might only
be implemented at EL0 if at all. When focusing on safety certification, AArch32
related code in Xen leaves a gap in terms of coverage that cannot really be
justified in words. This leaves us with two options: either support it (lots of
additional testing, requirements and documents would be needed) or compile it 
out.

FYI. bloat-o-meter report for this series with CONFIG_ARM64_AARCH32=n, 
CONFIG_EXPERT=y

add/remove: 0/6 grow/shrink: 2/32 up/down: 276/-5672 (-5396)
Function                                     old     new   delta
do_trap_guest_sync                          1588    1856    +268
start_xen                                   2456    2464      +8
make_cpus_node                               832     820     -12
arch_vcpu_create                             328     312     -16
vfp_save_state                               132     112     -20
vfp_restore_state                            132     112     -20
is_guest_pv32_psr                             20       -     -20
construct_hwdom                             1208    1188     -20
construct_domU                              2544    2524     -20
make_hypervisor_node                        2048    2016     -32
inject_undef64_exception                     112      80     -32
inject_abt64_exception                       164     132     -32
show_registers                               260     224     -36
arm64_set_domain_type                        128      88     -40
do_deprecated_hypercall                      124      80     -44
construct_domain                             316     272     -44
init_xen_cap_info                             96      44     -52
continue_new_vcpu                            188     136     -52
check_conditional_instr                      192     140     -52
vsmccc_handle_call                          1328    1272     -56
make_timer_node                              492     436     -56
vcpu_regs_user_to_hyp                        512     448     -64
vcpu_regs_hyp_to_user                        512     448     -64
do_common_cpu_on                             440     372     -68
cpsr_switch_mode                              80       -     -80
advance_pc                                   140      32    -108
do_trap_stage2_abort_guest                   836     724    -112
arch_set_info_guest                          336     184    -152
inject_undef_exception                       180      20    -160
arch_do_multicall_call                       632     468    -164
schedule_tail                                752     576    -176
decode_thumb2                                200       -    -200
subarch_do_domctl                            276      40    -236
inject_abt32_exception                       236       -    -236
do_debug_trap                                256       -    -256
hypercall_create_continuation               1228     848    -380
_show_registers                              832     380    -452
decode_instruction                          1032     476    -556
do_trap_hypercall                            640       -    -640
guest_walk_tables                           1896     984    -912
Total: Before=670920, After=665524, chg -0.80%
add/remove: 0/0 grow/shrink: 0/0 up/down: 0/0 (0)
Data                                         old     new   delta
Total: Before=448625, After=448625, chg +0.00%
add/remove: 0/0 grow/shrink: 1/0 up/down: 191/0 (191)
RO Data                                      old     new   delta
xen_config_data                             1345    1536    +191
Total: Before=18498, After=18689, chg +1.03%

--
Best regards,
-grygorii



 


Rackspace

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