get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 91112,
    "url": "http://patches.dpdk.org/api/patches/91112/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20210412100645.668395-3-kda@semihalf.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": "<20210412100645.668395-3-kda@semihalf.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210412100645.668395-3-kda@semihalf.com",
    "date": "2021-04-12T10:06:44",
    "name": "[2/3] test: disable no-huge where it's not necessary",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "d9738d118798bfc81c719df69e52532631f941df",
    "submitter": {
        "id": 2179,
        "url": "http://patches.dpdk.org/api/people/2179/?format=api",
        "name": "Stanislaw Kardach",
        "email": "kda@semihalf.com"
    },
    "delegate": {
        "id": 24651,
        "url": "http://patches.dpdk.org/api/users/24651/?format=api",
        "username": "dmarchand",
        "first_name": "David",
        "last_name": "Marchand",
        "email": "david.marchand@redhat.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20210412100645.668395-3-kda@semihalf.com/mbox/",
    "series": [
        {
            "id": 16292,
            "url": "http://patches.dpdk.org/api/series/16292/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=16292",
            "date": "2021-04-12T10:06:42",
            "name": "Increase test compatibility with PA IOVA",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/16292/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/91112/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/91112/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 mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 72C50A0C44;\n\tMon, 12 Apr 2021 12:07:10 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 771D91410B2;\n\tMon, 12 Apr 2021 12:07:01 +0200 (CEST)",
            "from mail-lj1-f170.google.com (mail-lj1-f170.google.com\n [209.85.208.170])\n by mails.dpdk.org (Postfix) with ESMTP id C57C4141087\n for <dev@dpdk.org>; Mon, 12 Apr 2021 12:06:58 +0200 (CEST)",
            "by mail-lj1-f170.google.com with SMTP id o16so14662256ljp.3\n for <dev@dpdk.org>; Mon, 12 Apr 2021 03:06:58 -0700 (PDT)",
            "from toster.semihalf.com (host-193.106.246.139.static.3s.pl.\n [193.106.246.139])\n by smtp.gmail.com with ESMTPSA id u9sm2781326ljj.0.2021.04.12.03.06.57\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Mon, 12 Apr 2021 03:06:58 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=semihalf-com.20150623.gappssmtp.com; s=20150623;\n h=from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version:content-transfer-encoding;\n bh=6RhF6StlcurmT9IGqNfvB2fWsNlOLKsrYoHnRe7TG6U=;\n b=nYN+vrb8FIRXew382bKx1e5KUT8NUqJra03B5INWqRo7AacrPL09eH4rrFJtHKUUEW\n E7F32EnQIUz0/Jf62BObY9KFdul5wsmmoVCT+R1APKSgtcOJfGlXfLrY0ebXcAYkyy7y\n L7XQXSy0Ynco5OmDwpIJYigHD/QxcZOfuQV0E4aB6AstkVXpd4x5HdHdHEDnUWpc0LGR\n HTmX2qzSysCi/qbJw0350YxM0wSssIY51SQKBslM3a4lyN8912vysjo4xu4nXBV1pAZN\n 007RPA1De4pZ67JB/8p2JoylRKj+Br6KL3WeR34fXrTkC8oqFWOHdQDKsk+OY7PsKuaR\n XKtw==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20161025;\n h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n :references:mime-version:content-transfer-encoding;\n bh=6RhF6StlcurmT9IGqNfvB2fWsNlOLKsrYoHnRe7TG6U=;\n b=EjihqzJQHOW3InNk6ZBm3TOevGjYGpO9RgRgwMKeGhQR83Hv/uAMgU0BO/34hcF/Jo\n uKg9nLCKuHsXFQgShasrAHJUpTdQAheDORrr1OXwrXmXgnkYCVXvzQ297YwqXJWK4plr\n VxeL0cVEYPKiK04BygBS9lnkNqi7c2xAojbpm9u1M1afBUGqkuGZ4hOIdvFbDTjv8ic5\n +GTH511hs2F6G7CZxoDJ/GVZpfH4bksKpic4hVhI3LH7MrfjaiAqG97/gfxbmpPT6U5H\n GPqYeuyFmzUTqgoht1XNRTOKp4GkK2UmN/KqQhZOqur+pTWeM11MeFkuNxXA3a4nbT6s\n mU8A==",
        "X-Gm-Message-State": "AOAM532knGZZDo8bnuUYIBmeYphZx4uuLjNuoIDKtTQ12UskYA/0Breu\n D4DTEvJoHD/ndgb/mCpOf36K2g==",
        "X-Google-Smtp-Source": "\n ABdhPJwTW232wRskdu0bE5wAhVRPjzlZ98VwtuleGzFUgPxhnQ8V1/Q9+73Y7Gn2CJENqNbluhAH6Q==",
        "X-Received": "by 2002:a05:651c:513:: with SMTP id\n o19mr1891914ljp.291.1618222018321;\n Mon, 12 Apr 2021 03:06:58 -0700 (PDT)",
        "From": "Stanislaw Kardach <kda@semihalf.com>",
        "To": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "Cc": "dev@dpdk.org,\n\tStanislaw Kardach <kda@semihalf.com>,\n\tstable@dpdk.org",
        "Date": "Mon, 12 Apr 2021 12:06:44 +0200",
        "Message-Id": "<20210412100645.668395-3-kda@semihalf.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20210412100645.668395-1-kda@semihalf.com>",
        "References": "<20210412100645.668395-1-kda@semihalf.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH 2/3] test: disable no-huge where it's not\n necessary",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "In tests where no-shconf flag is used, no-huge is also passed due to\ncompatibility with FreeBSD system, as described in: b5d878e6d.\nHowever on Linux systems with RTE_IOVA_PA (lack of or an incompatible\nIOMMU) this causes issues since hugepages are required by EAL.\nTherefore replace all occurrences of no_huge which don't actually test\nthe no-huge logic with a execution environment conditional\nno_huge_compat to indicate that it is passed as a compatibility flag,\nnot as a requirement for a test itself.\n\nNote that checkpatch is complaining about argvX arrays not being static\nconst. This patch doesn't change that to not add confusion.\n\nSigned-off-by: Stanislaw Kardach <kda@semihalf.com>\nFixes: b5d878e6db56 (\"test: fix EAL flags autotest on FreeBSD\")\nCc: stable@dpdk.org\n---\n app/test/test_eal_flags.c | 33 ++++++++++++++++++++++-----------\n 1 file changed, 22 insertions(+), 11 deletions(-)",
    "diff": "diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c\nindex 462dc6384..cfc54684a 100644\n--- a/app/test/test_eal_flags.c\n+++ b/app/test/test_eal_flags.c\n@@ -29,6 +29,17 @@\n #define mp_flag \"--proc-type=secondary\"\n #define no_hpet \"--no-hpet\"\n #define no_huge \"--no-huge\"\n+/* FreeBSD does not support running multiple primary processes, hence for tests\n+ * requiring no-shconf, no-huge is also required.\n+ * On Linux on the other hand no-huge is not needed so don't pass it as it\n+ * would break cases when IOMMU is not able to provide IOVA translation\n+ * (rte_eal_iova_mode() == RTE_IOVA_PA).\n+ */\n+#ifdef RTE_EXEC_ENV_LINUX\n+#define no_huge_compat \"\"\n+#else\n+#define no_huge_compat no_huge\n+#endif\n #define no_shconf \"--no-shconf\"\n #define allow \"--allow\"\n #define vdev \"--vdev\"\n@@ -354,17 +365,17 @@ test_invalid_vdev_flag(void)\n #endif\n \n \t/* Test with invalid vdev option */\n-\tconst char *vdevinval[] = {prgname, prefix, no_huge,\n+\tconst char *vdevinval[] = {prgname, prefix, no_huge_compat,\n \t\t\t\tvdev, \"eth_dummy\"};\n \n \t/* Test with valid vdev option */\n-\tconst char *vdevval1[] = {prgname, prefix, no_huge,\n+\tconst char *vdevval1[] = {prgname, prefix, no_huge_compat,\n \tvdev, \"net_ring0\"};\n \n-\tconst char *vdevval2[] = {prgname, prefix, no_huge,\n+\tconst char *vdevval2[] = {prgname, prefix, no_huge_compat,\n \tvdev, \"net_ring0,args=test\"};\n \n-\tconst char *vdevval3[] = {prgname, prefix, no_huge,\n+\tconst char *vdevval3[] = {prgname, prefix, no_huge_compat,\n \tvdev, \"net_ring0,nodeaction=r1:0:CREATE\"};\n \n \tif (launch_proc(vdevinval) == 0) {\n@@ -674,19 +685,19 @@ test_invalid_n_flag(void)\n #endif\n \n \t/* -n flag but no value */\n-\tconst char *argv1[] = { prgname, prefix, no_huge, no_shconf,\n+\tconst char *argv1[] = { prgname, prefix, no_huge_compat, no_shconf,\n \t\t\t\t\"-n\"};\n \t/* bad numeric value */\n-\tconst char *argv2[] = { prgname, prefix, no_huge, no_shconf,\n+\tconst char *argv2[] = { prgname, prefix, no_huge_compat, no_shconf,\n \t\t\t\t\"-n\", \"e\" };\n \t/* zero is invalid */\n-\tconst char *argv3[] = { prgname, prefix, no_huge, no_shconf,\n+\tconst char *argv3[] = { prgname, prefix, no_huge_compat, no_shconf,\n \t\t\t\t\"-n\", \"0\" };\n \t/* sanity test - check with good value */\n-\tconst char *argv4[] = { prgname, prefix, no_huge, no_shconf,\n+\tconst char *argv4[] = { prgname, prefix, no_huge_compat, no_shconf,\n \t\t\t\t\"-n\", \"2\" };\n \t/* sanity test - check with no -n flag */\n-\tconst char *argv5[] = { prgname, prefix, no_huge, no_shconf};\n+\tconst char *argv5[] = { prgname, prefix, no_huge_compat, no_shconf};\n \n \tif (launch_proc(argv1) == 0\n \t\t\t|| launch_proc(argv2) == 0\n@@ -878,7 +889,7 @@ test_misc_flags(void)\n \tconst char *argv5[] = {prgname, prefix, mp_flag, \"--syslog\", \"error\"};\n \t/* With no-sh-conf, also use no-huge to ensure this test runs on BSD */\n \tconst char *argv6[] = {prgname, \"-m\", DEFAULT_MEM_SIZE,\n-\t\t\tno_shconf, nosh_prefix, no_huge};\n+\t\t\tno_shconf, nosh_prefix, no_huge_compat};\n \n \t/* With --huge-dir */\n \tconst char *argv7[] = {prgname, \"-m\", DEFAULT_MEM_SIZE,\n@@ -920,7 +931,7 @@ test_misc_flags(void)\n \n \t/* With process type as auto-detect with no-shconf */\n \tconst char * const argv17[] = {prgname, \"--proc-type=auto\",\n-\t\t\tno_shconf, nosh_prefix, no_huge};\n+\t\t\tno_shconf, nosh_prefix, no_huge_compat};\n \n \t/* With process type as --create-uio-dev flag */\n \tconst char * const argv18[] = {prgname, \"--file-prefix=uiodev\",\n",
    "prefixes": [
        "2/3"
    ]
}