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

Re: [PATCH] x86/entry: Fix !PV build


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Andrew Cooper <Andrew.Cooper3@xxxxxxxxxx>
  • Date: Tue, 23 Aug 2022 11:22:34 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.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=BUFgE0xhnrsK70qkS6KkhyqAO0lsENOSNT8Fwm9oFsY=; b=FJQ5IAXM4tvx3r6Z6qEdLtc9D1khN3l7ncb0m0U1EM9nJHvVkob6r8UfRHQofGpif4Fav9Gqf84P1ne5B5dCvVXU8sOyxTJJWGwz4fw/5s2tv8WrE1dHdIk1AO8wtdt/D49WfkMQbr743khiVfPdw1k9JNN+3RHLRSTTB6PN8S14DjaiobKkTev9YgEDOWLLLQrf1E++Fenc41e6MtSpTrYhrFD1Ha2uVfMNLdOdYptbNKsd+xzXgHFU9FGEG4hPn3xSkg6FL8nwM3JtQH8jDw8s7ssZt5y9jLbnUDez6ubka96AkOFupzogb/7Z6vqs0YrkwcDa15IqRjdxJzImqQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c84AEO8zW60S4Rbf+xltKmMGyP7dRRSBFmAtFuaJgVzALWGfBi/N7yStBnk7phVpFmXCyQxaVdeJ8IO3SDM/rvhS1eS7UxEKzVdABB0MEumespoDpeusoQ8IJ0+xbovXuplJbZP5BCiKF5PhqJmnspzmtMtxWoVhMvoUuzvV167dTjpfPiiAoYzXEa0+r5ucsPYpqfgnJJaJSuSuSwdGVu2wTJiqVZzqkDTYMPg0RZHKyIPqHsRZebDmbBSF5Y6+MaQ6CaaBX/HWa9xYfnl4ZBOtJ0fo71MCL2azWfNEuz+JG5nfzNCPsFg1SbC/qEkkcNFPnLlqVKSUnHpVxmnlCg==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: Roger Pau Monne <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Tue, 23 Aug 2022 11:22:52 +0000
  • Ironport-data: A9a23:O+3h3qv6p8gbK8TZsyc3/ral5+fnVE9fMUV32f8akzHdYApBsoF/q tZmKWjQPauDMWGnc94naIqyoUwE65LQzoRqTQpsrX83EHsQ+JbJXdiXEBz9bniYRiHhoOOLz Cm8hv3odp1coqr0/0/1WlTZhSAgk/vOHtIQMcacUghpXwhoVSw9vhxqnu89k+ZAjMOwRgiAo rsemeWGULOe82MyYzl8B56r8ks15qyi4mhA5DTSWNgQ1LPgvyhNZH4gDfnZw0vQGuF8AuO8T uDf+7C1lkuxE8AFU47Nfh7TKyXmc5aKVeS8oiM+t5uK23CukhcawKcjXMfwXG8M49m/c3Kd/ /0W3XC4YV9B0qQhA43xWTEAe811FfUuFLMqvRFTGCFcpqHLWyKE/hlgMK05FdxE4upQA2F/z uxbIh5cQCKK2+emh5vuH4GAhux7RCXqFKU2nyg4iBv/UrMhS52FRLjW79hF2jt2ntpJAfvVe 8seb3xocQjEZBpMfFwQDfrSns/x3iW5L2Ie9wrT/PJti4TQ5FUZPLzFGdzZYNGVA+5SmV6Vv Dnu9GXlGBAKcteYzFJp91r837WTzX6rBur+EpWg8aVap2fO71A5I0wOf1u0+uvohkWHDoc3x 0s8v3BGQbIJ3E6hQ8T5Xha4iGWZpRNaUN1Ve8Ul7Cmdx6yS5ByWbkAUQzgEZNE4ucseQT0xy kTPj97vHSZosrCeVTSa7Lj8kN+pES0cLGtHbylbSwIAuoHnuNtq1kiJSct/GqmoiNGzASv33 z2BsCk5gfMUkNIP0KK4u1vAhlpAu6T0c+L83S2PNkrN0++zTNfNi1CAgbQD0ct9EQ==
  • Ironport-hdrordr: A9a23:15Imxq/02S5oErWgmv9uk+F7db1zdoMgy1knxilNoENuH/Bwxv rFoB1E73TJYW4qKQodcdDpAtjifZtFnaQFrLX5To3SJjUO31HYYL2KjLGSiQEIfheTygcz79 YGT0ETMrzN5B1B/L7HCWqDYpkdKbu8gcaVbI7lph8DIz2CKZsQljuRYTzrcHGeMTM2YabRY6 Dsg/avyQDBRV0nKuCAQlUVVenKoNPG0Lj8ZwQdOhIh4A6SyRu19b/TCXGjr1YjegIK5Y1n3X nOkgT/6Knmmeq80AXg22ja6IkTsMf9y+FEGNeHhqEuW3XRY0eTFcdcso+5zXUISdKUmRIXeR 730lAd1vFImjHsl6eO0F3QMkfboW8TAjTZuCKlaDPY0LDErXQBeoR8bMtiA2XkAwBLhqAC7I tbm22erJZZFhXGgWD04MXJTQhjkg6urWMlivN7tQ0XbWIyUs4nkWUkxjIiLL4QWCbhrIw3Gu hnC8/RoP5QbFOBdnjc+m1i2salUHg/FgqPBhFqgL3f7xFG2HRii0cIzs0WmXkNsJo7Vplf/u zBdqBljqtHQMMaZb90QO0BXcy0AGrQRg+kChPbHX33UKUcf37doZ/+57s4oOmsZZwT1ZM33I /MVVtJ3FRCD34Gyff+qaGj3iq9MFlVBw6du/22z6IJyYHUVf7sLTCJTkwono+pv+gfa/erKc qOBA==
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHYtijd2GWqlgMr1kW/Og84JT0UAK266uwAgAFuCgA=
  • Thread-topic: [PATCH] x86/entry: Fix !PV build

