Show a cover letter.

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

{
    "id": 115608,
    "url": "http://patchwork.dpdk.org/api/covers/115608/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/cover/20220829151901.376754-1-bruce.richardson@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.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": "<20220829151901.376754-1-bruce.richardson@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20220829151901.376754-1-bruce.richardson@intel.com",
    "date": "2022-08-29T15:18:58",
    "name": "[RFC,0/3] Split logging out of EAL",
    "submitter": {
        "id": 20,
        "url": "http://patchwork.dpdk.org/api/people/20/?format=api",
        "name": "Bruce Richardson",
        "email": "bruce.richardson@intel.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/cover/20220829151901.376754-1-bruce.richardson@intel.com/mbox/",
    "series": [
        {
            "id": 24453,
            "url": "http://patchwork.dpdk.org/api/series/24453/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=24453",
            "date": "2022-08-29T15:18:58",
            "name": "Split logging out of EAL",
            "version": 1,
            "mbox": "http://patchwork.dpdk.org/series/24453/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/covers/115608/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 E5ED2A0542;\n\tMon, 29 Aug 2022 17:19:18 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D9A7440DF7;\n\tMon, 29 Aug 2022 17:19:18 +0200 (CEST)",
            "from mga03.intel.com (mga03.intel.com [134.134.136.65])\n by mails.dpdk.org (Postfix) with ESMTP id A75EF4069F\n for <dev@dpdk.org>; Mon, 29 Aug 2022 17:19:16 +0200 (CEST)",
            "from orsmga006.jf.intel.com ([10.7.209.51])\n by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 29 Aug 2022 08:19:07 -0700",
            "from silpixa00401385.ir.intel.com (HELO\n silpixa00401385.ger.corp.intel.com) ([10.237.222.145])\n by orsmga006.jf.intel.com with ESMTP; 29 Aug 2022 08:19:06 -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=1661786356; x=1693322356;\n h=from:to:cc:subject:date:message-id:mime-version:\n content-transfer-encoding;\n bh=gX8ATEFB+BZQwOqlOe5kvQ0N0MF8CGW4IvzEvUJQxlk=;\n b=gYd3bLZ3rdtFeXOhecWdifQJYFrmWFuO66iCxRW37sSdmCzP2kdaejyj\n EyCeQ26Kt+tis/L3OJ2SCynypfjAj8+uuLyu7Du3n6wWacVOXiLuBT1ca\n aLjidWltkgpZ3v+twiijFUFYKZvqqqq34dvPslE/3gB1JIrsdMsBk/ebs\n uKbRDNnAEIp4Nqke7eIWDpsYLaIa0ucL0rmGypUFDGgRnrSTMNFtLLQ6L\n dluR5odRLJVc+MvpbTPmZc9pdtyKhlDAYsfWs2YMLpErO8WFAlX0gUv4p\n Tbptpbd5qBx6PbWQvKTjXUQOptBwm7uHfPL+ts5+nOwB6v7dgxd2dDE3w g==;",
        "X-IronPort-AV": [
            "E=McAfee;i=\"6500,9779,10454\"; a=\"296196031\"",
            "E=Sophos;i=\"5.93,272,1654585200\"; d=\"scan'208\";a=\"296196031\"",
            "E=Sophos;i=\"5.93,272,1654585200\"; d=\"scan'208\";a=\"588198065\""
        ],
        "X-ExtLoop1": "1",
        "From": "Bruce Richardson <bruce.richardson@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "Bruce Richardson <bruce.richardson@intel.com>",
        "Subject": "[RFC PATCH 0/3] Split logging out of EAL",
        "Date": "Mon, 29 Aug 2022 16:18:58 +0100",
        "Message-Id": "<20220829151901.376754-1-bruce.richardson@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": "Following recent discussion on-list about EAL needing to be broken down\na bit, here is an RFC where logging functionality is split out of EAL\ninto a separate library. Most parts of this work is fairly straight\nforward - there are only two complications:\n\n1. The logging functions use \"fnmatch\", which is not available on\n   windows, and so has a compatibility fallback in EAL.\n\n2. There are individual logging files for each supported OS.\n\nFor #1, there were really two options to avoid the circular dependency -\neither move fnmatch into the log library, or to create a new lower-level\nlibrary for such back function fallbacks. For this RFC I've taken the\nsecond option as a better solution. Ideally, more of EAL compat\nfunctions should be moved to such a library if we create one, but for\nnow, it's only the one function that was needed to be moved.\n\nFor #2, this was fixed using standard naming and the build system to\nonly build the appropriately named file for each OS. The alternative of\ncreating a subdir per-OS seems overkill for the single-file situation.\n\nNOTE: this is an early RFC based on work I did some time back, and is\nintended just to inspire further discussion and work about splitting\nEAL, more than necessarily being a patchset for future merging.\n\nBruce Richardson (3):\n  os: begin separating some OS compatibility from EAL\n  log: separate logging functions out of EAL\n  telemetry: use standard logging\n\n lib/eal/common/eal_private.h                  |  7 ----\n lib/eal/common/meson.build                    |  1 -\n lib/eal/freebsd/eal.c                         |  6 +--\n lib/eal/include/meson.build                   |  1 -\n lib/eal/linux/eal.c                           |  6 +--\n lib/eal/linux/meson.build                     |  1 -\n lib/eal/meson.build                           |  2 +-\n lib/eal/version.map                           | 17 --------\n lib/eal/windows/meson.build                   |  2 -\n lib/kvargs/meson.build                        |  3 +-\n lib/{eal/common => log}/eal_common_log.c      |  1 -\n lib/{eal/common => log}/eal_log.h             | 11 ++++++\n .../linux/eal_log.c => log/eal_log_linux.c}   |  0\n .../eal_log.c => log/eal_log_windows.c}       |  0\n lib/log/meson.build                           |  8 ++++\n lib/{eal/include => log}/rte_log.h            |  0\n lib/log/version.map                           | 39 +++++++++++++++++++\n lib/meson.build                               | 12 +++---\n lib/os/freebsd/fnmatch.c                      |  3 ++\n lib/os/linux/fnmatch.c                        |  3 ++\n lib/os/meson.build                            |  8 ++++\n lib/os/os.c                                   |  3 ++\n lib/os/version.map                            |  7 ++++\n lib/{eal => os}/windows/fnmatch.c             |  0\n .../windows/include => os/windows}/fnmatch.h  |  0\n lib/telemetry/meson.build                     |  3 +-\n lib/telemetry/telemetry.c                     | 12 +++---\n lib/telemetry/telemetry_internal.h            |  3 +-\n 28 files changed, 100 insertions(+), 59 deletions(-)\n rename lib/{eal/common => log}/eal_common_log.c (99%)\n rename lib/{eal/common => log}/eal_log.h (80%)\n rename lib/{eal/linux/eal_log.c => log/eal_log_linux.c} (100%)\n rename lib/{eal/windows/eal_log.c => log/eal_log_windows.c} (100%)\n create mode 100644 lib/log/meson.build\n rename lib/{eal/include => log}/rte_log.h (100%)\n create mode 100644 lib/log/version.map\n create mode 100644 lib/os/freebsd/fnmatch.c\n create mode 100644 lib/os/linux/fnmatch.c\n create mode 100644 lib/os/meson.build\n create mode 100644 lib/os/os.c\n create mode 100644 lib/os/version.map\n rename lib/{eal => os}/windows/fnmatch.c (100%)\n rename lib/{eal/windows/include => os/windows}/fnmatch.h (100%)\n\n--\n2.34.1"
}