Cover Letter Detail
Show a cover letter.
GET /api/covers/2226131/?format=api
{ "id": 2226131, "url": "http://patchwork.ozlabs.org/api/covers/2226131/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260422101043.1234229-1-alex.bennee@linaro.org/", "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": "<20260422101043.1234229-1-alex.bennee@linaro.org>", "list_archive_url": null, "date": "2026-04-22T10:10:11", "name": "[v2,00/31] target/arm: fully model WFxT instructions for A-profile", "submitter": { "id": 39532, "url": "http://patchwork.ozlabs.org/api/people/39532/?format=api", "name": "Alex Bennée", "email": "alex.bennee@linaro.org" }, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260422101043.1234229-1-alex.bennee@linaro.org/mbox/", "series": [ { "id": 500957, "url": "http://patchwork.ozlabs.org/api/series/500957/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=500957", "date": "2026-04-22T10:10:11", "name": "target/arm: fully model WFxT instructions for A-profile", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/500957/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/2226131/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=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=XqUj04bA;\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=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)" ], "Received": [ "from lists1p.gnu.org (lists1p.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 4g0w4J3qm9z1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 22 Apr 2026 20:11:43 +1000 (AEST)", "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wFUXo-0006qw-KY; Wed, 22 Apr 2026 06:10:56 -0400", "from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <alex.bennee@linaro.org>)\n id 1wFUXh-0006oL-SO\n for qemu-devel@nongnu.org; Wed, 22 Apr 2026 06:10:50 -0400", "from mail-ed1-x52a.google.com ([2a00:1450:4864:20::52a])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <alex.bennee@linaro.org>)\n id 1wFUXf-0000ha-NF\n for qemu-devel@nongnu.org; Wed, 22 Apr 2026 06:10:49 -0400", "by mail-ed1-x52a.google.com with SMTP id\n 4fb4d7f45d1cf-6729c6f0ca7so6257853a12.0\n for <qemu-devel@nongnu.org>; Wed, 22 Apr 2026 03:10:46 -0700 (PDT)", "from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id\n ffacd0b85a97d-43fe4cb135asm48912309f8f.6.2026.04.22.03.10.44\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 22 Apr 2026 03:10:44 -0700 (PDT)", "from draig.lan (localhost [IPv6:::1])\n by draig.lan (Postfix) with ESMTP id 6E5A55F93F;\n Wed, 22 Apr 2026 11:10:43 +0100 (BST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776852645; x=1777457445; darn=nongnu.org;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=qTC5LhoRkf6ve0e8Svdu6+rIAu2GnxjtZscQzak026I=;\n b=XqUj04bAnhjcO8+MXlFEkJMAV7wzztyuSKnraatj/yl/wykiXlKmwQr5lap0jlW2Bz\n nm/6KVbVrT1Kh/ddz8jDKt4H6Z0sJfSJ+TLxLUn5LWK125VfJ+wyC7MRezZyT5mOCqTG\n FmGLNJorhnsUa2z8kAftdkMndXjhVip1oWFXr74uKrbf7WgZwPFsUjjhIOdZbyC7tuBc\n 2Vp6L5xl+M7UCi11q9tOyDlnsS+SJS7VHMpJVAbuaAUHD7JiTzEgnIlklzrOeaTUBKEM\n 6QX9ZGIZ/4W6EVqOvBxG1bbAy4XDHTFuacd/pP5rnJT9CQADOLIQMsEJ9H0kMxi7pjLq\n VZ4Q==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776852645; x=1777457445;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=qTC5LhoRkf6ve0e8Svdu6+rIAu2GnxjtZscQzak026I=;\n b=clX2DFFGOcyCGydzo0nHkhN9S/VAo57mRkCWsoy8ZyEg6JYSx6cMEBtJ5r9TqvPMEC\n 2X4TC10BZl2OC9SRTcgqEPXBtXzyAD/YWf8GdRD61zQtwQDdBqMZdgYFk3CVFHs0lSTq\n i3QFIPP3VP0RWEOTj3NwtMUV0LFNuHNmKQ54jH/4mKaq50by0bDlyJbB3LkbhLCBrXkN\n sKocXANXIIJmCgoYgVUYyHAKMZNUBwdCrh94+Lcq/Qeg2LfTSMikoMwrHriIST2ZKRnV\n VcG9tlX35DK/BGRx+5L5t0P8Wm9CSlNoyYMmsSRdEtdXMJvwYsqjHykZkL6HliJTWfao\n D9xw==", "X-Gm-Message-State": "AOJu0YxoGnW4ZGPfdEz0I3OSanQMPlzi2w4+j2wp1Gcoti3tApA3csUy\n XEv3F7EUdCkjiE5seSMt90voCCZeJFlr2z/IGxtwU0JxZiLqSp7+ntvPYT/UIvgS2v4=", "X-Gm-Gg": "AeBDietQLHotwCn+VgGgLf4f9LtzOqA6NEul00UCpTchSm+wqCgI3JQ31w04ynPteVh\n ZwI/eC11Qo0FD5CFiBM+IPwM8aWqFgGnCD1Hu5KV/34Lnc2xbCLZy6HhWpTyQmGGgnExyfZ/UJ1\n enNJJHJVjK0tz8VmLiS79gBsxBKZIFofgFWxflsG9CInvq2wL12rzHZBdTmK5jq1uKRQry3EYlz\n xot6NSaEMVv6BaLuIJeMJLQCQ5+bRlEUHjVwtfOJuXwcBe+bxn6v7RY+SUJo5uNr70TnNcnWVFE\n IWzhC11MUNDPWN2/M/AbQpNsepeTjDve05g0FFIDUCScnnvkCdvA9hK9eNH6P5QH5SyjgBHMY9x\n oizUOKKUV2v0xb1b0YeVjGOpF55qRhB1fYv1cd9ViHvWGT5bL+51SugJrq+BCQwtSiT/ptZ1s72\n Vf49jH50Zm5sZ4pguqW5yRUzHKtzHbrXdwzw==", "X-Received": "by 2002:a17:907:da7:b0:ba7:62f:9fa4 with SMTP id\n a640c23a62f3a-ba7062fa21cmr624513366b.6.1776852645250;\n Wed, 22 Apr 2026 03:10:45 -0700 (PDT)", "From": "=?utf-8?q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>", "To": "qemu-devel@nongnu.org", "Cc": "Alexander Graf <agraf@csgraf.de>, qemu-arm@nongnu.org,\n Peter Maydell <peter.maydell@linaro.org>,\n Paolo Bonzini <pbonzini@redhat.com>,\n Mohamed Mediouni <mohamed@unpredictable.fr>, kvm@vger.kernel.org,\n Pedro Barbuda <pbarbuda@microsoft.com>,\n =?utf-8?q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>", "Subject": "[PATCH v2 00/31] target/arm: fully model WFxT instructions for\n A-profile", "Date": "Wed, 22 Apr 2026 11:10:11 +0100", "Message-ID": "<20260422101043.1234229-1-alex.bennee@linaro.org>", "X-Mailer": "git-send-email 2.47.3", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "8bit", "Received-SPF": "pass client-ip=2a00:1450:4864:20::52a;\n envelope-from=alex.bennee@linaro.org; helo=mail-ed1-x52a.google.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_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham 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": "This series fully models the behaviour of WFxT instructions. We\nalready had support for WFE for M-profile but we left off A-profile as\nit has more potential sources of wake-ups. The main one is the event\nstream which includes events from significant bits of the timer\nticking over.\n\nThe series starts with some refactoring of the syndrome register\nhelpers to use registerfields. We then expand the WFIT trap handling\nto report the register used. We then implement the event stream events\nfor SEV, global monitor and the timer related ones before enabling WFE\nfor A-profile and then finally WFET.\n\nNote on AI usage. As an experiment I previously posted an RFC series\nwith the help of Gemini. This series however is a ground up\nre-implementation which takes some different approaches on modelling\nthe event stream. In particular rather than running multiple timers we\nuse the same wxft timer and just compute if the timeout or timer event\nwill come first.\n\nv2\n - I've kept the tests separate, see:\n\n Message-ID: <20260417164328.1009132-1-alex.bennee@linaro.org>\n Date: Fri, 17 Apr 2026 17:43:20 +0100\n Subject: [PATCH 0/7] tests/tcg: more capabilities for aarch64-softmmu tests\n From: =?UTF-8?q?Alex=20Benn=C3=A9e?= <alex.bennee@linaro.org>\n\n - tweaks to global monitor behaviour\n - STLR/STL will also trigger events to avoid deadlocks\n - see under the --- in the patches for details\n\nAlex.\n\nAlex Bennée (31):\n target/arm: migrate basic syndrome helpers to registerfields\n target/arm: migrate system/cp trap syndromes to registerfields\n target/arm: migrate FP/SIMD trap syndromes to registerfields\n target/arm: migrate eret trap syndromes to registerfields\n target/arm: migrate SME trap syndromes to registerfields\n target/arm: migrate PAC trap syndromes to registerfields\n target/arm: migrate BTI trap syndromes to registerfields\n target/arm: migrate BXJ trap syndromes to registerfields\n target/arm: migrate Granule Protection traps to registerfields\n target/arm: migrate fault syndromes to registerfields\n target/arm: migrate debug syndromes to registerfields\n target/arm: migrate wfx syndromes to registerfields\n target/arm: migrate gcs syndromes to registerfields\n target/arm: migrate memory op syndromes to registerfields\n target/arm: migrate check_hcr_el2_trap to use syndrome helper\n target/arm: use syndrome helpers in arm_cpu_do_interrupt_aarch32_hyp\n target/arm: use syndrome helpers to set SAME_EL EC bit\n target/arm: make whpx use syndrome helpers for decode\n target/arm: make hvf use syndrome helpers for decode\n target/arm: use syndrome helpers in merge_syn_data_abort\n target/arm: use syndrome helpers to query VNCR bit\n target/arm: remove old syndrome defines\n target/arm: report register in WFIT syndromes\n target/arm: teach arm_cpu_has_work about halting reasons\n target/arm: redefine event stream fields\n target/arm: ensure aarch64 DISAS_WFE will exit\n target/arm: implements SEV/SEVL for all modes\n target/arm: hoist event broadcast code into a helper\n target/arm: implement global monitor events\n target/arm: enable event stream on WFE instructions\n target/arm: implement WFET\n\n target/arm/cpu.h | 27 ++\n target/arm/internals.h | 31 +-\n target/arm/syndrome.h | 595 +++++++++++++++++++++++++++------\n target/arm/tcg/helper-defs.h | 3 +-\n target/arm/tcg/translate.h | 32 ++\n target/arm/tcg/a32.decode | 5 +-\n target/arm/tcg/a64.decode | 5 +-\n target/arm/tcg/t16.decode | 4 +-\n target/arm/tcg/t32.decode | 4 +-\n target/arm/arm-powerctl.c | 4 +-\n target/arm/cpu.c | 53 ++-\n target/arm/helper.c | 12 +-\n target/arm/hvf/hvf.c | 14 +-\n target/arm/kvm.c | 5 +-\n target/arm/machine.c | 2 +-\n target/arm/tcg/debug.c | 2 +-\n target/arm/tcg/op_helper.c | 216 ++++++++++--\n target/arm/tcg/tlb_helper.c | 6 +-\n target/arm/tcg/translate-a64.c | 58 +++-\n target/arm/tcg/translate.c | 33 +-\n target/arm/tcg/vfp_helper.c | 5 +-\n target/arm/whpx/whpx-all.c | 13 +-\n 22 files changed, 929 insertions(+), 200 deletions(-)" }