Show a cover letter.

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

{
    "id": 125453,
    "url": "http://patches.dpdk.org/api/covers/125453/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/cover/20230323113743.4086730-1-rory.sexton@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20230323113743.4086730-1-rory.sexton@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230323113743.4086730-1-rory.sexton@intel.com",
    "date": "2023-03-23T11:37:42",
    "name": "[RFC,0/1] ring: add callback infrastructire to ring library",
    "submitter": {
        "id": 619,
        "url": "http://patches.dpdk.org/api/people/619/?format=api",
        "name": "Sexton, Rory",
        "email": "rory.sexton@intel.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/cover/20230323113743.4086730-1-rory.sexton@intel.com/mbox/",
    "series": [
        {
            "id": 27518,
            "url": "http://patches.dpdk.org/api/series/27518/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=27518",
            "date": "2023-03-23T11:37:42",
            "name": "ring: add callback infrastructire to ring library",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/27518/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/covers/125453/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 2A0D042825;\n\tThu, 23 Mar 2023 12:37:49 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id BE8214021E;\n\tThu, 23 Mar 2023 12:37:48 +0100 (CET)",
            "from mga18.intel.com (mga18.intel.com [134.134.136.126])\n by mails.dpdk.org (Postfix) with ESMTP id 9E4364021D\n for <dev@dpdk.org>; Thu, 23 Mar 2023 12:37:47 +0100 (CET)",
            "from orsmga004.jf.intel.com ([10.7.209.38])\n by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 23 Mar 2023 04:37:46 -0700",
            "from silpixa00401024.ir.intel.com (HELO\n silpixa00401024.default.svc.cluster.local) ([10.237.223.91])\n by orsmga004.jf.intel.com with ESMTP; 23 Mar 2023 04:37:45 -0700"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1679571467; x=1711107467;\n h=from:to:cc:subject:date:message-id:mime-version:\n content-transfer-encoding;\n bh=Orj1CDuek1mVEGI6wFdY0I/EUVdml1fGDC50A0hgy7o=;\n b=POuGZ9yS7K0mCIxwbsCZX2PcG88YvCMtHxXnZbaZn4ULh7BhVEPf3e2W\n d+BliKSCGXCSipcE/MDd8GnGDjle3SQTnpZ8XnpqWtRes2roDh9XjSbah\n Ev6Q6IFc7S1bepkV1YxsCUD7Hv6RVxy4/xUZu7Avluc5mmK11Qmd7IbOg\n HQmZzv0bbM0VoqHM4zV3ohGTrjtcJKjyNQeyNYHEyJGYA1DjcEMWpLuEK\n KVClW8fuBMArsQTGVqoRFjfqUEaq0JsyqcG1DvkkU7uKGjCluMOZgxSsH\n iLtNioYXWa+mNwt5As2eHEZzPZCKd4Urr5CIxlGSAha52nof1FTJxyrp6 w==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6600,9927,10657\"; a=\"323310589\"",
            "E=Sophos;i=\"5.98,283,1673942400\"; d=\"scan'208\";a=\"323310589\"",
            "E=McAfee;i=\"6600,9927,10657\"; a=\"806220479\"",
            "E=Sophos;i=\"5.98,283,1673942400\"; d=\"scan'208\";a=\"806220479\""
        ],
        "X-ExtLoop1": "1",
        "From": "Rory Sexton <rory.sexton@intel.com>",
        "To": "honnappa.nagarahalli@arm.com,\n\tkonstantin.v.ananyev@yandex.ru",
        "Cc": "dev@dpdk.org,\n\tRory Sexton <rory.sexton@intel.com>",
        "Subject": "[RFC 0/1] ring: add callback infrastructire to ring library",
        "Date": "Thu, 23 Mar 2023 11:37:42 +0000",
        "Message-Id": "<20230323113743.4086730-1-rory.sexton@intel.com>",
        "X-Mailer": "git-send-email 2.34.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "This is an RFC proposing the addition of a callback infrastructure to the ring\nlibrary, particularly in the ring dequeue functions, but they could also be\nadded to the enqueue functions if desired.\n\nCallbacks in the ring dequeue functions would be beneficial for a number of\nreasons including but not limited to the following:\n- would allow users to register specific functions to be called on dequeue of a\n  ring avoiding the need to call the function within application code on several\n  threads reading from said ring.\n- would mirror the callback functionality offered by the ethdev library for\n  threads that read exclusively from a ring and process packets based off that,\n  thus allowing for the same threads to read from either a NIC i/f or directly\n  from a ring without needing a different codepath.\n\nThe addition of callbacks wouldn't impact the reading of rings by more than 1\ncycle when no callbacks are registered. They could also additionally be compiled\nin/out as desired to give more confidence in maintaining performance when\ncallbacks are not required.\n\nThis RFC is to give a feel for what the additional APIs would be and how they\nwould be integrated within the ring dequeue functions. As such only function\ndeclarations are present. If there is a willingness within the community to add\ncallback infrastructure to the ring library I will implement further code.\n\nRory Sexton (1):\n  ring: add infrastructure to allow callbacks within the ring library\n\n lib/ring/rte_ring.h      | 133 ++++++++++++++++++++++++++++++++++++++-\n lib/ring/rte_ring_core.h |   3 +\n 2 files changed, 135 insertions(+), 1 deletion(-)"
}