get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/83859/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 83859,
    "url": "http://patchwork.dpdk.org/api/patches/83859/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/patch/8f49e252a7be2d8561f4b32193e5800f98c40b0e.1604936860.git.anatoly.burakov@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": "<8f49e252a7be2d8561f4b32193e5800f98c40b0e.1604936860.git.anatoly.burakov@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/8f49e252a7be2d8561f4b32193e5800f98c40b0e.1604936860.git.anatoly.burakov@intel.com",
    "date": "2020-11-09T15:47:48",
    "name": "[21.02,v2] mem: don't warn about base addr if not requested",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "49caab4a4d4e878e1a07a061e09f391e4e2cb376",
    "submitter": {
        "id": 4,
        "url": "http://patchwork.dpdk.org/api/people/4/?format=api",
        "name": "Anatoly Burakov",
        "email": "anatoly.burakov@intel.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patchwork.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/patch/8f49e252a7be2d8561f4b32193e5800f98c40b0e.1604936860.git.anatoly.burakov@intel.com/mbox/",
    "series": [
        {
            "id": 13751,
            "url": "http://patchwork.dpdk.org/api/series/13751/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=13751",
            "date": "2020-11-09T15:47:48",
            "name": "[21.02,v2] mem: don't warn about base addr if not requested",
            "version": 2,
            "mbox": "http://patchwork.dpdk.org/series/13751/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/patches/83859/comments/",
    "check": "success",
    "checks": "http://patchwork.dpdk.org/api/patches/83859/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 86A6BA0527;\n\tMon,  9 Nov 2020 16:47:54 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 2DC906004;\n\tMon,  9 Nov 2020 16:47:53 +0100 (CET)",
            "from mga12.intel.com (mga12.intel.com [192.55.52.136])\n by dpdk.org (Postfix) with ESMTP id B2D795F13\n for <dev@dpdk.org>; Mon,  9 Nov 2020 16:47:49 +0100 (CET)",
            "from orsmga005.jf.intel.com ([10.7.209.41])\n by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 09 Nov 2020 07:47:44 -0800",
            "from silpixa00399498.ir.intel.com (HELO\n silpixa00399498.ger.corp.intel.com) ([10.237.222.52])\n by orsmga005.jf.intel.com with ESMTP; 09 Nov 2020 07:47:43 -0800"
        ],
        "IronPort-SDR": [
            "\n WQodUa5GTsnjMuNRkP2ORQZ7wAAQrWFBYtJVGQsE5EhnQsL3t3rw+JXIlJBWPxVI1mkZ5hi+vb\n 57L5GCc9GlUQ==",
            "\n YNEV7ucMjMMG9kOgHN86KspBdI1r46UQE/tuseBNRrPslktKCP7a3CtoDNNLMQPGgNfFpyz/Vw\n KMyU0giifWIQ=="
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6000,8403,9800\"; a=\"149103238\"",
            "E=Sophos;i=\"5.77,463,1596524400\"; d=\"scan'208\";a=\"149103238\"",
            "E=Sophos;i=\"5.77,463,1596524400\"; d=\"scan'208\";a=\"540896909\""
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "From": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "Damjan Marion <damarion@cisco.com>",
        "Date": "Mon,  9 Nov 2020 15:47:48 +0000",
        "Message-Id": "\n <8f49e252a7be2d8561f4b32193e5800f98c40b0e.1604936860.git.anatoly.burakov@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "\n <0ae7d9b2c1ee0e12f8ae7faa2d154c03ae7e0c92.1604935662.git.anatoly.burakov@intel.com>",
        "References": "\n <0ae7d9b2c1ee0e12f8ae7faa2d154c03ae7e0c92.1604935662.git.anatoly.burakov@intel.com>",
        "Subject": "[dpdk-dev] [PATCH 21.02 v2] mem: don't warn about base addr if not\n\trequested",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Any EAL memory allocation often goes through eal_get_virtual_area()\nfunction, which will print a warning whenever the resulting allocation\ndidn't match the specified address requirements. This is useful for\nwhen we have requested a specific base virtual address, to let the user\nknow that the mapping has deviated from that address.\n\nHowever, on Linux, we also have a default base address that's there to\nensure better chances of successful secondary process initialization,\nas well as higher likelihood of the virtual areas to fit inside the\nIOMMU address width. Because of this default base address, there are\nwarnings printed even when no base address was explicitly requested,\nwhich can be confusing to the user.\n\nEmit this warning with debug level unless base address was explicitly\nrequested by the user.\n\nCc: Damjan Marion <damarion@cisco.com>\n\nSigned-off-by: Anatoly Burakov <anatoly.burakov@intel.com>\n---\n\nNotes:\n    v2:\n    - Fix the condition to not update the address incorrectly\n    - Instead of removing the warning, let it have debug level unless base address\n      was explicitly specified by the user\n    \n    I'm not entirely sure the trade off between user confusion and helpful debug\n    information is worth it, but in my experience, i've stopped getting any emails\n    about secondary processes a long time ago and this isn't a widely used feature,\n    so i believe this is worth it.\n\n lib/librte_eal/common/eal_common_memory.c | 16 +++++++++++++---\n 1 file changed, 13 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/lib/librte_eal/common/eal_common_memory.c b/lib/librte_eal/common/eal_common_memory.c\nindex 33917fa835..1b50c2099d 100644\n--- a/lib/librte_eal/common/eal_common_memory.c\n+++ b/lib/librte_eal/common/eal_common_memory.c\n@@ -140,9 +140,19 @@ eal_get_virtual_area(void *requested_addr, size_t *size,\n \t\treturn NULL;\n \t} else if (requested_addr != NULL && addr_is_hint &&\n \t\t\taligned_addr != requested_addr) {\n-\t\tRTE_LOG(WARNING, EAL, \"WARNING! Base virtual address hint (%p != %p) not respected!\\n\",\n-\t\t\trequested_addr, aligned_addr);\n-\t\tRTE_LOG(WARNING, EAL, \"   This may cause issues with mapping memory into secondary processes\\n\");\n+\t\t/*\n+\t\t * demote this warning to debug if we did not explicitly request\n+\t\t * a base virtual address.\n+\t\t */\n+\t\tif (internal_conf->base_virtaddr != 0) {\n+\t\t\tRTE_LOG(WARNING, EAL, \"WARNING! Base virtual address hint (%p != %p) not respected!\\n\",\n+\t\t\t\trequested_addr, aligned_addr);\n+\t\t\tRTE_LOG(WARNING, EAL, \"   This may cause issues with mapping memory into secondary processes\\n\");\n+\t\t} else {\n+\t\t\tRTE_LOG(DEBUG, EAL, \"WARNING! Base virtual address hint (%p != %p) not respected!\\n\",\n+\t\t\t\trequested_addr, aligned_addr);\n+\t\t\tRTE_LOG(DEBUG, EAL, \"   This may cause issues with mapping memory into secondary processes\\n\");\n+\t\t}\n \t} else if (next_baseaddr != NULL) {\n \t\tnext_baseaddr = RTE_PTR_ADD(aligned_addr, *size);\n \t}\n",
    "prefixes": [
        "21.02",
        "v2"
    ]
}