On 22/08/2022 14:32, Jan Beulich wrote:
> On 22.08.2022 15:12, Andrew Cooper wrote:
>> early_page_fault() needs to outside of #ifdef CONFIG_PV
>>
>> Spotted by Gitlab CI.
>>
>> Fixes: fe3f50726e87 ("x86/entry: move .init.text section higher up in the 
>> code for readability")
>> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Makes me wonder whether the original change then really was worth it.

It was, IMO.  In it's previous location, it was a single area of non
.text.entry hidden in a large .text.entry block.

>
>> --- a/xen/arch/x86/x86_64/entry.S
>> +++ b/xen/arch/x86/x86_64/entry.S
>> @@ -22,6 +22,17 @@
>>  #endif
>>  .endm
>>  
>> +        .section .init.text, "ax", @progbits
>> +ENTRY(early_page_fault)
>> +        ENDBR64
>> +        movl  $TRAP_page_fault, 4(%rsp)
>> +        SAVE_ALL
>> +        movq  %rsp, %rdi
>> +        call  do_early_page_fault
>> +        jmp   restore_all_xen
>> +
>> +        .text
>> +
>>  #ifdef CONFIG_PV
>>  /* %rbx: struct vcpu */
>>  switch_to_kernel:
> Rather than putting it at the very top of the file, may I suggest to put
> it immediately after
>
> /* --- CODE BELOW THIS LINE (MOSTLY) NOT GUEST RELATED --- */
>
> or yet a few more lines down between continue_pv_domain and
> restore_all_xen? Which, as a minor gain, then also doesn't require you
> to add a new .text (or other section) directive. Preferably that way
> Acked-by: Jan Beulich <jbeulich@xxxxxxxx>

Done.  Thanks.

~Andrew

 


Rackspace

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