Show a cover letter.

GET /api/covers/2196562/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2196562,
    "url": "http://patchwork.ozlabs.org/api/covers/2196562/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260215052225.22513-1-mohamed@unpredictable.fr/",
    "project": {
        "id": 14,
        "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api",
        "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": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20260215052225.22513-1-mohamed@unpredictable.fr>",
    "list_archive_url": null,
    "date": "2026-02-15T05:22:11",
    "name": "[v3,00/14] whpx: x86 updates (2026-02)",
    "submitter": {
        "id": 91318,
        "url": "http://patchwork.ozlabs.org/api/people/91318/?format=api",
        "name": "Mohamed Mediouni",
        "email": "mohamed@unpredictable.fr"
    },
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260215052225.22513-1-mohamed@unpredictable.fr/mbox/",
    "series": [
        {
            "id": 492201,
            "url": "http://patchwork.ozlabs.org/api/series/492201/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=492201",
            "date": "2026-02-15T05:22:12",
            "name": "whpx: x86 updates (2026-02)",
            "version": 3,
            "mbox": "http://patchwork.ozlabs.org/series/492201/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2196562/comments/",
    "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%)"
}