Cover Letter Detail
Show a cover letter.
GET /api/1.2/covers/2232951/?format=api
{ "id": 2232951, "url": "http://patchwork.ozlabs.org/api/1.2/covers/2232951/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260505112014.102993-1-alex.bennee@linaro.org/", "project": { "id": 14, "url": "http://patchwork.ozlabs.org/api/1.2/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": "<20260505112014.102993-1-alex.bennee@linaro.org>", "list_archive_url": null, "date": "2026-05-05T11:20:06", "name": "[v5,0/7] target/arm: fully model WFxT instructions for A-profile", "submitter": { "id": 39532, "url": "http://patchwork.ozlabs.org/api/1.2/people/39532/?format=api", "name": "Alex Bennée", "email": "alex.bennee@linaro.org" }, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260505112014.102993-1-alex.bennee@linaro.org/mbox/", "series": [ { "id": 502820, "url": "http://patchwork.ozlabs.org/api/1.2/series/502820/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=502820", "date": "2026-05-05T11:20:06", "name": "target/arm: fully model WFxT instructions for A-profile", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/502820/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/2232951/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=rGutcQ6r;\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 4g8wzv3tBXz1yJV\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 05 May 2026 21:20: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 1wKDp7-0007Ew-UV; Tue, 05 May 2026 07:20:21 -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 1wKDp6-0007E4-La\n for qemu-devel@nongnu.org; Tue, 05 May 2026 07:20:20 -0400", "from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a])\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 1wKDp4-0005oy-Bh\n for qemu-devel@nongnu.org; Tue, 05 May 2026 07:20:20 -0400", "by mail-wr1-x42a.google.com with SMTP id\n ffacd0b85a97d-44985f4ab0fso2309150f8f.0\n for <qemu-devel@nongnu.org>; Tue, 05 May 2026 04:20:17 -0700 (PDT)", "from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id\n ffacd0b85a97d-45055d36dacsm3723597f8f.32.2026.05.05.04.20.15\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 05 May 2026 04:20:15 -0700 (PDT)", "from draig.lan (localhost [IPv6:::1])\n by draig.lan (Postfix) with ESMTP id 497815F8E7;\n Tue, 05 May 2026 12:20:14 +0100 (BST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1777980016; x=1778584816; 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=AoNkPdfNYcUACJXAldjc8yWRMq0hFedw1nCez7xbQqU=;\n b=rGutcQ6rmGVZFhSRuPLO0VEtJrwCeMBJPCFFZZ5kc1SD+0CDWRJuQxqihC2gQKBKqq\n 7qSQc79Wd/f46OUYKLwMOpWW1MUyargS0aJ6bL85BD2+u4NEUr4sOq86YU/yRs+uubmr\n Xha0rOwIFDPnO5nMLmmdplqcOI2hj6pJoOuSCXMCmgBCqDHoM+ZgGnlPt8dFJ5hWB9tm\n i7ONxbp5dxU4Ut3HROVQEu6fGqW9CUi+eLoJ5F7aeOhWhrPip4UN9WWwJCeK8l2P9FAS\n 7eyBKMMAng60wNj1ewGSWk13uHGrHK2J330JxoOMl9pE7yJ4o3KbJe9A+a6nocbB6oDk\n gJow==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777980016; x=1778584816;\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=AoNkPdfNYcUACJXAldjc8yWRMq0hFedw1nCez7xbQqU=;\n b=k4n9fFRV2LF6i7k5Hc0hB91l0XepK4LGUGn1jgxGlwkDAjplDMYbDCiW6cWK7ZvT9y\n xziHKTXPti682dt6FbyiJCIMKj/XcgBt4AXtwflTIpOOgC/1GQs2FTSyZWqsdOndVIwr\n +er/1s7NPIcjNoxpjbnfMU8sW11CfE7cN2C41T0ZZ+hH0Benr8z6H2Jss0RXTBYKO6Ij\n 5lv9G+bZaV5GKVFkE8mFhcTU1IHA2tnmucoZ04c4vniaNDfxpmLJgwKf6V845aMBkrG4\n ZWsD6h6h6DCk9i9glZj1WtHRLh4YjPiTErMalN2r+DsPPO+ReiOjpkXze+7xxJ26SuBg\n ixiw==", "X-Gm-Message-State": "AOJu0YzNFpNvT3l+eqPZTg7FHxDJEMJ60qLCuY16E9J1MYzgUgI7U8Ul\n P8euNd3Nvv4+cJFUVIntxwBEijqcG1kre7kXeP0uZWdc/9mauAkqSZ8Yi9RN+prfyl8=", "X-Gm-Gg": "AeBDieuGfln2eUZKpiuO1YqIbO7pxcaetkUywz7eDINHuwoRubkXxDafjJFk940SWq5\n kBx6F6lb5pR8Gp9JpXmfMmI6ZyjGlw4BuDWjPI8mkV/HG6uCCM/5IC+4dfi5GSZNIcwW7uXpPW4\n Zh2qgTFhsrCNvqrkPJX/3Rb/1QUeAz1SEnLP7C9bfaMNbOTY9idXvWkrF4hvbsTkZ4HcO6K60Ym\n wJpKwyXfEPdXB0lRlWSLSFqoE+1/8vXGan0Y7Up1crwTrMB5xsnLILAKPN03sotY7ERPGBotFiA\n Av+GhOlBISxGwenrGr16n6de6PlQsFKzqlJLzH2yyciD7grT10NPpaaTS6wLaRU5lUR+S9pVRgd\n pH/UGufUAA5UKmTzwGgVO4gEOPGNWRfmYJspXeJJyXOHceEqluOU6DqOOb/Y5qIqd25nOkkqmAI\n q1FAKY5krY3sANBQzT7yM7O1of3CG6d96XVA==", "X-Received": "by 2002:a5d:6a04:0:b0:450:e5fd:e1a1 with SMTP id\n ffacd0b85a97d-450e5fde1cbmr508966f8f.3.1777980016391;\n Tue, 05 May 2026 04:20:16 -0700 (PDT)", "From": "=?utf-8?q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>", "To": "qemu-devel@nongnu.org", "Cc": "Peter Maydell <peter.maydell@linaro.org>, kvm@vger.kernel.org,\n Alexander Graf <agraf@csgraf.de>,\n Mohamed Mediouni <mohamed@unpredictable.fr>,\n Paolo Bonzini <pbonzini@redhat.com>, Pedro Barbuda <pbarbuda@microsoft.com>,\n qemu-arm@nongnu.org, =?utf-8?q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>", "Subject": "[PATCH v5 0/7] target/arm: fully model WFxT instructions for\n A-profile", "Date": "Tue, 5 May 2026 12:20:06 +0100", "Message-ID": "<20260505112014.102993-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::42a;\n envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42a.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 refactoring from the previous iterations of the patch have now\nbeen merged.\n\nI've dropped trying to fully model the global monitor in favour of\ntaking advantage of the architectural flexibility to have an IMPDEF\nevent wake up for any reason. We treat the setting of exclusive_addr\nas such a reason because it indicates the current vCPU is in a ldstx\nexclusive region and we don't want the guest to deadlock. This does mean\nthe system won't sleep on WFE enabled locks but people shouldn't be\nrelying on QEMU to model real world sleep patterns anyway given the\nefficiency of emulation compared to real HW.\n\nOnly the following patch still need review:\n\n target/arm: enable event stream on WFE instructions\n\nv5\n - addressed rth's comments\n - all but one patch now reviewed\n\nv4\n - precursor refactor patches now merged\n - dropped global monitor emulation\n - addressed other comments\n - tested with check-tcg and kvm-unit-test wfx tests\n\nv3\n - fixed the WFE exception handling\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 (7):\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: enable event stream on WFE instructions\n target/arm: handle the WFE trap case\n target/arm: implement WFET\n\n target/arm/cpu.h | 16 +++\n target/arm/internals.h | 22 ++-\n target/arm/tcg/helper-defs.h | 3 +-\n target/arm/tcg/translate.h | 18 +++\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 | 6 +-\n target/arm/cpu.c | 53 +++++--\n target/arm/helper.c | 8 +-\n target/arm/kvm.c | 5 +-\n target/arm/machine.c | 2 +-\n target/arm/tcg/op_helper.c | 254 ++++++++++++++++++++++++++++++---\n target/arm/tcg/translate-a64.c | 64 +++++----\n target/arm/tcg/translate.c | 31 ++--\n 16 files changed, 395 insertions(+), 105 deletions(-)" }