Show a cover letter.

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

{
    "id": 2195339,
    "url": "http://patchwork.ozlabs.org/api/covers/2195339/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/cover.1770753117.git.balaton@eik.bme.hu/",
    "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": "<cover.1770753117.git.balaton@eik.bme.hu>",
    "list_archive_url": null,
    "date": "2026-02-10T20:02:08",
    "name": "[v3,0/6] Implement memory_region_new_* functions",
    "submitter": {
        "id": 16148,
        "url": "http://patchwork.ozlabs.org/api/people/16148/?format=api",
        "name": "BALATON Zoltan",
        "email": "balaton@eik.bme.hu"
    },
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/cover.1770753117.git.balaton@eik.bme.hu/mbox/",
    "series": [
        {
            "id": 491733,
            "url": "http://patchwork.ozlabs.org/api/series/491733/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=491733",
            "date": "2026-02-10T20:02:11",
            "name": "Implement memory_region_new_* functions",
            "version": 3,
            "mbox": "http://patchwork.ozlabs.org/series/491733/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2195339/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 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 (lists.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 4f9XYl2PP1z1xvg\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 11 Feb 2026 07:03:23 +1100 (AEDT)",
            "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 1vptwP-0000qt-JT; Tue, 10 Feb 2026 15:02:33 -0500",
            "from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <balaton@eik.bme.hu>)\n id 1vptwE-0000oI-2V\n for qemu-devel@nongnu.org; Tue, 10 Feb 2026 15:02:23 -0500",
            "from zero.eik.bme.hu ([2001:738:2001:2001::2001])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <balaton@eik.bme.hu>)\n id 1vptwA-00050V-QE\n for qemu-devel@nongnu.org; Tue, 10 Feb 2026 15:02:21 -0500",
            "from localhost (localhost [127.0.0.1])\n by zero.eik.bme.hu (Postfix) with ESMTP id 366F75969F3;\n Tue, 10 Feb 2026 21:02:10 +0100 (CET)",
            "from zero.eik.bme.hu ([127.0.0.1])\n by localhost (zero.eik.bme.hu [127.0.0.1]) (amavis, port 10028) with ESMTP\n id aVUtlTxJUcBZ; Tue, 10 Feb 2026 21:02:08 +0100 (CET)",
            "by zero.eik.bme.hu (Postfix, from userid 432)\n id 345A25969FA; Tue, 10 Feb 2026 21:02:08 +0100 (CET)"
        ],
        "X-Virus-Scanned": "amavis at eik.bme.hu",
        "X-Amavis-Alert": "BAD HEADER SECTION, Duplicate header field: \"MIME-Version\"",
        "Message-ID": "<cover.1770753117.git.balaton@eik.bme.hu>",
        "From": "BALATON Zoltan <balaton@eik.bme.hu>",
        "Subject": "[PATCH v3 0/6] Implement memory_region_new_* functions",
        "MIME-Version": [
            "1.0",
            "1.0"
        ],
        "Content-Type": [
            "text/plain; charset=UTF-8",
            "text/plain; charset=UTF-8"
        ],
        "Content-Transfer-Encoding": [
            "8bit",
            "8bit"
        ],
        "To": "qemu-devel@nongnu.org",
        "Cc": "Peter Xu <peterx@redhat.com>,\n Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>,\n Paolo Bonzini <pbonzini@redhat.com>,\n Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,\n Gerd Hoffmann <kraxel@redhat.com>, Max Filippov <jcmvbkbc@gmail.com>,\n Peter Maydell <peter.maydell@linaro.org>, =?utf-8?q?Philippe_Mathieu-Daud?=\n\t=?utf-8?q?=C3=A9?= <philmd@linaro.org>",
        "Date": "Tue, 10 Feb 2026 21:02:08 +0100 (CET)",
        "Received-SPF": "pass client-ip=2001:738:2001:2001::2001;\n envelope-from=balaton@eik.bme.hu; helo=zero.eik.bme.hu",
        "X-Spam_score_int": "-18",
        "X-Spam_score": "-1.9",
        "X-Spam_bar": "-",
        "X-Spam_report": "(-1.9 / 5.0 requ) BAYES_00=-1.9, 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": "Our documentation says that memory regions are automatically freed\nwhen the owner dies and the reference counting to do this is also\nimplemented. However this relies on the QOM free funtion that can only\nbe set by creating objects with object_new but memory API only\nprovides constructors that call object_initialize which clears the\nfree function that prevents QOM to manage the memory region lifetime.\nImplement corresponding memory_region_new_* functions that do the same\nas the memory_region_init_* functions but create the memory region\nwith object_new so the lifetime can be automatically managed by QOM as\ndocumented. The memory_region_init functions are kept because they are\nuseful for memory regions embedded in other object or managed\nexternally and not by QOM for some reason.\n\nv3:\nBased-on: <cover.1770753117.git.balaton@eik.bme.hu>\n- convert xtfpga from nomigrate as this has no migration compatibility\nissue\n\nv2:\n- rebase on master\n- update documentation\n- use these function to fix some leaks (there may be more, e.g. in\nhw/pci-host/bonito but I leave that for later and/or others)\n\nBALATON Zoltan (6):\n  memory: Add memory_region_new* functions\n  memory: Update documentation for memory_region_new*()\n  hw/ide/sii3112: Use memory_region_new to avoid leaking regions\n  hw/pci-host/articia: Map PCI memory windows in realize\n  hw/pci-host/articia: Add variable for common type cast\n  hw/xtensa/xtfpga: Fix leaking memory region\n\n docs/devel/memory.rst   |  21 ++---\n hw/ide/sii3112.c        |  30 +++----\n hw/pci-host/articia.c   |  22 +++--\n hw/ppc/amigaone.c       |  28 ++-----\n hw/ppc/pegasos.c        |  13 ---\n hw/xtensa/xtfpga.c      |   7 +-\n include/system/memory.h | 179 +++++++++++++++++++++++++++++++++++++++\n system/memory.c         | 181 ++++++++++++++++++++++++++++++++++++++++\n 8 files changed, 407 insertions(+), 74 deletions(-)"
}