Cover Letter Detail
Show a cover letter.
GET /api/covers/2194158/?format=api
{ "id": 2194158, "url": "http://patchwork.ozlabs.org/api/covers/2194158/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260206221908.1451528-1-pierrick.bouvier@linaro.org/", "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": "<20260206221908.1451528-1-pierrick.bouvier@linaro.org>", "list_archive_url": null, "date": "2026-02-06T22:18:59", "name": "[v5,0/9] single-binary: hw/virtio", "submitter": { "id": 85798, "url": "http://patchwork.ozlabs.org/api/people/85798/?format=api", "name": "Pierrick Bouvier", "email": "pierrick.bouvier@linaro.org" }, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260206221908.1451528-1-pierrick.bouvier@linaro.org/mbox/", "series": [ { "id": 491346, "url": "http://patchwork.ozlabs.org/api/series/491346/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=491346", "date": "2026-02-06T22:19:02", "name": "single-binary: hw/virtio", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/491346/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/2194158/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=WEYG4Fqj;\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 (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 4f77nZ4YfDz1xvD\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 07 Feb 2026 09:20:18 +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 1voUAb-000628-CG; Fri, 06 Feb 2026 17:19:21 -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 <pierrick.bouvier@linaro.org>)\n id 1voUAZ-00061K-Q4\n for qemu-devel@nongnu.org; Fri, 06 Feb 2026 17:19:19 -0500", "from mail-pl1-x634.google.com ([2607:f8b0:4864:20::634])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <pierrick.bouvier@linaro.org>)\n id 1voUAX-00078t-R2\n for qemu-devel@nongnu.org; Fri, 06 Feb 2026 17:19:19 -0500", "by mail-pl1-x634.google.com with SMTP id\n d9443c01a7336-2a0c20ee83dso21990125ad.2\n for <qemu-devel@nongnu.org>; Fri, 06 Feb 2026 14:19:17 -0800 (PST)", "from pc.taild8403c.ts.net (216-71-219-44.dyn.novuscom.net.\n [216.71.219.44]) by smtp.gmail.com with ESMTPSA id\n d9443c01a7336-2a95bff42f7sm13316575ad.68.2026.02.06.14.19.15\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Fri, 06 Feb 2026 14:19:15 -0800 (PST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1770416356; x=1771021156; 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=nFU+mS2PD7BuE9hvnELs4siMLgxFPzdVyOSiHvJ+WW4=;\n b=WEYG4Fqjb3qT88a3Et9kVLfoA6P6dKLT1jbG6yjBATzWNJ/j03BTklCG3LG9jlVBC9\n JlnIlJBlrnSHlL7WqbIe21YLlUPds84/gMXyV/419GLxNwv6a8sOReA/DDlPbjdn44Gh\n BFcOp5Gboco/OgXmsgAiK3vMCl5X6H/CmurqL8t2YkFLRT7gMYAC3SU//fxTS/TIk+Ph\n 1gGRxSmFPZ9TWTGMbopqs5XxKpIYGufUzKM8lNr7EaNFXSYo4F6lEU1Z7NC50SMQoVUT\n L9OLv4HvZctQJy31Pd/TS0LVrkcd2DwXJa+VviAVX6RP4a1EUlU2FaejQ/W7vbdS6Vyj\n a1AA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1770416356; x=1771021156;\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=nFU+mS2PD7BuE9hvnELs4siMLgxFPzdVyOSiHvJ+WW4=;\n b=DJ/zZ6cgqf5IdlosP+dVqo0ec9UGThsdm4wSjleoeoPRX58VCgWBmcBRBTFNVQMNVx\n OIKPy7Hb9rPwQOHbB90Yqv6kmSYkBOSKXCNL3j2+oLSiKrqCzilfHPjEQL0QXXUa6LYM\n v7nK9F4Rf9S75/07BCGdz7VQKoS9l9sQHMGC6TuAZeEwZqn1vvb0oJOYo+b08Vsh7jKy\n cSLnd78JXunsfAJR2JlMTuzBTlEsX4EE0HArHKLw1Kc7yHB88c/NmyvcBBnR3CSsk1O+\n 9jX02yLxDK/27PJ7H8ERT3s982kFQZ5H69ZQlLqGfesFUNfYpqMugEjqWyncgCy6aoE/\n hgrQ==", "X-Gm-Message-State": "AOJu0YyY9JSEDxvD1VITLEPApli8KG8WcV0gOek1FtEob3B7yx6yzWuS\n B8GQ5kBEqSrMDdmsnUyeaaMoM+zBy7Vc26aF9ThubiE0zeQNZxxURdxsnbGrtAtiv0VSKj4gnWx\n skCKo", "X-Gm-Gg": "AZuq6aIwJYKYH03/ITCMxUiKzEbFvonkEfMlKsd6SE+EUVeFEh1lk6h0LNPJjlb6HCh\n evUIxCvO72lOLEbytyq5G7sYJWPIjLX03PXwKMIulCkJMxhNdu1oqPWQPNoF25ytP1DKf2KwiWZ\n 57yjamYQkao2CcATAHxuIdl2So4DwCv1r0OxVL+4DDQ0JOB+XIPbIeqHnTDgyZ0Kka74Xq9pILl\n WqMIY5FwHrprKEIaiAeU6pBBT1RicwZt7g7qHS3enPaLJqFjBzDe2Qb3e6/V+hL725sDtFB9Gyp\n zFHk1SYpufT57+mO2406rtaPnZiM2x5d5/rzV7rxtWtY/+dYcT1vIQOD1DcHQ6z+Z5WJ0wmDruC\n gD6lXWebRsVFGn3bK7Gh5ItBjrufqLqNTVA0R3l3h0aO4wbbxla9rQT3SVK2aZP1kkSPvqc4vLe\n qfG9nnIXlbgzzHL30u9MtTWHO2ho8qJriBZ3flTBDTkZXdRqvnn8rSO8iFCN52Kodf", "X-Received": "by 2002:a17:902:ef02:b0:2a7:d93a:a3b8 with SMTP id\n d9443c01a7336-2a9516d4f7emr39397305ad.32.1770416355877;\n Fri, 06 Feb 2026 14:19:15 -0800 (PST)", "From": "Pierrick Bouvier <pierrick.bouvier@linaro.org>", "To": "qemu-devel@nongnu.org", "Cc": "=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>,\n Stefano Garzarella <sgarzare@redhat.com>,\n Nicholas Piggin <npiggin@gmail.com>,\n Harsh Prateek Bora <harshpb@linux.ibm.com>,\n \"Michael S. Tsirkin\" <mst@redhat.com>,\n Pierrick Bouvier <pierrick.bouvier@linaro.org>, stefanha@redhat.com,\n richard.henderson@linaro.org, qemu-ppc@nongnu.org", "Subject": "[PATCH v5 0/9] single-binary: hw/virtio", "Date": "Fri, 6 Feb 2026 14:18:59 -0800", "Message-ID": "<20260206221908.1451528-1-pierrick.bouvier@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=2607:f8b0:4864:20::634;\n envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x634.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 eliminates target specifics in hw/virtio and replace them with\nruntime functions where needed.\n\nPerformance has been measured with this automated fio benchmark [1], with\noriginal instructions from Stefan [2].\n\nDownload artifacts and run benchmark with:\n$ wget https://github.com/pbo-linaro/qemu-linux-stack/releases/download/build/x86_64_io_benchmark-a55f2d6.tar.xz\n$ tar xvf x86_64_io_benchmark-a55f2d6.tar.xz\n$ ./run.sh /path/to/qemu-system-x86_64\n\n[1] https://github.com/pbo-linaro/qemu-linux-stack/tree/x86_64_io_benchmark\n[2] https://lore.kernel.org/qemu-devel/20260202185233.GC405548@fedora/\n\nResults are on 20 runs and expressed in kIOPS:\nreference: mean=239.2 std_dev=3.48\nwith_series: mean=238.5 std_dev=3.46\n\nPerformance is on par, and within standard deviation.\n\nv5\n--\n\n- Fix missing vdev->access_is_big_endian when features are set\n- No difference in performance since hot path is not modified\n- Simplified virtio_access_is_big_endian\n\nv4\n--\n\n- Include Philippe patches computing once device endianness to skip runtime\n checks on every access.\n\nPhilippe Mathieu-Daudé (3):\n hw/virtio: Constify virtio_is_big_endian() argument\n hw/virtio: Introduce VirtIODevice::access_is_big_endian boolean field\n hw/virtio: Use VirtIODevice::access_is_big_endian field\n\nPierrick Bouvier (6):\n include/hw/virtio/virtio-access.h: remove target specifics define\n include/hw/virtio/virtio-access.h: simplify\n virtio_access_is_big_endian\n include/hw/ppc/spapr: extract SPAPR_MAX_RAM_SLOTS in a new header\n hw/virtio/vhost-user: make compilation unit common\n hw/virtio/virtio-qmp: make compilation unit common\n hw/virtio/: make all compilation units common\n\n include/hw/ppc/spapr.h | 8 +---\n include/hw/ppc/spapr_common.h | 16 +++++++\n include/hw/virtio/virtio-access.h | 43 +++++++++----------\n include/hw/virtio/virtio.h | 7 +++-\n hw/virtio/vhost-user.c | 11 ++---\n hw/virtio/virtio-qmp.c | 70 -------------------------------\n hw/virtio/virtio.c | 9 +++-\n hw/virtio/meson.build | 17 ++++----\n 8 files changed, 60 insertions(+), 121 deletions(-)\n create mode 100644 include/hw/ppc/spapr_common.h" }