Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.2/patches/2222661/?format=api
{ "id": 2222661, "url": "http://patchwork.ozlabs.org/api/1.2/patches/2222661/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260413103754.45745-1-peter.maydell@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": "<20260413103754.45745-1-peter.maydell@linaro.org>", "list_archive_url": null, "date": "2026-04-13T10:37:54", "name": "[for-11.0,?] docs: Deprecate Arm OABI and NWFPE support", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "134d54187361bd376e6cb1382785e62e210b5963", "submitter": { "id": 5111, "url": "http://patchwork.ozlabs.org/api/1.2/people/5111/?format=api", "name": "Peter Maydell", "email": "peter.maydell@linaro.org" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260413103754.45745-1-peter.maydell@linaro.org/mbox/", "series": [ { "id": 499679, "url": "http://patchwork.ozlabs.org/api/1.2/series/499679/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=499679", "date": "2026-04-13T10:37:54", "name": "[for-11.0,?] docs: Deprecate Arm OABI and NWFPE support", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/499679/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2222661/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2222661/checks/", "tags": {}, "related": [], "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=LNt2gAR/;\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 4fvP570zygz1yDF\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 13 Apr 2026 20:38:19 +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 1wCEg6-0000Z3-Lg; Mon, 13 Apr 2026 06:38:02 -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 <peter.maydell@linaro.org>)\n id 1wCEg4-0000YW-I6\n for qemu-devel@nongnu.org; Mon, 13 Apr 2026 06:38:00 -0400", "from mail-wm1-x334.google.com ([2a00:1450:4864:20::334])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <peter.maydell@linaro.org>)\n id 1wCEg1-0001mv-5h\n for qemu-devel@nongnu.org; Mon, 13 Apr 2026 06:37:58 -0400", "by mail-wm1-x334.google.com with SMTP id\n 5b1f17b1804b1-488b8efed61so40117035e9.1\n for <qemu-devel@nongnu.org>; Mon, 13 Apr 2026 03:37:56 -0700 (PDT)", "from lanath.. (wildly.archaic.org.uk. [81.2.115.145])\n by smtp.gmail.com with ESMTPSA id\n ffacd0b85a97d-43d63e46713sm32893051f8f.21.2026.04.13.03.37.54\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Mon, 13 Apr 2026 03:37:54 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776076675; x=1776681475; 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=/gRv9RLfF/F+lj385yyoTJLt207V/mbUmBgkzmiVuuw=;\n b=LNt2gAR/dlr21TUCevbumLhYgrg4sk+C2jLRYKumROvX1b40Asz/XVUNYg8Enk480x\n HRzhCg9cIejpdgxwslkGPSwHGIj9Ou/XQE4JYIeed4TQv1wiHZCNzuwjBoNCmYNqqO8j\n Aa//y5DE4eAhhIqruOO7oc13whBUaX61Uqe2FjBUo45Qlewg2JQVRb+b4c4rUEO9xjmu\n NkIMPuidp8sBzgtqBGZyF5aII1EBIaYcbwtb0et/krHakhzOiDzBQuNRBAEKIZpe/pHk\n 0p+w1LU0mfRcwxMSlctJS/XQ32L0pi8ucH28H5Oqc6bTP+gCiMkl7rxpDYSoE7wopGyR\n 1AeA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776076675; x=1776681475;\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=/gRv9RLfF/F+lj385yyoTJLt207V/mbUmBgkzmiVuuw=;\n b=K3p1b7yCx7+ijEhRtsTXBim2WNCJ9/3v+Xs6aDDYVMKL9JPpKLHDiTQLNbEKkrIyh4\n rLsX3mq1ekOnHc3O4xvbd96ngdLW7P6JjLAPis3qrsHqp5x/bi1uMP4CW5VcxT1ZXxWQ\n OdDgaKJYsuqqh+AXPyemBdzVnCA26LgrQrl6L2KMHLrMdp+TqWug93kZ6R/rldilngfC\n F93VGLQQ+7Waqc4BaO4XOqqKek+L9DZN9Rgsqh/uzTVlzXwZjbOzQTx4Kv3gTEgX3FH8\n B+0YDrqrEMc0WhOuAd1HR5TDcx3bV9Rmz3BVfeY9IWtpVwVADJ+YIM5sHglIsP1B28aC\n ZIIg==", "X-Forwarded-Encrypted": "i=1;\n AFNElJ/QjiubEg2bYrnCCAWZFvmFAgZ7Zhv8TU3v9sGvGSY7yn5smXRWZXMfhdqP2CSdBRFBWjK98eyD9zCd@nongnu.org", "X-Gm-Message-State": "AOJu0YzP4rMVdIWjnN4axVCbWXwzjhuigZ0Jcqs1dyx4CaUiJgpRnLg9\n lYug+xViC2gJvKsiHmhdDRa9m4Olwcrr7TqiHEu6yEx33MlwmT5frCDwzbWaLvUPWyI=", "X-Gm-Gg": "AeBDieua70ZcBiq7MPpcxfJMQrnJsOyTA1XHWf5t/8sKXUzMyNG/kquu4BTNK0oIASa\n LgKD+f9LbeQmIHJtpYcrne4CGLtTo5t01FjC3bucgjokqvZNaa5AbybyX/vwLbJo9OiHt19owDS\n 24n85mQZpG90GpXXAS+kkRhjuq/H6NVOLSIivKDGdAyw0DKTnjcFzuMi6B29yodUmcAZBV1hAZl\n H8TCc9YMSOB0LfIC6Y69F828DhGkjKgrGn8R3g2HVLXsWCYy83FuBSJNAlRPmVirUr9ssaJQoMh\n oqigjYVlThsNAmx9qVQX8R+UOVMYN3jTwOKYTca8I+hgXvt24WpK4MnlkwKzL6kH3ll/6JigLsa\n bzLYu9NUE8fP9n9tfbQYM9CLMSJ/waSjorb46rIUMXq7adcSRtMMuhr/1j7l5jOv50O8NfT1aLP\n QAh1gBybh0yhjzjwZGWt/pq8uwGC3fklFTp3SHoFEsQeP7umbxn6yGy1xTC0KJy8UEpRpgX5QIB\n rfpKKC0J9ywe9uivbKfl/1sVyub7XIK7x1VX17r2Q==", "X-Received": "by 2002:a05:600c:440f:b0:488:84b1:b216 with SMTP id\n 5b1f17b1804b1-488cd58011dmr160933685e9.9.1776076675363;\n Mon, 13 Apr 2026 03:37:55 -0700 (PDT)", "From": "Peter Maydell <peter.maydell@linaro.org>", "To": "qemu-arm@nongnu.org,\n\tqemu-devel@nongnu.org", "Cc": "Richard Henderson <richard.henderson@linaro.org>", "Subject": "[PATCH for-11.0 ?] docs: Deprecate Arm OABI and NWFPE support", "Date": "Mon, 13 Apr 2026 11:37:54 +0100", "Message-ID": "<20260413103754.45745-1-peter.maydell@linaro.org>", "X-Mailer": "git-send-email 2.43.0", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Received-SPF": "pass client-ip=2a00:1450:4864:20::334;\n envelope-from=peter.maydell@linaro.org; helo=mail-wm1-x334.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": "Linux for 32-bit Arm has had two major ABIs: the original OABI and\nthe more modern EABI. OABI support was marked as obsolete in GCC 4.7\nand dropped in GCC 4.8. In the Linux kernel, compatibility handling\nfor OABI (OABI_COMPAT) is not generally enabled by default and is not\ncompatible with building a Thumb2 kernel. Distros dropped OABI\nsupport fifteen years or more ago.\n\nNWFPE floating-point emulation handles the ancient FPA11 coprocessor,\nwhich is only needed/supported with OABI. Our implementation is old,\nuntested and not thread-safe.\n\nMark OABI and NWFPE support as deprecated so we can remove it in a\nfuture release. Our main motivation here is to be able to drop the\n2500+ lines of NWFPE emulation code.\n\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>\n---\nThis just came up today; it's tempting to squeeze the deprecation\nnotice into 11.0 so we don't have an extra three months before\nwe can delete it, but we could just deprecate in 11.1 instead.\n\n docs/about/deprecated.rst | 25 +++++++++++++++++++++++++\n 1 file changed, 25 insertions(+)", "diff": "diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst\nindex a6d6a71326..10de10dc23 100644\n--- a/docs/about/deprecated.rst\n+++ b/docs/about/deprecated.rst\n@@ -452,6 +452,31 @@ It was implemented as a no-op instruction in TCG up to QEMU 9.0, but\n only with ``-cpu max`` (which does not guarantee migration compatibility\n across versions).\n \n+linux-user mode CPUs\n+--------------------\n+\n+OABI and NWFPE support for Arm CPUs\n+'''''''''''''''''''''''''''''''''''\n+\n+Linux for 32-bit Arm has had two major ABIs: the original OABI and the\n+more modern EABI. OABI support was marked as obsolete in GCC 4.7 and\n+dropped in GCC 4.8 (released in 2013). In the Linux kernel,\n+compatibility handling for OABI (OABI_COMPAT) is not generally enabled\n+by default and is not compatible with building a Thumb2\n+kernel. Distros dropped OABI support fifteen years or more ago.\n+\n+The original floating-point coprocessor for 32-bit Arm was the\n+FPA11. This was not present in many CPUs but did get baked into the\n+OABI for how to pass floating point arguments, and so the Linux kernel\n+has support for emulating it via the config option FPE_NWFPE; QEMU\n+follows that. FPA11 support was also removed from GCC in GCC 4.8.\n+\n+QEMU's NWFPE code is old and untested and not thread-safe; the OABI\n+ABI is long-obsolete. We are therefore deprecating both OABI support\n+and NWFPE emulation, and they will be removed in a future QEMU\n+release.\n+\n+\n Backwards compatibility\n -----------------------\n \n", "prefixes": [ "for-11.0", "?" ] }