Cover Letter Detail
Show a cover letter.
GET /api/covers/2194963/?format=api
{ "id": 2194963, "url": "http://patchwork.ozlabs.org/api/covers/2194963/?format=api", "web_url": "http://patchwork.ozlabs.org/project/openvswitch/cover/cover.1770716110.git.echaudro@redhat.com/", "project": { "id": 47, "url": "http://patchwork.ozlabs.org/api/projects/47/?format=api", "name": "Open vSwitch", "link_name": "openvswitch", "list_id": "ovs-dev.openvswitch.org", "list_email": "ovs-dev@openvswitch.org", "web_url": "http://openvswitch.org/", "scm_url": "git@github.com:openvswitch/ovs.git", "webscm_url": "https://github.com/openvswitch/ovs", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<cover.1770716110.git.echaudro@redhat.com>", "list_archive_url": null, "date": "2026-02-10T09:56:07", "name": "[ovs-dev,0/2] dpif-offload: Add PMD thread helpers and hardware offload simulation", "submitter": { "id": 70613, "url": "http://patchwork.ozlabs.org/api/people/70613/?format=api", "name": "Eelco Chaudron", "email": "echaudro@redhat.com" }, "mbox": "http://patchwork.ozlabs.org/project/openvswitch/cover/cover.1770716110.git.echaudro@redhat.com/mbox/", "series": [ { "id": 491639, "url": "http://patchwork.ozlabs.org/api/series/491639/?format=api", "web_url": "http://patchwork.ozlabs.org/project/openvswitch/list/?series=491639", "date": "2026-02-10T09:56:07", "name": "dpif-offload: Add PMD thread helpers and hardware offload simulation", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/491639/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/2194963/comments/", "headers": { "Return-Path": "<ovs-dev-bounces@openvswitch.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "dev@openvswitch.org" ], "Delivered-To": [ "patchwork-incoming@legolas.ozlabs.org", "ovs-dev@lists.linuxfoundation.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=gvALu0B7;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org\n (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=patchwork.ozlabs.org)", "smtp3.osuosl.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key)\n header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=gvALu0B7", "smtp2.osuosl.org; dmarc=pass (p=quarantine dis=none)\n header.from=redhat.com", "smtp2.osuosl.org;\n dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com\n header.a=rsa-sha256 header.s=mimecast20190719 header.b=gvALu0B7" ], "Received": [ "from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4f9H5S5qXtz1xtV\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 10 Feb 2026 20:56:28 +1100 (AEDT)", "from localhost (localhost [127.0.0.1])\n\tby smtp3.osuosl.org (Postfix) with ESMTP id 0BF856111F;\n\tTue, 10 Feb 2026 09:56:27 +0000 (UTC)", "from smtp3.osuosl.org ([127.0.0.1])\n by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id h01XQLbI1scD; Tue, 10 Feb 2026 09:56:24 +0000 (UTC)", "from lists.linuxfoundation.org (lf-lists.osuosl.org\n [IPv6:2605:bc80:3010:104::8cd3:938])\n\tby smtp3.osuosl.org (Postfix) with ESMTPS id B6AC460A98;\n\tTue, 10 Feb 2026 09:56:24 +0000 (UTC)", "from lf-lists.osuosl.org (localhost [127.0.0.1])\n\tby lists.linuxfoundation.org (Postfix) with ESMTP id 7A72DC077F;\n\tTue, 10 Feb 2026 09:56:24 +0000 (UTC)", "from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133])\n by lists.linuxfoundation.org (Postfix) with ESMTP id 09DE2C077E\n for <dev@openvswitch.org>; Tue, 10 Feb 2026 09:56:23 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n by smtp2.osuosl.org (Postfix) with ESMTP id D7817406EE\n for <dev@openvswitch.org>; Tue, 10 Feb 2026 09:56:22 +0000 (UTC)", "from smtp2.osuosl.org ([127.0.0.1])\n by localhost (smtp2.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id wxIgtOeAs1id for <dev@openvswitch.org>;\n Tue, 10 Feb 2026 09:56:22 +0000 (UTC)", "from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.133.124])\n by smtp2.osuosl.org (Postfix) with ESMTPS id CB8F3402A8\n for <dev@openvswitch.org>; Tue, 10 Feb 2026 09:56:20 +0000 (UTC)", "from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com\n (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by\n relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,\n cipher=TLS_AES_256_GCM_SHA384) id us-mta-456-segaV-F2Ol6a0JYX35_-3g-1; Tue,\n 10 Feb 2026 04:56:16 -0500", "from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com\n (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS\n id 3083319560A7; Tue, 10 Feb 2026 09:56:15 +0000 (UTC)", "from ebuild.chome (unknown [10.44.34.212])\n by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP\n id F07C818003F6; Tue, 10 Feb 2026 09:56:13 +0000 (UTC)" ], "X-Virus-Scanned": [ "amavis at osuosl.org", "amavis at osuosl.org" ], "X-Comment": "SPF check N/A for local connections -\n client-ip=2605:bc80:3010:104::8cd3:938; helo=lists.linuxfoundation.org;\n envelope-from=ovs-dev-bounces@openvswitch.org; receiver=<UNKNOWN> ", "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 smtp3.osuosl.org B6AC460A98", "OpenDKIM Filter v2.11.0 smtp2.osuosl.org CB8F3402A8" ], "Received-SPF": "Pass (mailfrom) identity=mailfrom; client-ip=170.10.133.124;\n helo=us-smtp-delivery-124.mimecast.com; envelope-from=echaudro@redhat.com;\n receiver=<UNKNOWN>", "DMARC-Filter": "OpenDMARC Filter v1.4.2 smtp2.osuosl.org CB8F3402A8", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1770717379;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding;\n bh=6f10xiexq+4QdjvqYyD18g+/ajhS2yeQ4hI5G5S82WM=;\n b=gvALu0B7/Q2MKM+ESzhKkhmVWFT5T6ykIQhWJtBdl6xEfX1zFpNGQ/3UPfz78oTkPt0LV6\n EtfmD2dJiSCf16/80Uqt9IstYCnkGdBGN4Kz5P1v6RHVVThAwCPObTi1v3GetsWgTYOuBU\n iC/DkvHPny93tGip89fwgFMOOjwQWl8=", "X-MC-Unique": "segaV-F2Ol6a0JYX35_-3g-1", "X-Mimecast-MFC-AGG-ID": "segaV-F2Ol6a0JYX35_-3g_1770717375", "To": "dev@openvswitch.org", "Date": "Tue, 10 Feb 2026 10:56:07 +0100", "Message-ID": "<cover.1770716110.git.echaudro@redhat.com>", "MIME-Version": "1.0", "X-Scanned-By": "MIMEDefang 3.4.1 on 10.30.177.111", "X-Mimecast-Spam-Score": "0", "X-Mimecast-MFC-PROC-ID": "e6isEqxb_eHCQa_hmwynEUnsNXCCdAUG0CEhbGyhc5c_1770717375", "X-Mimecast-Originator": "redhat.com", "Subject": "[ovs-dev] [PATCH 0/2] dpif-offload: Add PMD thread helpers and\n hardware offload simulation", "X-BeenThere": "ovs-dev@openvswitch.org", "X-Mailman-Version": "2.1.30", "Precedence": "list", "List-Id": "<ovs-dev.openvswitch.org>", "List-Unsubscribe": "<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>", "List-Archive": "<http://mail.openvswitch.org/pipermail/ovs-dev/>", "List-Post": "<mailto:ovs-dev@openvswitch.org>", "List-Help": "<mailto:ovs-dev-request@openvswitch.org?subject=help>", "List-Subscribe": "<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n <mailto:ovs-dev-request@openvswitch.org?subject=subscribe>", "From": "Eelco Chaudron via dev <ovs-dev@openvswitch.org>", "Reply-To": "Eelco Chaudron <echaudro@redhat.com>", "Cc": "elibr@nvidia.com", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Errors-To": "ovs-dev-bounces@openvswitch.org", "Sender": "\"dev\" <ovs-dev-bounces@openvswitch.org>" }, "content": "This series adds infrastructure for hardware offload providers to \nregister callbacks that execute as part of PMD thread processing, and \nuses this infrastructure to implement simulated hardware offload in the\ndummy offload provider.\n\nPatch 1 adds the PMD thread lifecycle hooks that allow offload providers\nto initialize per-PMD contexts, register work callbacks that run in each\nPMD iteration, and properly clean up on thread exit. Cycle statistics\nare integrated into the existing PMD performance metrics.\n\nPatch 2 leverages this infrastructure to implement full hardware offload\nsimulation in the dummy provider. Packets matching fully-offloaded flows\nare queued and processed asynchronously by the PMD work callback,\nbypassing the software datapath entirely. This allows testing of\nhardware offload behavior.\n\nTogether, these patches enable testing of hardware offload scenarios\nand features in userspace datapath configurations.\n\nEelco Chaudron (2):\n dpif-offload: Add infrastructure for offload provider PMD helpers.\n dummy-offload: Add simulated hardware offload.\n\n lib/dpif-netdev-perf.c | 19 +-\n lib/dpif-netdev-perf.h | 3 +-\n lib/dpif-netdev.c | 42 ++++-\n lib/dpif-offload-dummy.c | 318 +++++++++++++++++++++++++++++++---\n lib/dpif-offload-provider.h | 26 +++\n lib/dpif-offload.c | 133 ++++++++++++++\n lib/dpif-offload.h | 11 ++\n lib/dummy.h | 7 +-\n lib/netdev-dummy.c | 55 ++++--\n tests/dpif-netdev.at | 124 +++++++++++++\n tests/ofproto-dpif.at | 90 ++++++++--\n tests/pmd.at | 32 ++++\n utilities/checkpatch_dict.txt | 2 +\n 13 files changed, 801 insertions(+), 61 deletions(-)" }