Show a cover letter.

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

{
    "id": 2222260,
    "url": "http://patchwork.ozlabs.org/api/1.1/covers/2222260/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260411022618.2136588-1-kshk@linux.ibm.com/",
    "project": {
        "id": 14,
        "url": "http://patchwork.ozlabs.org/api/1.1/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": "<20260411022618.2136588-1-kshk@linux.ibm.com>",
    "date": "2026-04-11T02:26:03",
    "name": "[v2,00/15] s390x/pci: Implement migration for emulated devices",
    "submitter": {
        "id": 90249,
        "url": "http://patchwork.ozlabs.org/api/1.1/people/90249/?format=api",
        "name": "Konstantin Shkolnyy",
        "email": "kshk@linux.ibm.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260411022618.2136588-1-kshk@linux.ibm.com/mbox/",
    "series": [
        {
            "id": 499525,
            "url": "http://patchwork.ozlabs.org/api/1.1/series/499525/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=499525",
            "date": "2026-04-11T02:26:13",
            "name": "s390x/pci: Implement migration for emulated devices",
            "version": 2,
            "mbox": "http://patchwork.ozlabs.org/series/499525/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2222260/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=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=Y0r4btxh;\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 4fsyKX4pmGz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 11 Apr 2026 12:29:04 +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 1wBO3s-00023g-Tz; Fri, 10 Apr 2026 22:27:04 -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 <kshk@linux.ibm.com>)\n id 1wBO3r-00022O-Hb; Fri, 10 Apr 2026 22:27:03 -0400",
            "from mx0a-001b2d01.pphosted.com ([148.163.156.1])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <kshk@linux.ibm.com>)\n id 1wBO3o-0000LY-EG; Fri, 10 Apr 2026 22:27:03 -0400",
            "from pps.filterd (m0356517.ppops.net [127.0.0.1])\n by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 63AFeoUS2302533; Sat, 11 Apr 2026 02:26:54 GMT",
            "from ppma13.dal12v.mail.ibm.com\n (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221])\n by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4dcn2fw3vr-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n Sat, 11 Apr 2026 02:26:53 +0000 (GMT)",
            "from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1])\n by ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id\n 63B0U1ZP019113;\n Sat, 11 Apr 2026 02:26:53 GMT",
            "from smtprelay05.wdc07v.mail.ibm.com ([172.16.1.72])\n by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4dcme9u230-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n Sat, 11 Apr 2026 02:26:53 +0000",
            "from smtpav03.wdc07v.mail.ibm.com (smtpav03.wdc07v.mail.ibm.com\n [10.39.53.230])\n by smtprelay05.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id\n 63B2Qpln34734758\n (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n Sat, 11 Apr 2026 02:26:51 GMT",
            "from smtpav03.wdc07v.mail.ibm.com (unknown [127.0.0.1])\n by IMSVA (Postfix) with ESMTP id 687945805A;\n Sat, 11 Apr 2026 02:26:51 +0000 (GMT)",
            "from smtpav03.wdc07v.mail.ibm.com (unknown [127.0.0.1])\n by IMSVA (Postfix) with ESMTP id CCDFC58054;\n Sat, 11 Apr 2026 02:26:50 +0000 (GMT)",
            "from WIN-DU0DFC9G5VV.ibm.com (unknown [9.61.252.248])\n by smtpav03.wdc07v.mail.ibm.com (Postfix) with ESMTP;\n Sat, 11 Apr 2026 02:26:50 +0000 (GMT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc\n :content-transfer-encoding:date:from:message-id:mime-version\n :subject:to; s=pp1; bh=5dGHeUZdYw4AwVziYjzw5fzJrURxo/6YCMzIafKFG\n GQ=; b=Y0r4btxhuFSgx9FVowecRY2z3ZZEE6yHjlL8pP/0u2njJCcb07VxEWC6y\n 6tdedrlxSi0Dnp4d0C7q72zR3sdyIHH2mwZHWQDoAv9/uWIGs8FHGXvHLDF8zXa4\n 4AnrkVHrxkHYbREWiTLiRG0OUjrBbDMCPphDUxBnImiQsMqgxm7Mlq8g8SGl9Kua\n H96mFNYCWkge54cygRkP5xdrIDjsu8WI9iacYOw62EY9Z3uqhJ25J2UbrL7rtRCy\n 1XFGxIQSN35N9J9HlLkguH4r6YR5tKM2ly2ykvJwLlNFGFUq4vp1b8cuLpNbSaR2\n qazULCp7jXRiyfz3ItUwK8SiDO4gw==",
        "From": "Konstantin Shkolnyy <kshk@linux.ibm.com>",
        "To": "mjrosato@linux.ibm.com",
        "Cc": "alifm@linux.ibm.com, richard.henderson@linaro.org, iii@linux.ibm.com,\n david@kernel.org, cohuck@redhat.com, pasic@linux.ibm.com,\n borntraeger@linux.ibm.com, qemu-s390x@nongnu.org,\n qemu-devel@nongnu.org, Konstantin Shkolnyy <kshk@linux.ibm.com>",
        "Subject": "[PATCH v2 00/15] s390x/pci: Implement migration for emulated devices",
        "Date": "Fri, 10 Apr 2026 21:26:03 -0500",
        "Message-Id": "<20260411022618.2136588-1-kshk@linux.ibm.com>",
        "X-Mailer": "git-send-email 2.34.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-TM-AS-GCONF": "00",
        "X-Proofpoint-Spam-Details-Enc": "AW1haW4tMjYwNDExMDAxNiBTYWx0ZWRfX7RjsZli60dBE\n JQd45UnQriZ/Hq45wAzKIeydnyh9JlYDbnm3R7fB+pYPQyI1kazQVR9czCUEIylifzJ+9Pf30fC\n +ZazqxG/jwxpJG7JF8qnZO4q+s6eaEqzkoe6Uy7S51jMd+AWHCn6xJcBdSO/2y93oJzN/SGaI1F\n XQR8eO3uaFc6ALDwRCBX17lTexo81r06yq5hJiLFzkKMvYKA8i7k7yIUt8+0ZLkAfQkAWYU9JIh\n aCTVXlz4AKdy/a50tPHnO9TMbrak4NwVXMkhL7aZ9eavn1XP72/o59yVAFJ3on5fDVazUv5M9Wv\n pGsecceqCwfxCz20/nUlMtT4PHKvU7G0nDp1eyzZDXyCJJ3V5kPKIeB8T9PN4nICVC+9h/4u15C\n /4ZvWOiecHhTb422+V6AykpHkWuB4id9J5JVuHUe9rcz1dS90zlVdFL9aRtBEKBny8nETF8AW2z\n UkT0UMA0amYKxqB5o4A==",
        "X-Authority-Analysis": "v=2.4 cv=FsY1OWrq c=1 sm=1 tr=0 ts=69d9b16d cx=c_pps\n a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17\n a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22\n a=U7nrCbtTmkRpXpFmAIza:22 a=VwQbUJbxAAAA:8 a=20KFwNOVAAAA:8\n a=8Hgc_-vnOkY6PsbUFoQA:9",
        "X-Proofpoint-ORIG-GUID": "lV4LbyvLhp-Kc_tY8qx8ZjQd3k07K3kP",
        "X-Proofpoint-GUID": "lV4LbyvLhp-Kc_tY8qx8ZjQd3k07K3kP",
        "X-Proofpoint-Virus-Version": "vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-04-10_07,2026-04-09_02,2025-10-01_01",
        "X-Proofpoint-Spam-Details": "rule=outbound_notspam policy=outbound score=0\n bulkscore=0 priorityscore=1501 impostorscore=0 spamscore=0 phishscore=0\n lowpriorityscore=0 clxscore=1015 adultscore=0 malwarescore=0 suspectscore=0\n classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0\n reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604110016",
        "Received-SPF": "pass client-ip=148.163.156.1; envelope-from=kshk@linux.ibm.com;\n helo=mx0a-001b2d01.pphosted.com",
        "X-Spam_score_int": "-26",
        "X-Spam_score": "-2.7",
        "X-Spam_bar": "--",
        "X-Spam_report": "(-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7,\n RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001,\n RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,\n SPF_HELO_NONE=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": "Up until now QEMU marked any zPCI device as \"unmigratable.\"\n\nThis patch series adds support for migrating emulated devices, which are\nsimpler to migrate. It leaves VFIO devices still unmigratable.\n\nTo enable migration, the device state needs to be saved/restored to/from\nthe migration stream.\n\nThere are 2 kinds of emulated devices - those that use the zPCI IOMMU page\ntable emulation in QEMU (e.g., Intel IGB NIC), and those that don't (virtio).\nThis is important to note for testing purposes.\n\nThis change was tested on IGB, virtio-net and virtio-blk devices by running\nI/O on them while performing \"virsh managedsave, virsh start\" and also live migration to another host and back.\n\nChanges in v2:\n - Block migration for machine versions 11.0 and earlier.\n   Because the current version is still 11.0, migration will start working when\n   QEMU gets moved to 11.1 by the following patch:\n   https://lore.kernel.org/qemu-devel/20260331140347.653404-1-cohuck@redhat.com/\n\nKonstantin Shkolnyy (14):\n  s390x/pci: Create function to contain translation status check\n  s390x/pci: Move iommu_mr from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move dm_mr from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move iotlb from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Remove a ptr to S390PCIBusDevice from S390PCIIOMMU\n  s390x/pci: Move/rename enabled from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move dma_limit from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move g_iota from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move pba from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move pal from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Move max_dma_limit from S390PCIIOMMU to S390PCIBusDevice\n  s390x/pci: Add a comment explaining S390PCIIOMMU purpose\n  s390x/pci: Implement migration for emulated devices\n  s390x/pci: Create function to contain fmb_timer start\n\nMatthew Rosato (1):\n  s390x/pci: implement IOMMU replay\n\n hw/s390x/s390-pci-bus.c          | 278 +++++++++++++++++++++++++------\n hw/s390x/s390-pci-inst.c         | 116 +++++++------\n hw/s390x/s390-pci-vfio.c         |   4 +-\n hw/s390x/s390-virtio-ccw.c       |   5 +\n include/hw/s390x/s390-pci-bus.h  |  39 +++--\n include/hw/s390x/s390-pci-inst.h |   3 +-\n 6 files changed, 320 insertions(+), 125 deletions(-)"
}