From nobody Fri Oct 31 04:01:22 2025 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=1749638555; cv=none; d=zohomail.com; s=zohoarc; b=O0t+NvPQO9Vq/Fw2jo/qHMFmInQPXLwaRtJWhvB+fCUHqODMsyX6K6aH4pWfr5QwOv7skxXEmJDhcx2f5J1u/7xrP/tLp6kMU9fyaR7HUnr6ScradlGbHF9Bm03y3pp5EP8UuA3/9yHalzSx2r7tsWFB4bczf+ei+ZFe1gNnUpY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1749638555; 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=LBRwkWwv0jbgKkcFjXltShuEDP54+5oP6Jd8d3RK15c=; b=h6nLDZUL62jK1Vb8n/vEJiSNXMPYyVQ9EH4rpxitThd+YG9UB7+9x1R8UQ0xH4IN8JaPieo/aED3linZWyc474jG3ZpuAUzz1y3LW64ZP1/NZ+mdnd5FLawJT2s7QEKAgV4VAE1FPpAhr3roBFGwQXcNvxAh295txvvTQXdwY90= 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 1749638555032607.136800585061; Wed, 11 Jun 2025 03:42:35 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1011476.1389914 (Exim 4.92) (envelope-from ) id 1uPIuU-0001U2-3G; Wed, 11 Jun 2025 10:42:22 +0000 Received: by outflank-mailman (output) from mailman id 1011476.1389914; Wed, 11 Jun 2025 10:42:22 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIuT-0001Tv-W5; Wed, 11 Jun 2025 10:42:21 +0000 Received: by outflank-mailman (input) for mailman id 1011476; Wed, 11 Jun 2025 10:42:21 +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 1uPIuS-0001Tn-Vm for xen-devel@lists.xenproject.org; Wed, 11 Jun 2025 10:42:20 +0000 Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com [2a00:1450:4864:20::42f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id bf62e7e5-46b0-11f0-b894-0df219b8e170; Wed, 11 Jun 2025 12:42:18 +0200 (CEST) Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-3a536ecbf6fso2948639f8f.2 for ; Wed, 11 Jun 2025 03:42:18 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7482af7af0csm9171292b3a.62.2025.06.11.03.42.15 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 03:42:17 -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: bf62e7e5-46b0-11f0-b894-0df219b8e170 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1749638538; x=1750243338; darn=lists.xenproject.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=LBRwkWwv0jbgKkcFjXltShuEDP54+5oP6Jd8d3RK15c=; b=MsbeRdPILcWZLaWX6caAuStGcEGy526OKGfNrLIiU6sHxsyXX/aVAb8HnM6PjZ/hOJ LkfWdZ7b9SoGx4awP72OXV/IKfgl4XvT2XfsQvojlJhJjHHfcNdo06LHmiEk3Yy+LGig 9BVL88rm9bdRXB1Dnb6a1+bRR/VCX+urStn9nkEAOBs4DdH6Arpj0QUKq1NgPbi/0S88 6eVozVYK0KgajyzkmqGNTzh9ECY7A1WqcCLkafVsmVPPLvMnxWwTMNtOcjT2VeJbMEHO AztVyF1VR7OS1RkzPbhaASHuj84BzUnsbyx6m/3sssiLOxr/Yl6YuJPGsVDES5Dba2bt xB9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749638538; x=1750243338; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LBRwkWwv0jbgKkcFjXltShuEDP54+5oP6Jd8d3RK15c=; b=JQZYiZR/kdj1qg5UeHdmrH1wjcV4UFykB+7hQbVR+ViPfPQFSs0KqNkbxR6hve1Vq9 64Z4C0mFQDY7+gxx4kkurmjLvUXj5+LbVU9CUbGgu+q84Lr7yLqbIMKoWQFbM93IF0Yz /a0KPXWbZ6b2qW0+aCZZR+Gerxeqtaa1H+BMyE5gXqvWJydvfleuRZCOupbVFWnodh8t 4wFGsoLkFflDBHWVKELyRm5uSfJvTmZZCMleVB83GmwCZS5dPBrZ2RRCqajwuMjUaU+e ItNP+f91zypnnZay8poqAk5N30dkYtYlMeWCeJoGNKj0uIx0sUl4NAundFQ1E/We8qiA fzqQ== X-Gm-Message-State: AOJu0Yzo1dPnRDv1l/tPQfFntG+fVqwul2zp8khrrcji2Eiz2EpKQCXD cp5btbrhirHlC3G793/KQCvUb2+8MTjyiCTzJJVEG7ezdPp8mwz3fnZ4pqSTX8h4nKwtMfFO3bY kRr8= X-Gm-Gg: ASbGnctKH9BQAWmn/ho2Dnt0iQkUqnoNCwGMlFzkkI31NDynObJC6xddM2aV7GJdxG5 979KDyeEqobxDyoEOhpuMO24QZ/LN/rP6aMSE6hAuhJkozqjQlB3wRpSu1h5LcIkcdpIoqqMtrz ujNMzI8pSgYmbU7W7/DgB04yPab3pl+uvVtZK9CDNByZTWvrQyr0+rxF8zRzxSKrG+3fIT7Lusa xjJgkqhSao1oFCoB4nPBlaW1e1yfQ57gn1uQj5TS2jh/vE60wZlmc7JtmPRB16TWe+UuBud2RAQ 1qHVR3MJQrmCaS04EGr350GZeCM6pLCmKFWhpqLZAIyc0LuqY6vHZ09c7PRwnyEsB7IbT2XrKv8 YPnNV5IWH3+FT4VGNGKFa5+cYd4tRw4GPtrs/C5FnuDy6cCM+MHt8TJXBtA== X-Google-Smtp-Source: AGHT+IEsPGL3kWyZ20U0qudndcxOao26zAFUaeZAsz6mZnG3MsxSrDYLB5j9M4PNPkIBxAutomGKhw== X-Received: by 2002:a05:6000:18a7:b0:3a4:f7e7:416b with SMTP id ffacd0b85a97d-3a558695570mr2021614f8f.16.1749638538373; Wed, 11 Jun 2025 03:42:18 -0700 (PDT) Message-ID: <5f72b1c7-968f-49c6-831b-cfc4678b5923@suse.com> Date: Wed, 11 Jun 2025 12:42:15 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 1/6] vVMX: use reg_read() From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= References: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1749638555461116600 Content-Type: text/plain; charset="utf-8" Let's avoid such open-coding. There's also no need to use guest_cpu_user_regs(), when the function has a suitable parameter. Signed-off-by: Jan Beulich Reviewed-by: Andrew Cooper --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -2675,7 +2675,7 @@ int nvmx_n2_vmexit_handler(struct cpu_us { case VMX_CR_ACCESS_TYPE_MOV_TO_CR: { - val =3D *decode_gpr(guest_cpu_user_regs(), qual.gpr); + val =3D reg_read(regs, qual.gpr); =20 if ( qual.cr =3D=3D 0 ) { From nobody Fri Oct 31 04:01:22 2025 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=1749638575; cv=none; d=zohomail.com; s=zohoarc; b=nxH9+G5zY2ApyerGbwnjniILWtMzQTC/zMI5GZRrLncm+N2E+IN+MsxLIlPyQQ4rG3aJhZrv06MHK46wUbEV6jz9ajWVSmsrRrNZcS1e6HPV5GpPSHx5lx74Zyrh1MiFCMAdAL6+hTaJy9kKi/3daFzyg5edXsqbaAxVxxvg8nM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1749638575; 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=8h5N+uMQNA34CSUfT3J3XGOdG1Xu2E+WLId5R3xUSrE=; b=KFB+Dz057/++bcXxBfsaFaJNXPlf8sW6z0DuOlkkDzFdC2uzBIujfkkMpvSL1otuO5nKCfFeqriH/LtmckQ+nht7TEpKgY1rq3Jk5TTRXsVVPWMNzay193iHXrVzIX7xok8NPl15znN1p1P6FGTg+85ir+9mbv82jWED4stwx3M= 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 174963857553224.605268268634973; Wed, 11 Jun 2025 03:42:55 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1011479.1389924 (Exim 4.92) (envelope-from ) id 1uPIur-0001sm-BU; Wed, 11 Jun 2025 10:42:45 +0000 Received: by outflank-mailman (output) from mailman id 1011479.1389924; Wed, 11 Jun 2025 10:42:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIur-0001sf-7a; Wed, 11 Jun 2025 10:42:45 +0000 Received: by outflank-mailman (input) for mailman id 1011479; Wed, 11 Jun 2025 10:42:44 +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 1uPIuq-0001Tn-1B for xen-devel@lists.xenproject.org; Wed, 11 Jun 2025 10:42:44 +0000 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [2a00:1450:4864:20::432]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id cd6eeef8-46b0-11f0-b894-0df219b8e170; Wed, 11 Jun 2025 12:42:42 +0200 (CEST) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-3a4e742dc97so527423f8f.0 for ; Wed, 11 Jun 2025 03:42:42 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-313b210f636sm1010151a91.31.2025.06.11.03.42.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 03:42:41 -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: cd6eeef8-46b0-11f0-b894-0df219b8e170 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1749638562; x=1750243362; darn=lists.xenproject.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=8h5N+uMQNA34CSUfT3J3XGOdG1Xu2E+WLId5R3xUSrE=; b=SAt8/9T7WpM6b8t730icL5ARxyEEZGKmNBdS950oBdCehr//qofBwXgQWf7lSBuvUg 8UbiVUFvjZbMoH7sMnB8CswXqJCtIgpUpZ0roEaBaGUmt+ss5+dzCJ0wJmzRqaUdpoZs Bd6NIoOa7UfOBpixvesDDaxOpPNbTVFdLQXc/sohyLnAPx8Zd2/eP6Gt294P6tiFxw4e /trrXxOgpRXHC7ByBQ6I/37SIyEUrothXqcyvFOCMGsEyV/EdjELXgnY7cFzr0BmF836 3clhuXcrq/08dR+VfxKksBBvD6OclufjBrJ2qLaD5pvlLEA5ZXr1i+lfueKEvL+p8doc V5jA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749638562; x=1750243362; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=8h5N+uMQNA34CSUfT3J3XGOdG1Xu2E+WLId5R3xUSrE=; b=ubWI9jTd9y2QQxeO181CFNIiHcLNJkVYR8bt5E2KlWS/TPd5ms7tvgK6U9SmDmcpFH 0AP8M/GG+uk9IMQeY3WT57AaUBhCnH2uucUUhOKATtn6eVDONWWcsN6UD1cpyVlogaDq Sf39Jbvw2oIhdVb7E4+psJ9uu1wegyWGPjNm4XsENBIClAv6K9kkLyU1FqwdBA6xBAjG CZ8Yj6AGDTHXcKrqwyDIbbBtVs6C9t7Qi9PogBRpl0W0580XWmJK2pjqb1huJy6TARsZ Sjy8Hbjpg6UlhTo2pKFuaviYmCWU6mlj7lr4NTJHGRdIB7LLjY8HU2R/smclPBYTvRW0 pbZQ== X-Gm-Message-State: AOJu0YyxDOOdsIM8Kw/+Y/yrtos8l3SlyYhGUwxFerzyd3b8cGc+fM35 7dRHy+tlBBnTNg8XOm5ziQgPZEFJ7IIGT4KfY632CwG4WLh1Zfrxz61dchDy1k0XEOfT604Vkei wA28= X-Gm-Gg: ASbGncuRuLYkReelsqLZ7kgaHbF/S++ne3nG7KzIQMWDyjPoR4b+55BjSlYgBa6gR2k 1omeP0WCoe7CL6SLChvS53CKOfvi4gWH9qxk0QDF0G/pCX3kGZhMtF+guNzULPbkpxj2jm+ww7m sORC0lBehd5ZQ5nM+jjHMwrdSj3hLz1G/f9nKamoPdFZ8/iGmMuf8gmdU9GHW8fIEQvh/64sD5A dyIRZ0uM/oMD6Mrp5+YeNydJEhItB9fBwPIynxQFYjgi5pfuG/S/I6DY9zRFAwQ+M4rXe6uvDvO OcrET+SPXjb1z7fBzQhT/8DN7DBG8QaDknGAKfrdaO3VhKI1R7AVcJGly2dmZTmDCh4IiaKTY7T 9w/myqwy/7ldzlot9mHPK1thL5QkWRuO1K0MkIOn/yt5ANzI= X-Google-Smtp-Source: AGHT+IFNJUhQrOhtP8Em2EWVzkl6m4xvFXh4hl334eIuUaUPpf5BVg+fXZQXRLlf1FF1tmx79sf+HA== X-Received: by 2002:a05:6000:1acc:b0:3a3:70ab:b274 with SMTP id ffacd0b85a97d-3a5581e1bddmr2370178f8f.12.1749638561833; Wed, 11 Jun 2025 03:42:41 -0700 (PDT) Message-ID: <9384234e-3a07-4ae1-b632-fe007beb4c4f@suse.com> Date: Wed, 11 Jun 2025 12:42:39 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 2/6] vVMX: adjust reg_read() for 32-bit guests From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= References: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1749638577727116600 Content-Type: text/plain; charset="utf-8" Using the full 64-bit register values is wrong in this case; especially soon after a mode switch from long mode to 32-bit one upper halves of registers may continue to be non-zero. Fixes: 09fce8016596 ("Nested VMX: Emulation of guest VMXON/OFF instruction") Signed-off-by: Jan Beulich --- Note that the affected VMX insns are invalid to use from compatibility mode, and hence the more expensive vmx_guest_x86_mode() doesn't need using here. (VMCALL and VMFUNC, which are permitted in compatibility mode, aren't taking this path. In fact both aren't dealt with at all [explicitly] in vvmx.c.) --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -360,7 +360,12 @@ enum vmx_insn_errno set_vvmcs_real_safe( static unsigned long reg_read(struct cpu_user_regs *regs, unsigned int index) { - return *decode_gpr(regs, index); + unsigned long val =3D *decode_gpr(regs, index); + + if ( !hvm_long_mode_active(current) ) + val =3D (uint32_t)val; + + return val; } =20 static void reg_write(struct cpu_user_regs *regs, From nobody Fri Oct 31 04:01:22 2025 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=1749638610; cv=none; d=zohomail.com; s=zohoarc; b=foL0oCm9b4x0jeqzlB2RyreTjjlyaDaKIpTPn5V2bgmjOz7UGcgyLLSwhykFon13Hg7ljBs7mOeajEpdMvM8YGdgQ66XVXy7z7JuTlztbNKb7psJoXqY6PD9qzHLsGZEI1HZmDCZ4L3N4qqib9UNHsGev/eSlQC+S/F0xsaC740= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1749638610; 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=CwZ9JikHD/wnh4WhC0HUOzLh2w/84RfcO+smo2vM6EY=; b=jK80hN58KOvRjhjdy1dOpi6p3lOohmuX5xuEls6Rkhhna/vWTAxshfGz/BU+FdXBw89SMwIs6Wi/HUWF6gumCHRD+GAbQe9TItyhW2KOVuNdl5FV9XYx9FX/Zi+fcRG1u1Dga6aTQaUUOBFC58Tm9YI4ENoaQs+HwOg0ZdMa+/I= 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 1749638610823876.5739320809505; Wed, 11 Jun 2025 03:43:30 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1011486.1389934 (Exim 4.92) (envelope-from ) id 1uPIvN-0002SE-I2; Wed, 11 Jun 2025 10:43:17 +0000 Received: by outflank-mailman (output) from mailman id 1011486.1389934; Wed, 11 Jun 2025 10:43:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIvN-0002S7-FE; Wed, 11 Jun 2025 10:43:17 +0000 Received: by outflank-mailman (input) for mailman id 1011486; Wed, 11 Jun 2025 10:43:16 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIvM-0002CX-6U for xen-devel@lists.xenproject.org; Wed, 11 Jun 2025 10:43:16 +0000 Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [2a00:1450:4864:20::434]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id e124c395-46b0-11f0-a307-13f23c93f187; Wed, 11 Jun 2025 12:43:15 +0200 (CEST) Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-3a50fc819f2so5293132f8f.2 for ; Wed, 11 Jun 2025 03:43:15 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7482af3835fsm8907951b3a.27.2025.06.11.03.43.12 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 03:43:14 -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: e124c395-46b0-11f0-a307-13f23c93f187 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1749638595; x=1750243395; darn=lists.xenproject.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=CwZ9JikHD/wnh4WhC0HUOzLh2w/84RfcO+smo2vM6EY=; b=ZMG3XHADwY2O76FGNFVJMp69YpxMa6zfF31ugwRdRB0m48OfZfP2PkDTY7B5TxlpA0 Zp+n3fRDvC8LZzpivPib0gOOwnKAl3aE68m147nJCO/VIlptSaA2u3w1HnU3RDwYa2lV 89vFT2nT5gkzmZucfoprxBd9W+Uts8ErNQ9zgb9rSRxXOodjCuUjhXc5lAO/Mwhtq7a8 KFjC/JejMkkt0Ax/EIeaB2aCwsEdpBKNpZYlEHwenQWnQRCOIMU9XP2JAqDVYZCw2UOA 4Z8GhVnefE6ptn24qY1AX949FMhBkoGHHpI939V6KnOTasQK05VHkWz6E8uroAThvZHc 8Ssw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749638595; x=1750243395; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=CwZ9JikHD/wnh4WhC0HUOzLh2w/84RfcO+smo2vM6EY=; b=OrM7TwFv5kjszZ/u0X5v0e1J4b2xIabYI0XwEfZLnwBOR8i9RSkPxMsgMDu6ETpWY2 0CGxmQv9In5RhlaQfkDdxvHthbIGih58NhCrqjdl4tu0sg1EKXpvaduJrSciGuCz8vB9 iZsAf+NoZgRLLnmmtMNfunP6KKzLNoA8b2Luzk6TveMAiaVkZNcllotFZcu18k7wsHDp aPh+iM8VA48uwMWWSEJGgTCWjAWoJX9D8tFmK1WgNA+t+TUOXNU0AFQC460M9MGtjoYe D3Bmiq+DmEMDEo4ot9l6ieBHUxf0nnuD6IykFD2DoB7UzP9eGxP9aMSNGUkMYbdq3x6N TSzw== X-Gm-Message-State: AOJu0Yy6iYgxFWJ0oCln1VVbpui2oRo6igxT9eLSNFDDd4IAWdPl8bGr ynxhVamf2dehkfsYO1nFHqQpVBOIym7laL1fMxDMgzU90nde9kxzTOq7Ux0FEQKgW253BhGGQYJ gsBU= X-Gm-Gg: ASbGncvxlVyqEsK6wD33fRHW6YKv+9nuwI2F0ccKXBBSMq3/kq7L0XQN50IEj8kwm+X M9X3/J8dBBZQXHabBk2USPW4OjQ0YCO9JpWCmwZtuJ7AaLib1Tz65h/5vZ7rf/yUK8Ule/Fh7Z3 Ep9McYlqXxiaKRNJLAfhDUf9pNDBAP9Cey3qb/bA1FbudIZGvLQ0x3yoP3MPLIfpZK+ajwUzEpI Tl/Xumzf2WV0X8cxp3B3kKMps/FWm69WMvzShCxGk4aInvNMoFxEzUTlCQySxo3QVu/qCDOzdbl XTETXsCPKsY+9C3eJdd/pIW5JWgBEwzDDR11c5UepVs5UzZy/1zXbC1skQLcH04dbPMLrp18X5I 2AB+SJdgabkkOluOrQ0UCrqvnANaYDmHV2tCYUb1Q0B9O9fs= X-Google-Smtp-Source: AGHT+IEwr4ftsGO5IGXJKnsdPpYNHTLOF4rJQtTbdv1YuuTmp0MoL5SqHcMsQJ82o2O9eBoSMSwSUw== X-Received: by 2002:adf:9d84:0:b0:3a5:300d:5e17 with SMTP id ffacd0b85a97d-3a558a276f3mr1578553f8f.29.1749638594978; Wed, 11 Jun 2025 03:43:14 -0700 (PDT) Message-ID: <76166ff6-3409-4279-89fa-7ca188b8748a@suse.com> Date: Wed, 11 Jun 2025 12:43:12 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 3/6] vVMX: adjust reg_write() for 32-bit guests From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= References: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1749638612356116600 Content-Type: text/plain; charset="utf-8" Using the full 64-bit register values is slightly wrong in this case; 32-bit writes of registers would normally zero-extend the value to 64 bits. The difference may be observable after switching (back) to 64-bit mode (even if as per the spec upper halves of registers are undefined after a mode switch, in reality they retain their values). Fixes: 33a7028fec44 ("Nexted VMX: Emulation of guest VMREAD") Signed-off-by: Jan Beulich --- Note that the sole affected VMX insn (VMREAD) is invalid to use from compatibility mode, and hence the more expensive vmx_guest_x86_mode() doesn't need using here. --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -372,6 +372,8 @@ static void reg_write(struct cpu_user_re unsigned int index, unsigned long value) { + if ( !hvm_long_mode_active(current) ) + value =3D (uint32_t)value; *decode_gpr(regs, index) =3D value; } From nobody Fri Oct 31 04:01:22 2025 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=1749638633; cv=none; d=zohomail.com; s=zohoarc; b=a2hfD2sGqT87z6+k1ucl80GhDGrtaA1kNVFZ0f+zS0hwliyBasei810d5RKeJtWLjIdjWFDDzCqT6MdYn2Q8g+18606WDiu15NWSnvpamFWjX7OTIpMjBtGm4yrD1edPH2FQShqqp9Kq/4YYwUPOUq8jHLrGSDabpc5I9fPynUg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1749638633; 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=dP6hDUe7AN9OWz/Q1nOrRU/+ZWv62kuqoQ0JD4El1IA=; b=GK5ugJcTDKtpvXrlxQNimbTrze2BVyz/NWSmRzkuchHMTyLAj3J0UaxSE6PzNvGzovNHJ33UiqbLrFX28qjY/oS4vrwsxaRGuGaORHHF7syfiG2Xpy3k/1TKJzte/THx2th9LES1QM2b5n9Rf0jeUZI2bk9ExxM0MIM6zfl1nO8= 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 1749638633329853.6294011838884; Wed, 11 Jun 2025 03:43:53 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1011492.1389944 (Exim 4.92) (envelope-from ) id 1uPIvn-0002uj-R4; Wed, 11 Jun 2025 10:43:43 +0000 Received: by outflank-mailman (output) from mailman id 1011492.1389944; Wed, 11 Jun 2025 10:43:43 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIvn-0002uc-N6; Wed, 11 Jun 2025 10:43:43 +0000 Received: by outflank-mailman (input) for mailman id 1011492; Wed, 11 Jun 2025 10:43:42 +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 1uPIvm-0001Tn-5i for xen-devel@lists.xenproject.org; Wed, 11 Jun 2025 10:43:42 +0000 Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [2a00:1450:4864:20::32f]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f01e71ad-46b0-11f0-b894-0df219b8e170; Wed, 11 Jun 2025 12:43:40 +0200 (CEST) Received: by mail-wm1-x32f.google.com with SMTP id 5b1f17b1804b1-453066fad06so28232555e9.2 for ; Wed, 11 Jun 2025 03:43:40 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-313b200a0a7sm1123936a91.17.2025.06.11.03.43.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 03:43:39 -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: f01e71ad-46b0-11f0-b894-0df219b8e170 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1749638620; x=1750243420; darn=lists.xenproject.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=dP6hDUe7AN9OWz/Q1nOrRU/+ZWv62kuqoQ0JD4El1IA=; b=aGuiUjV3G2skVdBIgCp0v5B0OB5jA2AsbJ3uBZLO8n7ulYVxh0khjzJYHB4Q9/jmb7 8QW1TLpAps/sH1IOtmY626cHZSW2Wd/G5HLatJmdzi4uCUVyVI2gP2Gb8T2eUK1E0xS+ u0Bn5rft03bJ+iPOGS5CkVf/t0JeeOdCFvftjnwHdHL4LEZnLFDKt5XwGigxG2bRyYN6 BSKBQkUCEnv0Rw3L1VmKSvqR4u+h7JeH/LUPsBORENZyhsrtHls7WcUihJ2XT5JzVIW/ 0V90qHu5NrjILvTixn6PitQ7/dv5j9gbfRMKjZt9tNQT3R1cKPWppbFTEhssoIcC5qJu pBQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749638620; x=1750243420; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=dP6hDUe7AN9OWz/Q1nOrRU/+ZWv62kuqoQ0JD4El1IA=; b=tY7lF0IL32k8B7q0hg4kbDVmv2Duf808SVP7NVBXR43G0dLSf68VW64adUoKVcpZJp fVQMfNMMnaiN5dv6b9mM2oWgvSNi8YHt6WDeiTr6f185juzF/FrEwcZpR6fGv07D2EY8 2bFy6fH9VYDfSuPFXjXJWM/c5bA1dPPnG5c2nS48jC01fas52ARUbitIIuPrQkKQWipr G18XRyZuXxM32fNvJPSjBdBzJe/mAQEqurAXUBiX66BFB4v5Lgi+HtWPRLkb3K73fvji 6piylNXV5pqb73V3usoyoaqiMuc+HctOLWCI+y3B06lUhwUqPHJVKBOa7mVDbyATWDEY LJFA== X-Gm-Message-State: AOJu0YwxvzIaQqTZzIbNcSJYfVGyXDemAoah0oHzzXdcmExhn/An39q4 En3yZ79ONCRrVNHrSaZL4lwk6kh7C7I8vh4peEeq9nmEaeKhDa/Ke+lJe+R48qZBlDgLFtdNygm 6HHk= X-Gm-Gg: ASbGnctPQkM5v2EPF0DrM90m8uSGrbVOqfa201AK88vCgbOiqQnWL7LpfrJXaTAyfur ssxaO0UVJ8kqD6u+gtg+bRXFq+zdONBP872IlUqxZ1ve0P1AKOBmg4t29gFmopUuUBJal1SkGyt Ve8js1uqbaL0+mxh714DepAO7QRPHC1AsR0cPqBA5D8aPpxd/otnO7HGMgeeRqNDjSO4L8vFqIM BkXaHFKNTAmOPOlaQmxPL7YMPM4dPxsnW5Miq1SFWLulZhGrrkOw6f+uBvR/LzEDXjcSrwP0/vR SBSfGJtZP1IDqa3IPkOP/mjIyGDIrNOKUW2TImGbojZA/F0pKHt3J101NdynkCISTlCSOHKZDXW yfRV9HetEK6Zql183HbDIDG4CL74abeasHdG30D7jloOKN+Y= X-Google-Smtp-Source: AGHT+IG22dD+FwAQwsHyCTwvPjP2pIoGvT0MDRP5r6xUVh7vRiys77Xs/z+s3UuvhnBlKVzRu0peMg== X-Received: by 2002:a05:6000:2c0f:b0:3a4:e6c6:b8b1 with SMTP id ffacd0b85a97d-3a55869b890mr1864074f8f.17.1749638620086; Wed, 11 Jun 2025 03:43:40 -0700 (PDT) Message-ID: <7676b1fe-9881-4b4f-a7ad-fe811c4449aa@suse.com> Date: Wed, 11 Jun 2025 12:43:37 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 4/6] vVMX: prefer hvm_long_mode_active() in decode_vmx_inst() From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= References: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1749638634299116600 Content-Type: text/plain; charset="utf-8" All affected VMX insns are invalid to use from compatibility mode, and hence the more expensive vmx_guest_x86_mode() doesn't need using here. Signed-off-by: Jan Beulich --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -418,7 +418,7 @@ static int decode_vmx_inst(struct cpu_us } else { - bool mode_64bit =3D vmx_guest_x86_mode(v) =3D=3D X86_MODE_64BIT; + bool mode_64bit =3D hvm_long_mode_active(v); =20 decode->type =3D VMX_INST_MEMREG_TYPE_MEMORY; From nobody Fri Oct 31 04:01:22 2025 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=1749638657; cv=none; d=zohomail.com; s=zohoarc; b=c4OmVmNZl5juM9CQFMkgqpFizfgSnFawchBPtpun+mFUUu/L+P9/YcZipGuk3/HGnc09UFTvkpDd2Rv+bWmVjU5Fq7yc4IoBjavr9p+DDHJDuFVNd0AXUp2Gvufo2CTcvSmHQEP7XLE8SKAQ/hiRQ/7GZXSP+ikHlvKOpxp4tPc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1749638657; 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=78s+oTdG4m8V+BkuHjMC+SQ/rabCHl4SaflHSRJvwWk=; b=nkGU20ZuRti9XNhyaDuL0ImwYxo+rvOowOFbIfLSw1NHKTt/KIoN7g8QkwLvYOKOocahafMSw0ICjP2RRBqchBhpP21d8jVc3ArNxVQYWFb/b7R7hNbhC9ECHec1V30Vb9BarNu+egnx1Zz9r6QFIKcwQl19i3MH1L21jRZESEs= 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 1749638657754219.98460880435414; Wed, 11 Jun 2025 03:44:17 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1011496.1389954 (Exim 4.92) (envelope-from ) id 1uPIwA-0003N0-2F; Wed, 11 Jun 2025 10:44:06 +0000 Received: by outflank-mailman (output) from mailman id 1011496.1389954; Wed, 11 Jun 2025 10:44:06 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIw9-0003Mt-Uy; Wed, 11 Jun 2025 10:44:05 +0000 Received: by outflank-mailman (input) for mailman id 1011496; Wed, 11 Jun 2025 10:44:04 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIw8-0002CX-KM for xen-devel@lists.xenproject.org; Wed, 11 Jun 2025 10:44:04 +0000 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [2a00:1450:4864:20::42e]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id fdf916c7-46b0-11f0-a307-13f23c93f187; Wed, 11 Jun 2025 12:44:03 +0200 (CEST) Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3a52874d593so6220707f8f.0 for ; Wed, 11 Jun 2025 03:44:03 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-23603b6a5aasm84831165ad.112.2025.06.11.03.44.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 03:44:02 -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: fdf916c7-46b0-11f0-a307-13f23c93f187 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1749638643; x=1750243443; darn=lists.xenproject.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=78s+oTdG4m8V+BkuHjMC+SQ/rabCHl4SaflHSRJvwWk=; b=Ihp5lGw0xguKeUn1ASg8awTshC94Ybir7DI4qwPEUIhhzqc1Du/07tDaRdawu87JvF WXw0vtUqQAh4AMLHJgv+Zm+NKYjpO1WPxayNsrjboGyX7+/Im99YM9zzF6yrRRnORxVN D6mdkpP26e0rcqTle4DB9pMAQMf8MLWfOpoxHZRfU0rEw4EuBqyxK+SBiXCt4atoVMD6 D2Klx5ckQIZsRVZU0Jka4VwyxclarRWm8oiBtv92y5+ih+ogKSIRWqPFTK1qAljtuXq7 n1lmEvdBPc749/avGya04iu9z/J6BLGF4Gq+N1xEng1zS/+jZbljkQmTTMi/L1xJ2JVH XX6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749638643; x=1750243443; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=78s+oTdG4m8V+BkuHjMC+SQ/rabCHl4SaflHSRJvwWk=; b=l/jieDi/tt6Tkp0ccMUL4OBaAn7CGjDLMThWVloSjlh7Lqj8RAvpE45Cl/9tGr/Rex 3bsbd2ZJ0CgfJtb7UmD3/UWLMwNRd0Tq869S+XZb/+tVSJsO1Q4TRKAZDCEOOO7kbb+q gM+hH1KAdQSzIuWgoi9EYcsBh7UuMGgujaTgtdXohBDTfqhCN/UvSRSG1oGlv5p3m0LA YdqOX6kO5rSiFc30oNkqRahQf3gLsog5A0bmk2klC7iQGiyyxzNjn+oGdMyyk3crnIv7 m8OlOOpT1biF+yP3aG1QSxplqZ1DsGuFBPxqDpu9u4DoHIiCLNvl3GwclG/xVX/pFdo8 7PBg== X-Gm-Message-State: AOJu0Yx6/aQBjDwTwej/Pokb9Qk9JKP3AWDVz2SrwMssQ09yisVusWPp A0tNyplx4Bw876zykqv2pGWbw6z4C6eZ/Z23e7fEIU56mZasMyzeOOw/UjARHXPyAHGsQ9lqf0o xBl0= X-Gm-Gg: ASbGncvKZ0ixxSZmcyVQWXhQGvrIX/Julz8b5GuUtuMLxQPnwkU1EhRF3lQ8jR+kTEs zVngvye6fV8we0Ho2JtmEopECBNAYfiiUZZnk2fDnR1yEJu8aPYUD3RbxeF99eD2MnJPGGdYNMA o80xrOa5k1Meuh8IpP3p6fWRV1YQ9MbMDpmMr7KRKNhcyJKHKJbwsvrp4gM/De9Vwt0Nfr/xF9r W95FJ30UigHVwgS8unnsHl9yX62EEpBxQYxF6Ux4CPav4h29FUIrWW/Xh/6wJK8EU0E4AVLmbFD C486A/j/DOZjUdWkY7Xb8Mey0T6TkpDhWGgn3cNZplxcCk1uM3bR7QlBNj0Wnfdg7eSfG0msyjQ iFW6xsgGMOTFTK/4nedLqjtAwiA8mTwEHPpqhqJgHCKEwjF8= X-Google-Smtp-Source: AGHT+IFACdp4m3LDG1YkFCFK1VppSwoqF/paJctwk6K1X+i8fFNYhou+1x10i8tCcMGEobd95MqfYA== X-Received: by 2002:a05:6000:2888:b0:3a4:d8f8:fba7 with SMTP id ffacd0b85a97d-3a558a9a0c7mr1954562f8f.2.1749638643304; Wed, 11 Jun 2025 03:44:03 -0700 (PDT) Message-ID: <14bb65f3-5b6e-4b12-8914-25528efee557@suse.com> Date: Wed, 11 Jun 2025 12:44:00 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 5/6] vVMX: operand size in decode_vmx_inst() From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= References: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1749638658713116600 Content-Type: text/plain; charset="utf-8" Address size is entirely irrelevant to operand size determination; For VMREAD and VMWRITE outside of 64-bit mode operand size is 32 bits, while in 64-bit mode it's (naturally) 64 bits. For all other insns it's 64 bits (a physical address) or 128 bits (INVEPT, INVVPID). To limit the amount of change here, keep the latter at reading only 64 bits from guest space. Fixes: 09fce8016596 ("Nested VMX: Emulation of guest VMXON/OFF instruction") Signed-off-by: Jan Beulich --- Beyond the wrong operand handling for INVEPT and INVVPID, the latter also doesn't even have the part read checked to have bits 16 and above all clear. --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -399,13 +399,13 @@ static inline u32 __n2_secondary_exec_co =20 static int decode_vmx_inst(struct cpu_user_regs *regs, struct vmx_inst_decoded *decode, - unsigned long *poperandS) + unsigned long *poperandS, unsigned int size) { struct vcpu *v =3D current; union vmx_inst_info info; struct segment_register seg; unsigned long base, index, seg_base, disp, offset; - int scale, size; + unsigned int scale; =20 __vmread(VMX_INSTRUCTION_INFO, &offset); info.word =3D offset; @@ -437,7 +437,8 @@ static int decode_vmx_inst(struct cpu_us =20 __vmread(EXIT_QUALIFICATION, &disp); =20 - size =3D 1 << (info.fields.addr_size + 1); + if ( !size ) + size =3D 4 << mode_64bit; =20 offset =3D base + index * scale + disp; base =3D !mode_64bit || info.fields.segment >=3D x86_seg_fs ? @@ -452,7 +453,9 @@ static int decode_vmx_inst(struct cpu_us if ( poperandS !=3D NULL ) { pagefault_info_t pfinfo; - int rc =3D hvm_copy_from_guest_linear(poperandS, base, size, + int rc =3D hvm_copy_from_guest_linear(poperandS, base, + min_t(unsigned int, size, + sizeof(*poperandS)), 0, &pfinfo); =20 if ( rc =3D=3D HVMTRANS_bad_linear_to_gfn ) @@ -1549,7 +1552,7 @@ static int nvmx_handle_vmxon(struct cpu_ uint32_t nvmcs_revid; int rc; =20 - rc =3D decode_vmx_inst(regs, &decode, &gpa); + rc =3D decode_vmx_inst(regs, &decode, &gpa, sizeof(gpa)); if ( rc !=3D X86EMUL_OKAY ) return rc; =20 @@ -1776,7 +1779,7 @@ static int nvmx_handle_vmptrld(struct cp unsigned long gpa =3D 0; int rc; =20 - rc =3D decode_vmx_inst(regs, &decode, &gpa); + rc =3D decode_vmx_inst(regs, &decode, &gpa, sizeof(gpa)); if ( rc !=3D X86EMUL_OKAY ) return rc; =20 @@ -1853,7 +1856,7 @@ static int nvmx_handle_vmptrst(struct cp unsigned long gpa =3D 0; int rc; =20 - rc =3D decode_vmx_inst(regs, &decode, &gpa); + rc =3D decode_vmx_inst(regs, &decode, &gpa, sizeof(gpa)); if ( rc !=3D X86EMUL_OKAY ) return rc; =20 @@ -1879,7 +1882,7 @@ static int nvmx_handle_vmclear(struct cp void *vvmcs; int rc; =20 - rc =3D decode_vmx_inst(regs, &decode, &gpa); + rc =3D decode_vmx_inst(regs, &decode, &gpa, sizeof(gpa)); if ( rc !=3D X86EMUL_OKAY ) return rc; =20 @@ -1941,7 +1944,7 @@ static int nvmx_handle_vmread(struct cpu u64 value =3D 0; int rc; =20 - rc =3D decode_vmx_inst(regs, &decode, NULL); + rc =3D decode_vmx_inst(regs, &decode, NULL, 0); if ( rc !=3D X86EMUL_OKAY ) return rc; =20 @@ -1984,7 +1987,7 @@ static int nvmx_handle_vmwrite(struct cp enum vmx_insn_errno err; int rc; =20 - rc =3D decode_vmx_inst(regs, &decode, &operand); + rc =3D decode_vmx_inst(regs, &decode, &operand, 0); if ( rc !=3D X86EMUL_OKAY ) return rc; =20 @@ -2026,7 +2029,7 @@ static int nvmx_handle_invept(struct cpu unsigned long eptp; int ret; =20 - if ( (ret =3D decode_vmx_inst(regs, &decode, &eptp)) !=3D X86EMUL_OKAY= ) + if ( (ret =3D decode_vmx_inst(regs, &decode, &eptp, 16)) !=3D X86EMUL_= OKAY ) return ret; =20 switch ( reg_read(regs, decode.reg2) ) @@ -2054,7 +2057,7 @@ static int nvmx_handle_invvpid(struct cp unsigned long vpid; int ret; =20 - if ( (ret =3D decode_vmx_inst(regs, &decode, &vpid)) !=3D X86EMUL_OKAY= ) + if ( (ret =3D decode_vmx_inst(regs, &decode, &vpid, 16)) !=3D X86EMUL_= OKAY ) return ret; =20 switch ( reg_read(regs, decode.reg2) ) From nobody Fri Oct 31 04:01:22 2025 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=1749639059; cv=none; d=zohomail.com; s=zohoarc; b=R+oAWz7I8s1brSJwgTUvoSog9QAuxN7ZuVt9Z0ZpXah2ms9MS5NGhoZaaCi+wzZc5BQ9Nx98ecR8PjN6hj5eQ4IaKtOY05qv+Vpb5iPNvCEUwyBAksUEj+rErNkgSeY7kLRDH52GpcfURnZ0Zm1TYL/1+I53LUQX+NPRKh2hA6s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1749639059; 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=qJe2b9Ve9u5yERr1EJ80GBKKaRjXsmkBckErKPpU0kg=; b=YrrLAQyWQkfOGdSggGp6u5Ny0nCezrcP0fym48OMsXBuf2jvj2gg8tcZoUY6N/ZFoqNcsmBR+yVK2dZwtdQtydBrYwa5NeV3lubUGBSt1kG1m0+/iShZ4f93XS3thZQlq3quG44RaN+AJNlXQ0rCSDPcoJQZeu4qLTZkQbZqR5Y= 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 1749639059024237.83854399204233; Wed, 11 Jun 2025 03:50:59 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1011525.1389977 (Exim 4.92) (envelope-from ) id 1uPJ2e-0005jb-0l; Wed, 11 Jun 2025 10:50:48 +0000 Received: by outflank-mailman (output) from mailman id 1011525.1389977; Wed, 11 Jun 2025 10:50:47 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPJ2d-0005jU-UO; Wed, 11 Jun 2025 10:50:47 +0000 Received: by outflank-mailman (input) for mailman id 1011525; Wed, 11 Jun 2025 10:50:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1uPIwl-0002CX-1h for xen-devel@lists.xenproject.org; Wed, 11 Jun 2025 10:44:43 +0000 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [2a00:1450:4864:20::42a]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 14fb8239-46b1-11f0-a307-13f23c93f187; Wed, 11 Jun 2025 12:44:42 +0200 (CEST) Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-3a54700a463so532152f8f.1 for ; Wed, 11 Jun 2025 03:44:42 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7482b0edb54sm9164076b3a.173.2025.06.11.03.44.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Jun 2025 03:44:41 -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: 14fb8239-46b1-11f0-a307-13f23c93f187 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1749638682; x=1750243482; darn=lists.xenproject.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=qJe2b9Ve9u5yERr1EJ80GBKKaRjXsmkBckErKPpU0kg=; b=LNmv7DieUcYF7vRUk+HxXaVBWNcHRYi8jC5MUBtBHICgTowB/jj55c21P9eE8QkeFp 0Lbm9scgb5lSpvkzaOfJq4yV9+fvhDwaoCMFmKnpY+aYobyr7/x5YQdKf3jpYlWOD2X8 rlmGGn+mUPuhL1KO8fVMRwWU8otsqcVYXVdGvKLr/08KhoF4BlOshbgpFqGXsMKkbF9f TcaPbIQGCtdhUAKgLqcDUkuThyJwpN43TsUzwRx74ew/M7PjONsh96jUZ55+ouTXsd3i 9dhriES90o6v5khrw4Vtk0LjbdifBeOq51YcAhBIF0WktcYfyFARjn75Fes3ep3n5wfy lvJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749638682; x=1750243482; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:cc:to:from:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qJe2b9Ve9u5yERr1EJ80GBKKaRjXsmkBckErKPpU0kg=; b=Fg0tdNzkedSQK3RPKvajIBTEa2ZfNaFSjAtU9A/rTw3Iihrw7gQDZryB0+TzY5aR/l 26eF15wNASIa66LxXxHiWIgPrWXX4cWj2z/egMikRCJOguqelIGygeatLN02DtfOoOtZ nSFa5KUqRQzfr959rBI34UnyzQLyOeqVQaWeLmexpqcbFxiITzu7sSspYEDcHP+OVtcH EIyPZ5N7dNF7x6ICajXXEqWRXKTU7fxZmxVfZotOsKc6LMM3K9c8XSbEYEVoLkoHYMpU E6deBp95dhxu/WWZhwCh9PGWLBYEZKly68cZKbirJoV8PxsHFDqBGpw5YVVPB5Z5hvQq Bbsg== X-Gm-Message-State: AOJu0Yw7iTFRHIuz+QY/Ue3dKtF65evULmePkrdoOuRbcOVhNmjTMFZd WCxN0tWesW8KMI+Upqui4qzZGsBRjwadmexKtMimA4S//EBP1tE8bdweKqJwNXLTozs8uVx5Vbr /h3Q= X-Gm-Gg: ASbGncurnHjNGDJMw2Ysuthjrk7MxEinGjeeeBprTEuA7x/rxxHYycfUKSaGlec8Cph QeTV7jzRCu3ex2g1zQjuqG90WPx3TJBRXFDPyBy3flT18Yr8mNHXSsZUpwwwLMWho+cFyR1h0FQ R6F4EqQ+VkcixCaqeeEz6hXHPs7n7Infjuq4L8emk8DW6We+S+NmcC18klCm0m4fKVcQnkCmuzX hAGdbOt2BlsryjzCW6QFawx91HyqTpkLD86AamDnfEt4IlSJ3lTe134XyA8DAOk2SlodVPsPZsw kMtJNb2vQkVRN5voPU2qgmHgvugB3aaHJr3gsxXJ8ggZm1jiiLfJevRxhTg8N5lOCE1/kubFDJC jBuzpAZsAwok8AISnXzGvAUP2T/DXZ5t67GxyP8Qa290iRFw= X-Google-Smtp-Source: AGHT+IEThpE825vd6h/mVkbXdfWYgfywPI7WN9IWWju2j1Zh1DSGUJ9hblzZlgDPFzb/2sa9bWeH1g== X-Received: by 2002:adf:edc1:0:b0:3a5:270e:7d3 with SMTP id ffacd0b85a97d-3a55824dfdcmr1896420f8f.13.1749638681906; Wed, 11 Jun 2025 03:44:41 -0700 (PDT) Message-ID: <9d0696eb-52d9-4501-8aa6-2d5e572d6433@suse.com> Date: Wed, 11 Jun 2025 12:44:39 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 6/6] vVMX: address size in decode_vmx_inst() From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , =?UTF-8?Q?Roger_Pau_Monn=C3=A9?= References: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: <44d67587-415e-4ec1-a433-64a12aea80d7@suse.com> Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1749639059889116600 Content-Type: text/plain; charset="utf-8" While the original use of the address size file in the instruction info provided was wrong, it still wants using: The offset into the designated segment still may need truncating accordingly. Fixes: 09fce8016596 ("Nested VMX: Emulation of guest VMXON/OFF instruction") Signed-off-by: Jan Beulich --- a/xen/arch/x86/hvm/vmx/vvmx.c +++ b/xen/arch/x86/hvm/vmx/vvmx.c @@ -441,6 +441,13 @@ static int decode_vmx_inst(struct cpu_us size =3D 4 << mode_64bit; =20 offset =3D base + index * scale + disp; + switch ( info.fields.addr_size ) + { + case 0: offset =3D (uint16_t)offset; break; + case 1: offset =3D (uint32_t)offset; break; + default: break; + } + base =3D !mode_64bit || info.fields.segment >=3D x86_seg_fs ? seg_base + offset : offset; if ( offset + size - 1 < offset ||