get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/1.0/patches/2221162/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2221162,
    "url": "http://patchwork.ozlabs.org/api/1.0/patches/2221162/?format=api",
    "project": {
        "id": 14,
        "url": "http://patchwork.ozlabs.org/api/1.0/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": ""
    },
    "msgid": "<20260408165559.157108-2-peterx@redhat.com>",
    "date": "2026-04-08T16:55:45",
    "name": "[01/14] migration: Fix low possibility downtime violation",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "3487255c578961d1c45154bdc79e5ae3a9b459bf",
    "submitter": {
        "id": 67717,
        "url": "http://patchwork.ozlabs.org/api/1.0/people/67717/?format=api",
        "name": "Peter Xu",
        "email": "peterx@redhat.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260408165559.157108-2-peterx@redhat.com/mbox/",
    "series": [
        {
            "id": 499176,
            "url": "http://patchwork.ozlabs.org/api/1.0/series/499176/?format=api",
            "date": "2026-04-08T16:55:55",
            "name": "migration/vfio: Fix a few issues on API misuse or statistic reports",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/499176/mbox/"
        }
    ],
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2221162/checks/",
    "tags": {},
    "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 (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=MRE5i90/;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=google header.b=G8wKDi1x;\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 (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 4frYBK04TBz1xv0\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 09 Apr 2026 05:32:56 +1000 (AEST)",
            "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 1wAYT4-0006Yj-BK; Wed, 08 Apr 2026 15:21:38 -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 <peterx@redhat.com>) id 1wAY49-0006LU-3u\n for qemu-devel@nongnu.org; Wed, 08 Apr 2026 14:55:53 -0400",
            "from us-smtp-delivery-124.mimecast.com ([170.10.133.124])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <peterx@redhat.com>) id 1wAWCF-00026z-LJ\n for qemu-devel@nongnu.org; Wed, 08 Apr 2026 12:56:10 -0400",
            "from mail-qt1-f197.google.com (mail-qt1-f197.google.com\n [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n us-mta-624-oxB8IKRKMsSI7OsPv4PnRA-1; Wed, 08 Apr 2026 12:56:05 -0400",
            "by mail-qt1-f197.google.com with SMTP id\n d75a77b69052e-50d8e4c29caso3423151cf.0\n for <qemu-devel@nongnu.org>; Wed, 08 Apr 2026 09:56:05 -0700 (PDT)",
            "from x1.com ([142.189.10.167]) by smtp.gmail.com with ESMTPSA id\n d75a77b69052e-50d712c2617sm130491901cf.31.2026.04.08.09.56.01\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 08 Apr 2026 09:56:02 -0700 (PDT)"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1775667366;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references;\n bh=2hkkcDDKW3DzXc310oMI/NYDVD946MPATIpbxQ70/iE=;\n b=MRE5i90/LyoGKiisuNs0IgqmKtKECUnBp9vlz9QXsNiGMjuzIhn3qHCUGWMw/fbS9OZC58\n wxeyjv4DS38OGGyNuXKWxDAlKO6/Tuz95d+DIr/3BZXk8WlcKdhA5HGVMpKAj89igv6BV8\n LqQdIFO3y03iQtZwxqMsNW6E3IuSdgw=",
            "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=redhat.com; s=google; t=1775667364; x=1776272164; darn=nongnu.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=2hkkcDDKW3DzXc310oMI/NYDVD946MPATIpbxQ70/iE=;\n b=G8wKDi1x5gzg3mdzxnkHCPbmoXL6vac8kKTnVdoyEPaq0weB2D1z1zpvDv0kSsRHo/\n aViV98n1aoyzoEEdn8xhvKghQoy3Dy2cCUfL8tmXFlgv7Dvx89ZI8KK5r4x5mo3Ejznc\n uUHwAZTEyLR6gE/1LBgcMuDHTO5A1yyi0OdjAfili9mdXeCtzljszm89bK7G2nZHBUDF\n MJoVaTt1tYwF0o22OKs1i0qBwSsJwTLaClGP495BqRt8ECsGBQLlpWY5M2mytaxWmqMx\n VLLUqdUmVAG96exup1aRLtwvKtBMPUw7CrqvuwGEv9eaItw6lA5FHo0iM5rdygfTLf0t\n vNYA=="
        ],
        "X-MC-Unique": "oxB8IKRKMsSI7OsPv4PnRA-1",
        "X-Mimecast-MFC-AGG-ID": "oxB8IKRKMsSI7OsPv4PnRA_1775667364",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1775667364; x=1776272164;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=2hkkcDDKW3DzXc310oMI/NYDVD946MPATIpbxQ70/iE=;\n b=K+jd0KjKR95w2+IQHPE8TTy0I2QZiMLggApZyIV3A6Hxzw/bYciWl6auIZVlzmqwe/\n aIhdlYfjRH1DrtcBp994hh1hl1xyCMFabMKHtzPFG45Vwl/LD5fvz0t1Rj4QVUdiFwsf\n 2xgS+PkJ9cFXBM9WFWO5cucXHkyfDYKvNUetdsVDFNHjqWHzQ8sGIg6ZkSkDzX061JOH\n 8YfJ1NZJX/bXodxwzZFnjoK3yq/9fsvRLW5xQq0s+6d2vjsSz9R4wjH/rjiwXwAIXeeg\n awoOVkn22HxgUZobnCmqNMbHcTsFsal2b4qlGxk1ibA9Luv5Hc7kB1lP+bXwE3MqfeIo\n WTRQ==",
        "X-Gm-Message-State": "AOJu0Yzf7sOLtVSSeTDSW4i1lj/AwUtm1MpxQcQEHS1R1QOi5uTvKvSv\n 02qxj7OVVnlfVfGRs+V5TA5wwJgmK+g4BDKnMWwk8YpspERCrK0bxDQ6+JdS2b4BFQh3/fqYdy0\n MIKfTuK2swBkT2QBlV5gGlxmbYo18agR62nD+15vhB8CeM1IAHtQa7uR4LYAsXWRdKLmZhIIvnl\n KX6EVbcE/gHkTtsXLxa81sMODkE1y2buusoywLhw==",
        "X-Gm-Gg": "AeBDietcodyWfntBSgYqzsJx0E1CwsLHyjzZv9i6aKZe+XHH5EUl7RSRK6SRYm8SruU\n He0HeqtpvO0tGLteJrcui3Ijj/JY5EuxE8M392BTcq5+CTr87SJj+fxZJsbd7Q/jqvfSMRuUhMU\n 2JHm9DsgeMjPT0aqub1i1TuWW6yGatjP7kaduvj/59qVdw64FCFUXubp8FCCyX4XvXcJgLNTK/T\n mKux3JENDQJQK017FLb7AZv3Q9LPvM1D/kpCoDFNS4na9rdI3Q2HKL9zBmKeLcKH8ZJrB6LSNO1\n AuX0fvLvDDXQhy/QuxUX7Hgj4BemBmvoW8b0ytrxSZYYYJE9VsiaTRD8XqABzn8yPVNgO2S71IT\n vQekogn4Fe/s4GVLBV0GpzMMaZZDPTl8B+SeP5Anewv4I",
        "X-Received": [
            "by 2002:ac8:5f4f:0:b0:50d:a8f5:d519 with SMTP id\n d75a77b69052e-50da8f5de93mr92568191cf.14.1775667363724;\n Wed, 08 Apr 2026 09:56:03 -0700 (PDT)",
            "by 2002:ac8:5f4f:0:b0:50d:a8f5:d519 with SMTP id\n d75a77b69052e-50da8f5de93mr92567241cf.14.1775667362810;\n Wed, 08 Apr 2026 09:56:02 -0700 (PDT)"
        ],
        "From": "Peter Xu <peterx@redhat.com>",
        "To": "qemu-devel@nongnu.org",
        "Cc": "\"Maciej S . Szmigiero\" <mail@maciej.szmigiero.name>, =?utf-8?q?Daniel_P_?=\n\t=?utf-8?q?=2E_Berrang=C3=A9?= <berrange@redhat.com>,\n Zhiyi Guo <zhguo@redhat.com>, Juraj Marcin <jmarcin@redhat.com>,\n Peter Xu <peterx@redhat.com>, Prasad Pandit <ppandit@redhat.com>,\n Avihai Horon <avihaih@nvidia.com>, Kirti Wankhede <kwankhede@nvidia.com>,\n\t=?utf-8?q?C=C3=A9dric_Le_Goater?= <clg@redhat.com>,\n Fabiano Rosas <farosas@suse.de>, Joao Martins <joao.m.martins@oracle.com>,\n Markus Armbruster <armbru@redhat.com>, Alex Williamson <alex@shazbot.org>,\n qemu-stable@nongnu.org",
        "Subject": "[PATCH 01/14] migration: Fix low possibility downtime violation",
        "Date": "Wed,  8 Apr 2026 12:55:45 -0400",
        "Message-ID": "<20260408165559.157108-2-peterx@redhat.com>",
        "X-Mailer": "git-send-email 2.53.0",
        "In-Reply-To": "<20260408165559.157108-1-peterx@redhat.com>",
        "References": "<20260408165559.157108-1-peterx@redhat.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Received-SPF": "pass client-ip=170.10.133.124; envelope-from=peterx@redhat.com;\n helo=us-smtp-delivery-124.mimecast.com",
        "X-Spam_score_int": "-25",
        "X-Spam_score": "-2.6",
        "X-Spam_bar": "--",
        "X-Spam_report": "(-2.6 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.54,\n DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001,\n RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,\n SPF_HELO_PASS=-0.001, 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": "When QEMU queried the estimated version of pending data and thinks it's\nready to converge, it'll send another accurate query to make sure of it.\nIt is needed to make sure we collect the latest reports and that equation\nstill holds true.\n\nHowever we missed one tiny little difference here on \"<\" v.s. \"<=\" when\ncomparing pending_size (A) to threshold_size (B)..\n\nQEMU src only re-query if A<B, but will kickoff switchover if A<=B.\n\nI think it means it is possible to happen if A (as an estimate only so far)\naccidentally equals to B, then re-query won't happen and switchover will\nproceed without considering new dirtied data.\n\nIt turns out it was an accident in my commit 7aaa1fc072 when refactoring\nthe code around.  Fix this by using the same equation in both places.\n\nFixes: 7aaa1fc072 (\"migration: Rewrite the migration complete detect logic\")\nCc: qemu-stable@nongnu.org\nReviewed-by: Juraj Marcin <jmarcin@redhat.com>\nSigned-off-by: Peter Xu <peterx@redhat.com>\n---\n migration/migration.c | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)",
    "diff": "diff --git a/migration/migration.c b/migration/migration.c\nindex 5c9aaa6e58..dfc60372cf 100644\n--- a/migration/migration.c\n+++ b/migration/migration.c\n@@ -3242,7 +3242,7 @@ static MigIterateState migration_iteration_run(MigrationState *s)\n          * postcopy started, so ESTIMATE should always match with EXACT\n          * during postcopy phase.\n          */\n-        if (pending_size < s->threshold_size) {\n+        if (pending_size <= s->threshold_size) {\n             qemu_savevm_state_pending_exact(&must_precopy, &can_postcopy);\n             pending_size = must_precopy + can_postcopy;\n             trace_migrate_pending_exact(pending_size, must_precopy,\n",
    "prefixes": [
        "01/14"
    ]
}