{"id":2196562,"url":"http://patchwork.ozlabs.org/api/1.0/covers/2196562/?format=json","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/1.0/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260215052225.22513-1-mohamed@unpredictable.fr>","date":"2026-02-15T05:22:11","name":"[v3,00/14] whpx: x86 updates (2026-02)","submitter":{"id":91318,"url":"http://patchwork.ozlabs.org/api/1.0/people/91318/?format=json","name":"Mohamed Mediouni","email":"mohamed@unpredictable.fr"},"series":[{"id":492201,"url":"http://patchwork.ozlabs.org/api/1.0/series/492201/?format=json","date":"2026-02-15T05:22:12","name":"whpx: x86 updates (2026-02)","version":3,"mbox":"http://patchwork.ozlabs.org/series/492201/mbox/"}],"headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=unpredictable.fr header.i=@unpredictable.fr\n header.a=rsa-sha256 header.s=sig1 header.b=QVA3j0qw;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fDDpL0PMYz1xxn\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 15 Feb 2026 16:23:38 +1100 (AEDT)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1vrUaj-0000Fz-SM; Sun, 15 Feb 2026 00:22:45 -0500","from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <mohamed@unpredictable.fr>)\n id 1vrUad-0000Fc-Vj\n for qemu-devel@nongnu.org; Sun, 15 Feb 2026 00:22:40 -0500","from p-west2-cluster3-host6-snip4-9.eps.apple.com ([57.103.69.102]\n helo=outbound.mr.icloud.com)\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <mohamed@unpredictable.fr>)\n id 1vrUaa-0004q1-M7\n for qemu-devel@nongnu.org; Sun, 15 Feb 2026 00:22:38 -0500","from outbound.mr.icloud.com (unknown [127.0.0.2])\n by p00-icloudmta-asmtp-us-west-2a-60-percent-1 (Postfix) with ESMTPS id\n DFEAA180010D; Sun, 15 Feb 2026 05:22:32 +0000 (UTC)","from localhost.localdomain (unknown [17.57.152.38])\n by p00-icloudmta-asmtp-us-west-2a-60-percent-1 (Postfix) with ESMTPSA id\n 3CB891800103; Sun, 15 Feb 2026 05:22:29 +0000 (UTC)"],"Dkim-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=unpredictable.fr;\n s=sig1; t=1771132954; x=1773724954;\n bh=5r6MQJEJ3iESg5UlG2XKuo1X6toQ1yNHBuwcqgZU86U=;\n h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type:x-icloud-hme;\n b=QVA3j0qw3oFDGgmjDolq1IAu3vsHBMA+AjdTnonuu7yhnJosIKNgPqLwDd3kkRq0gPEy7t0zWkv5eJ63T0bGBMsD7ol+yF73CK4LUwaJRgpqwq1JhaW3z3R6p791LCfq2dFxPbL+h6YOTHqmnDLBZiPf4xW3jSHfS6jwNWooJ5sbZF7a6yYzg1+RB8lRNs6fUA8gvYcFu7YVHsnpsbvk17rU9KyTll0ZMGmTSpbSLXbk4i5KcKiEVnrvHaqOQzGKnb0hNQG92voQUMvY8R3M4DImeGgHzKosqRojyrOrmZPk2MhhfCvxTKonuMbSiq0N+meDRSkuUG4CcvP15y31iQ==","mail-alias-created-date":"1752046281608","From":"Mohamed Mediouni <mohamed@unpredictable.fr>","To":"qemu-devel@nongnu.org","Cc":"Phil Dennis-Jordan <phil@philjordan.eu>,\n Bernhard Beschow <shentey@gmail.com>, Cameron Esfahani <dirty@apple.com>,\n Magnus Kulke <magnuskulke@linux.microsoft.com>, qemu-arm@nongnu.org,\n Peter Maydell <peter.maydell@linaro.org>,\n Roman Bolshakov <rbolshakov@ddn.com>, Paolo Bonzini <pbonzini@redhat.com>,\n Mohamed Mediouni <mohamed@unpredictable.fr>,\n Pedro Barbuda <pbarbuda@microsoft.com>,\n =?utf-8?q?Daniel_P=2E_Berrang=C3=A9?= <berrange@redhat.com>, =?utf-8?q?Marc?=\n\t=?utf-8?q?-Andr=C3=A9_Lureau?= <marcandre.lureau@redhat.com>,\n Magnus Kulke <magnus.kulke@linux.microsoft.com>, =?utf-8?q?Philippe_Mathieu?=\n\t=?utf-8?q?-Daud=C3=A9?= <philmd@linaro.org>, Wei Liu <wei.liu@kernel.org>,\n Zhao Liu <zhao1.liu@intel.com>","Subject":"[PATCH v3 00/14] whpx: x86 updates (2026-02)","Date":"Sun, 15 Feb 2026 06:22:11 +0100","Message-ID":"<20260215052225.22513-1-mohamed@unpredictable.fr>","X-Mailer":"git-send-email 2.50.1","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"8bit","X-Proofpoint-ORIG-GUID":"kpZ0zTdTQTYABzvQk9sCg3xn0gqlvhUm","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwMjE1MDAzNiBTYWx0ZWRfX68DekAS9aRPz\n h1kJdPsmOcnE9+5scOBx3a89Nw9ANuRgXkHXXsRWDJjBoZl4epc2dgTojQxbvBfxdnzpo59hgR0\n kD0pwkTjV5EA33zFd4vXk8fmklabQ8d+zImv7xyoQ31Ap5/vIY9VtGaepnRSFiTj2Vk9q4rT8YH\n /ib3qb1YfqIy6Qc/t4aqp4RL7Q1CYU+7WRUjiw+3/MrDI3ZIuxK1n1wGR7JwJ4XASRGp2jZHSIm\n 5G6+GQcL0zMQhiPJI4v1evtOQnEWNyukPXD6ctNex4zLmarOSg0KlR9xiqhXoO2ryvbGbG8bkWv\n k3ypcRA7G0KM4IE2OFBU5Um1AN0oyooew+ZxecyMv/ivdN7JQVfh0NGM7mqxIM=","X-Authority-Info-Out":"v=2.4 cv=ZsPg6t7G c=1 sm=1 tr=0 ts=69915819\n cx=c_apl:c_apl_out:c_pps a=9OgfyREA4BUYbbCgc0Y0oA==:117\n a=9OgfyREA4BUYbbCgc0Y0oA==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10\n a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22 a=GgsMoib0sEa3-_RKJdDe:22\n a=VwQbUJbxAAAA:8 a=pGLkceISAAAA:8 a=4FhJtAkXLpUwS9ICwxIA:9 a=QEXdDO2ut3YA:10","X-Proofpoint-GUID":"kpZ0zTdTQTYABzvQk9sCg3xn0gqlvhUm","X-Proofpoint-Virus-Version":"vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-02-15_02,2026-02-13_01,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=notspam policy=default score=0 adultscore=0\n mlxscore=0 phishscore=0 malwarescore=0 mlxlogscore=758 bulkscore=0\n clxscore=1030 suspectscore=0 spamscore=0 lowpriorityscore=0 classifier=spam\n authscore=0 adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000\n definitions=main-2602150036","X-JNJ":"\n AAAAAAABX1B1dAd7tds/s9f9lreiQ0ioWrB32hggdAjP72YKjQeg7oDOrocsqdRPbRVUDbh3G8xdb8dFZi6pIoLdLw2Au3BnzzL/X3H/d5swYH7xU7kY0v+kzVQq30SPQj99l0cNZ5qYrK42HwysaFFX9K37zqLQGoGhVU8p5zLJkj8sjVoQb62U8atGWPb+9FeMxWrvqjxecSAqLuyMZHv3mBsZJOgtneeClZFozcnLzpRA6NOlahyUgSmo3XQBLwYJ6W+doej58f7Jv5cyyJX85GN1OosN6l6VijYP2LuDYBASVqwSJgaCL3gsLzXn5mkuPZi11O1EfBx1yDwAWH6KFvqGSJ+dxGErRg/FKkS9E/Dc3pJb/B7tmcxxY7C2ZHrtqJhnMDc1FkgWFp9qOphIageBQxW5urg0WPrGGbxtGxv58ol3ga2uX5r7uhinB0/EYsEXX6pKTi72mchVQKgWhESF4PjNHppb7otoELWPtcZCUC6FcGtNxl412JE43TlYJ5mMyZ17qlXG8maQp2VuUkyxGh5A41JjNQPj1dotRAZ77QJutZvlQ+dXUQpAaENSQjAV4AgLqlAzwoGEDOy0h1defRuqhZV7SVWpLl1/6XIPQS1Cv9z9/V+HM7DQ44XbsBuDly70AQb8NKK06FgUHEjWJvP1xAiFSRODUinEznzfSGrCHvHhDCkijIoi/4eXNQFLXsPnV3o19564gFhuveQpS+Le236QxH+a4kAxd2sAM2lQ8gZY7z6J6FVgUFmHAv7zp06Ss7+IPPNZfwm+91QoS8f/xwDjMGtWK7WRImuMlN62L/6VCnL3OkVPJOsM8CBvmon3zMDwp4i2JoLPbpnQTZh9PoCn","Received-SPF":"pass client-ip=57.103.69.102;\n envelope-from=mohamed@unpredictable.fr; helo=outbound.mr.icloud.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,\n SPF_HELO_PASS=-0.001,\n SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"},"content":"x86_64 WHPX updates:\n\n- target/i386/emulate fixes\n- move HVF x86_mmu code to common code\n- fixing debug support, which was broken since around: \"gdbstub: move guest debug support check to ops\"\na48e7d9e52f8fe8b47f4c74f3e99d9d677b87fe5\n- switch over from winhvemulation to common x86 VM exit emulation code\n- remove some log lines\n- Remove WHPX CPUID traps as they're currently quite broken\n\nChanges added since v2:\n- Take target/i386/emulate patches from Bernhard Beschow\nhttps://lore.kernel.org/qemu-devel/20260214131659.31378-1-shentey@gmail.com/\n- Rework state levels to an enum\n- Skip some state loading on the registers save path too\n\nChanges added since v1:\n- move HVF x86_mmu code to common code\n- Use x86_mmu in WHPX MMIO exits\n- Remove WHPX CPUID traps as they're currently quite broken\n- Optimise MMIO vmexits by not restoring the full state\n\nBernhard Beschow (3):\n  target/i386/emulate/x86_decode: Fix compiler warning\n  target/i386/hvf/x86_mmu: Fix compiler warning\n  target/i386/emulate/x86_decode: Actually use stream in\n    decode_instruction_stream()\n\nMohamed Mediouni (11):\n  target/i386: emulate, hvf: move x86_mmu to common code\n  whpx: i386: re-enable guest debug support\n  whpx: preparatory changes before switching over from winhvemulation\n  whpx: refactor whpx_destroy_vcpu to arch-specific function\n  whpx: move whpx_get_reg/whpx_set_reg to generic code\n  whpx: i386: switch over from winhvemulation to target/i386/emulate\n  whpx: i386: remove remaining winhvemulation support code\n  whpx: i386: remove messages\n  whpx: i386: remove CPUID trapping\n  whpx: common, i386, arm: rework state levels\n  whpx: i386: saving/restoring less state for\n    WHPX_LEVEL_FAST_RUNTIME_STATE\n\n accel/whpx/whpx-accel-ops.c            |   8 +\n accel/whpx/whpx-common.c               |  68 +++--\n include/system/whpx-accel-ops.h        |  16 +-\n include/system/whpx-all.h              |  11 +-\n include/system/whpx-common.h           |   6 +-\n include/system/whpx-internal.h         |  16 -\n meson.build                            |   3 +-\n target/arm/whpx/whpx-all.c             |  41 +--\n target/i386/cpu.h                      |   2 +-\n target/i386/emulate/meson.build        |   2 +\n target/i386/emulate/x86_decode.c       |   6 +-\n target/i386/{hvf => emulate}/x86_mmu.c |  20 +-\n target/i386/{hvf => emulate}/x86_mmu.h |   0\n target/i386/hvf/hvf.c                  |  10 +-\n target/i386/hvf/meson.build            |   1 -\n target/i386/hvf/x86.c                  |   2 +-\n target/i386/hvf/x86_task.c             |   2 +-\n target/i386/mshv/meson.build           |   4 +\n target/i386/whpx/whpx-all.c            | 391 +++++++++----------------\n 19 files changed, 253 insertions(+), 356 deletions(-)\n rename target/i386/{hvf => emulate}/x86_mmu.c (92%)\n rename target/i386/{hvf => emulate}/x86_mmu.h (100%)"}