get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 27087,
    "url": "http://patches.dpdk.org/api/patches/27087/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20170720134759.4680-7-santosh.shukla@caviumnetworks.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": "<20170720134759.4680-7-santosh.shukla@caviumnetworks.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20170720134759.4680-7-santosh.shukla@caviumnetworks.com",
    "date": "2017-07-20T13:47:59",
    "name": "[dpdk-dev,v3,6/6] mempool: update range info to pool",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "8917bf97dad20c6de7d0663186d6ea5b40747968",
    "submitter": {
        "id": 480,
        "url": "http://patches.dpdk.org/api/people/480/?format=api",
        "name": "Santosh Shukla",
        "email": "santosh.shukla@caviumnetworks.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20170720134759.4680-7-santosh.shukla@caviumnetworks.com/mbox/",
    "series": [],
    "comments": "http://patches.dpdk.org/api/patches/27087/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/27087/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [IPv6:::1])\n\tby dpdk.org (Postfix) with ESMTP id 34FEE7CB8;\n\tThu, 20 Jul 2017 15:49:25 +0200 (CEST)",
            "from NAM02-SN1-obe.outbound.protection.outlook.com\n\t(mail-sn1nam02on0082.outbound.protection.outlook.com [104.47.36.82])\n\tby dpdk.org (Postfix) with ESMTP id 8F601376C\n\tfor <dev@dpdk.org>; Thu, 20 Jul 2017 15:49:14 +0200 (CEST)",
            "from localhost.localdomain (14.140.2.178) by\n\tCY4PR07MB3095.namprd07.prod.outlook.com (10.172.115.9) with Microsoft\n\tSMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id\n\t15.1.1261.13; Thu, 20 Jul 2017 13:49:10 +0000"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=jPIPa7BHwp10CSSu0SaSS46cA6QztoQRAouxtnC8/GQ=;\n\tb=QFVI5uXKvaNsw28eZsyN0Ad4nfurH8Jd7G0YT6Y87XekftjV3hkpdkVxJnaIdyCFLrDVqX1pxj81YKYZkMSqNPfUgeh/WnDvEPSXYPOzmOJ653TgLsb10dfJkIe1wtgKhsifWTffltV0NKEypcKqay9WjzSesSIjLyDOVLpKVYM=",
        "Authentication-Results": "monjalon.net; dkim=none (message not signed)\n\theader.d=none;monjalon.net; dmarc=none action=none\n\theader.from=caviumnetworks.com;",
        "From": "Santosh Shukla <santosh.shukla@caviumnetworks.com>",
        "To": "thomas@monjalon.net,\n\tdev@dpdk.org,\n\tolivier.matz@6wind.com",
        "Cc": "jerin.jacob@caviumnetworks.com, hemant.agrawal@nxp.com,\n\tSantosh Shukla <santosh.shukla@caviumnetworks.com>",
        "Date": "Thu, 20 Jul 2017 19:17:59 +0530",
        "Message-Id": "<20170720134759.4680-7-santosh.shukla@caviumnetworks.com>",
        "X-Mailer": "git-send-email 2.11.0",
        "In-Reply-To": "<20170720134759.4680-1-santosh.shukla@caviumnetworks.com>",
        "References": "<20170713093255.13986-1-santosh.shukla@caviumnetworks.com>\n\t<20170720134759.4680-1-santosh.shukla@caviumnetworks.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[14.140.2.178]",
        "X-ClientProxiedBy": "MA1PR01CA0115.INDPRD01.PROD.OUTLOOK.COM (10.174.56.159) To\n\tCY4PR07MB3095.namprd07.prod.outlook.com (10.172.115.9)",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "bb1238fb-5cf7-416d-aa7c-08d4cf761b12",
        "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0;\n\tRULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(300000503095)(300135400095)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);\n\tSRVR:CY4PR07MB3095; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; CY4PR07MB3095;\n\t3:vZK8VeVatJQYFPb1LCuoWd8qIOIBdHptu0uVMdjTgBf185ZV3v4V0BfDoDvA/PrecRFKdC74NYL3462j230DzsIYdy+xT60utWdgbHahHptYXw5cTm5jCgBEwGTfT5sVHoqKwcqVJGyywLRs2A5zt+GuaX9ZVERRdIYaCnWgBMh/jHhESyRGoWGVx+39DFlDN80yvQT2xgKAofOoT15Rl/H/CmvwDei74/fc8mDXUG+q2wSH1B4Qm8ReBSsZm/8mFALmI2hvwo1z39PHh95MEZ4FOmUqM2/KPezQOkL5XBTKeMoigCN+jv03QQA7YPvApshoXeRoB3YPpCFWE3Rkx7G4XRkYAQ+HvcA5xYOdRfSXhVEzeom7oz/ndbUIPrCwIN5MaefhWxVGg4z8G9ELp1kelSa49I2+uynEttqubHnHiIqjim+EfaDl7XNVPS4Si5KHQ3QY6jRrwDxwmPcBcEWAG2nJ4tG+50trrXZZTJ9eaH/uCfQrmOlOgWlY0Stt+I93huSBc1KF754qM2j2c8OZ5jRt/YV+y7R+ALeJ0KXY5VYMcSNoglTXv72vROMoNV4g4hi2ouOk5OwhixBvfOeyT4EX/op9eF6SaC4I5c2LzeIS6z5tVUrRjP5AnvIPqbM5oars8VOZSrAoVd17KHT0guab52gI2iB+ZvWan0qcw9VIXfMs+mPF9LF//KHxcIcdmxPVHHPIuFLPbR4hNbyPROVshrslrc1M6ZpvtuU=",
            "1; CY4PR07MB3095;\n\t25:bOVYiQvoFsViIDRVLO8zAdTslCY6P21/DlmLzp0ymLnYreS+nMhfo6zLTA/Ij5KDlAozAn1g5RMiORIhAL8wGrvVgLUU2cRQcjPADntyJLR2cQgx3QFEprbz3qaEW+IyYq/Kvl59K6jaxb4Cnf90jVoMvicAtGuvg8mMMBu+ebRSfyEWEH+UeWZ2+q9WaxGn1oH/FlhqwVCz+Ryfhia3PlJZYAN9Dph3y6m685/SRH62nrPkiJJjX3VJgCMxKlQi8DB4S3I6dFtCHhQ3Uzid+Hw2BgOJk5MmtJIv59SPjCq5SH9PVoQ0UmYVy8h1EgDvFp2AZDmavUWUwJQA2jnwA2MgnDqkVaLIG+rGt41CLVDN9G4xUdXaLM6E1d0p3MWy1lhXK/KDC3kuuMS4PeUXwa5vUelar2VpQAoSNW7GBVe+OYnNVlsvBx2oa3UgB5bPyAfGnBbUWZJttSCr6mr5sTVQRaDko3NnlLb79K5ziOnxpmYDi/yWje+vBLtSABz0kSJGsIPrDr34gz3WW09hwjStJ8DV0ILzxUOAfWS0etnsAOmtfTDMSX/BzlMtbOgYF1hmDjONeII2xy0yQ2U4/YlE3F7pjtS+8+mW/szPaj63TRHtsiywYxCN92zALBXTPR1gkdUTUsHdbinXgGmRDHIwLGUGs87V1OgMQ2cGvXduWBpyYz3BO2C8IP/hwyALEQk6mekqy3ciDa57Lw0r7U2jpnPmvYzMQmQ90TB2j/sN3/5Lyoosb4D+Hte780FNUTOlyRpGZX2EIaoCHVvjXquiU2El54Nk1i2NZlHi5HGfUuORvhDDqntu5b/CmgsqPnKtfdLRDq1kj8unyqcOcLWQrpTs7RXMxmcSK+cmfLXKEzM4z4YF+0izTT9M2Dds7O6Alb9Pviy9k0PAhF5X5jLLO/grTOsJtLlbt0VdH9U=",
            "1; CY4PR07MB3095;\n\t31:6ZIwQAe6Hzv1s5G9UQVdZ0v189kBIvnU3ReHW1i78BsIC9lfRHAMuMY+KvHjqeqe/pqslmCJrA7S7zeYi+tTLUw9MKmahP4FLP6xRtKm7x8aP/Qt8a4wwKBGNjQqM5o56WOf4uh97NXk9hhLpaHf4t09RwU5OcWK+9SYPulVyWwp9z3Xleghuz1KBDeFguCh1/mWWNNoEF1Xm0PzyRDLV2CKCG3fBKCdQ1zRjEnGRh0Dww4PcgJ+rsar4i9vksRLPrCk+1kLZcC0bgdKduPYmkBwsq5jRGb3tXqrUqIbxEUYWrz0MmYw6czBdv1aTCngNebdHAp/JZZRY8hYL9N1UeW/sE3BeGwzQ5lJPkRsVuaiiuKyXWgPNWjh0bvxH6nzMVxLqpPB0EknpAFylvgpxNL3JK3RFuPvQF834GxlxbY60o0XRAOvsYUdPmUDRGrV77D5EnoJqax5QirAMvvV8cJGf8yOkMbVXcbDYGU8CMNxDPBQkp1MWQFRUkBFVidReiBXZAu7cFMMQXlpehH8uut3W7goGi+8bsgf3UeN+vpg7hJRdp3wu0LUA+QLvWCZs6KMhpnKSFQErDJSe8QKtmFVmOm9Skfis5TMuGtvnXJg/v3bIW5Dm2jV9DwShx8RyKW3aRVPZFe/F/Za54qm1Xc4un1BkDx6YjJd/BxgSZM=",
            "1; CY4PR07MB3095;\n\t20:dhBPmTntWPozgHez44cDof83pPcoVVEsUvun3hO/rxp8pvVkBQsdiNEw26R+IGevxa9pWcN90T4RAaBydD+ua7XjCN7TirpjrtopXOqlwImlqswxgr9Xr9uv0iwCmHXxzfhR0Zh40HBndC4I8J6pmAVvvDz65JpGI7C5ReaMUeGTerX/x2r5c9t+l0nXXN+l9KNl7JjPyONIRS+U9N5xcrrvVYw8ISXyTqAVhUCI6Kt3HP5XS4E1XVlH7ZnWshDIWP6sC5uZQKl1DjSM7XU2x6cr1oEdOfJHxYii1AZoKBQGxgb55w+lE2mzJ0BXV7worGzvxOBVw64+YWYbyl1LAF6eWKPuxOV8v9Ioe10ke7gb19betxOr89Qeo59gITtdGS+lzWsytEa5Z3aSSo6Xo1nnnltypoVDZU3WAJisiDDg6oC2fwa0olOTrydfsz6r7nUvFi6GOgzaoi/0QbWbpE++RXyiD2h2JRCyWliK9Ie59xQYvrUO93ZofCU2yNzbufbC18T0hT/tYpLQZKRN7u78ZBQSqUA1NjhIgYbmH0GZCn8NU1MeLtDEf+pWrT5PVqzlqrYTiG0kPVEn4wJHUkwgEtjWAvVp4yjWmZQjVCc=",
            "=?us-ascii?Q?1; CY4PR07MB3095;\n\t4:w4rd/5lODs4fl9D/lY7pg959KACTs/FFvruTRrwxzp?=\n\tpNQE5ObwiVqLAxaS5L/umHojrtrIX0QHP9SEjWuaVsm/8E6A1++6pfvVgNCCKzGkKhbGYTaDNtgLmSBSkDiCwcmAIs7buvskgpulKkp0hgT0EDz0wv52JGLdewv4nIYYsD6Efut+7Qd6t5bIY1k8I0RJ6z8K7/t0tgLLRnIIdoZmqYXFQ+kkgqTP8rIvNEQT05q3HJp913BdQjVctwc6jBr1jD+Ucyz3dftzbdqiCqGUp+PtjuFdgxPom18giFHe4aDraTqdjM2YLxRXzJPR8L9BjU2cC5L65iOFRF340tgL4rrE6REJoaAp8X7yTSjcPEVdUXbcVMc/8nnnlbTTmQZVn3i3WiMRT3NLcdq6HPGY25SwgQyu/g5rK9XEI65ejgbJW1P9yEuPoVPmudiG8YFC7cA0XOlUIj5nh85zmDEuGU/Ok2lBK6UwQKr0dze3g4a+m76lN8XcAPxDWwQIgO1byrjY+bbrZcjB57M0UsFEEpKxoZoDo9WjkmlPLhIFcLkxpk8ZDFpDlil8n21kLziOC7JX+ICC0vr2hHOx05lk8PJktmxTSZf3eq2FXcWbk8DmDb1Bz9c10tQulUolbB2DKMIIm5Wa+eMBsllYUgMOMrVsseqgTm3MsnaEMvaXE4RD/yh8zvak4f5mB7kuvmZNUDrrq8Hplhc3MvT7P0jiX9SrI0PmZq/AwaePe0PaBxTzii+Lu3857ycsglsIpyiTbTkUV7UBCciO90AhEjIx1HeWWzzIuqxUamuqgXoSUwKSXZATpivMr747ovkmOiqen9sNtafbevjbyoGBI9vVZunZQsnZTWFRQ7S01s+WAufk+pZ7XYpXcUgYw3I0krPfBLMaV3S+GZ6J68TD6ytGkbseqr6d3gOu1odWqmX5ERuOsa0hu2cd8JC14sBPdxN7Gz+PowQp366e3Df7rZIIfnVtWBIxvLRwidMexaWIwcTQq6AFT3NEaTCsjrCo2hBiwr2Pe0NL0wpHq3Z4DkK8m8z5LdowdjTtn2sghqZD1iuRJsS3ZHoLMSV46qwix6XfisGtVaE1n0uzjVJOcBA7GRRfzDHOYzlbxEdA4awRsFX0arWrH+RqKjIPclJGd3ZuEY7PgUmOdLqX++nebazxmm4+xgdA7sXvjKx3OniwjTXsJI7fKKUhzCzw0Ex08IBSSgDpwwKC2RvRU4EdOjRA==",
            "=?us-ascii?Q?1; CY4PR07MB3095;\n\t23:6ZnpABT/iIgnKKakF2QgIFiICgmx4c9GtOp1Oar5C?=\n\tzrUq3pg3H5o4nDng23tn0HNghUk8Cv1MSrluqE8iEKG/dJbqg+h2IK5N3/x0K4sKJen0wk4pw1f1zW7U5hOH9J3FTvgvOznmG6cGDB/D5JDFd8idXzdzxuzp0yrlG7i7C4RDlq2OyfBbJsh97yp5m4ZtgCMESgS9yEinubeKPt53yCkWucL30sItwld0GHyeAAUOb1klKsdR8Vd7AG32X7sfBTJkR30GYLeN61KruvBH/DRQJMlna6wLcCZUeeV3F48yqyoHhlwwKfe0YxR8qE5f1WR+/vEjM6a6YBg53lT/mLQ/g/IkWZXgFjCI3XGaoCIDlHFMV6q/5gLInh2iZ+NXYt/zKDJxbxwhPHX1KWD+re2INHtAdpJfEFFajrA5xiqO1D9soonddd8yxYVl8S3zP04+CfL9NddeBHJlhK4MWIJJfEWnFst+w2q9NgxUPA0Uqp2UpW08qb9L9Q7ATsAjZ9bL7decpE6xWh9YXS05Da3B9fsohXUemmgFV7JwMNXHot84UEwAw6SOJn+nfBhNTeTH375k89A4NAL6uHaSzc4aqxzRYt8tpXgpM7iSKpXPBvJ/lj9eZxwk4WXbecRlstvqFARPgWtur22vEGlGjlaXE57C5t1iK07NYT7KTyFc1CYeFVShXE2LXTu37z5fU1JZIgn/Wns9Xmi5o11F0Yg8hwZO90gq6PZw64quWpXc4IorCAz5TmHPHG06nF9U+2JWYioxg5NksTJIs5Rw+6O7EJBTN+jf1ysUZgb5331veTsiaAsQAYNn7Nyh8XzvT2Q3QEFuypbND8cCt6pu4nUOUM2/xvYAZfVHw7fruGRrebl9xUstu4G+rditeR8x/MsPRWnzeOmfGdwIoqzc84Dg2fMb/qnHhF7sIkIzddh3Ola8kH7ETMWdEZk2VS4/lGbKpYRyo3CRsEppMJ07ah3xsu8Al10EuJn+u8wDSb4NcVn05OPnvM05KERsvN7yx2uEm8o6JPvtARW25hkvRoY72Cs6mk4GTpMFAJHaUoAN97Hkr6pt3/9n23tQbfnfbJEqbgjnoaibP2fqGgTAr/7i8IR6vLXiNIQDXiZ7DnQdC7r+kWYxu/ktSsVN1GgzvaOZMTQ93YyLC60UDx/kM2Hbl/N1fGjgbtc2A7am1q9GIGU2Fssn9lB94jp1s39sdFAD4x8Kc/k/I2NQYAFrChM20OrgOzGWT2/OzdJoNLREW2Dtsi2Sgf3UfSr271CkeasMgHa8Aj2TtP8Azy7Wg==",
            "=?us-ascii?Q?1; CY4PR07MB3095;\n\t6:jlX3BBudcIpaJybDqkQJA/rAdUOsNq4mC2Gxyx0MGn?=\n\twdxCLs0bLdyuA7aOFFyhIer0zM8ecqrjRSMIWJOIQ40cV4BnlMEt9xa+hVi/DYXIg5UtyNGMtM7kwSUI2fNdhD421lIKafKjGiZqbhYyzqYtNJ+BYumPGpqRDgyY0yn9x//4J7q0LOwfKiezujWskPSVVsa7dKcvVFb294voFvodBeAS84nWaX93ZY5wHl/muWRo6UOSZ0kV82IzMMMqbDv82JMHfr4Qh7Gkxd9KLG5zYmlvCEpA/sDBODfRY9hGmc9FMczyjruiySzFXob5A7r7oHw09/kwA2NPqeeVX3u79MEpvUTL7PHxjGRueBOHZ1QAugqkBHMjLusMVZhe8+iPRGHLsRI62Rvze3/7ICPscS9dqprt+oV4AGd6wSQM529b53loz0E2IPqxhcHsG55EAID1DGYlK7JFxkNx6ukhF3K9Gn0dB6dZI78DdHoCFQvoMWUNVT9muQbafWbPnYgrLPpknrqWdeejZeUAGfcxOv8t31oxJvzmcveyaJ+Z8IRxL9Kh2nCqVzmWs33YOXbq8yDciG4t/yIh4IsjxXWG1O4xRXY7/kOvQOtbttF0+m4qZMWALi2Gu3NV3fPTbcwJ/8hzoLHITu7+hTcxCNuS0ILFimC5kiPr4Ih1uFcNaWWumANJ3gba+VsmepJR1jfzT/lIgOl0epCy9tS0OOPikBUJNVFfisbAMc0ctaS6ktsx/t14mkJxgo9ssQoIPqVW2So3xNHhcmahbq57qYs8sPHyQDBuAyiKvSFJ+zb5lpAVFC9qxwAy+J4ozlfGUZxqCuTx/EaS97x5QETFave1jn8SG/Z1gh42qxDxCBx8mf9CwelTK+gbNXdhfwqEbGK4xoRkioS2cx1F/pH2AUnyy3OfuQRFSMAoUKKHm1SNrt4E9IYnGZzuYd+eRaBAFSVG12/6oZT77fAH5Nxt3oYEl26Ku0UgnbvvdqWfktTxk=",
            "1; CY4PR07MB3095;\n\t5:/jnrTOeYiq2iV+ACZCkJeplARdz8BaWr/W0hlmoabUC17gRSjhOiksEClLPzY+YUJoeZgZGMoMSIJtjcxFazGZKQ0pJgy0897bgi3VAs/bgSc7d1YF/Mqo5CbqRAP4GdGtyeHVGiErPjSfE9fuUOpIIcAbRG5CGaeBp2zAr8KKLiwyGANB+NP5+LZvLdSdnXFUWPMwcv4GNTbhMqMXaaDRUrlr/f2TkVrg8BWQwZz/2E0d/V0MxEh/rBfWCXPZ1SNikXT5gGnFo1tfYrfYwSl2pu1BF8cuCYQj0DcAtmxI+IRvPDUEDOWEHb9lDHb6gtU1xooe7iwYgdQj8fyB1XKNOE2TOZXINOzsFM1hicvVS2lb2HAciMKRdi4mcag+lJKg5ORHnbcAPS7Q4uAJXHl4ZO1uT+hE1eh7FW4LAmvoch5eW1+9JGNxEUQHSG1OJ1ngCxKsPgTxLMyhdpzqXOzGt3k/zohT4m/d9hjd7zWFHRe19pE38lwPURsxZQbhek;\n\t24:S+z7yUmO4ELUiFToYL/QSwKw27H8htKoYoPiJt5+WloR667HbOXsahdkAGAsVxqL8kA3/kp/zyoGmtVi82KToAEs+rbcfSwA/v2R7XrHNKc=",
            "1; CY4PR07MB3095;\n\t7:BpMXqojhaOpOPGyp8C5ObmUVdF4nD7YJdBGK4v/r5azS56bTzlYeV6TXnikudpRlqgAlG2F4Czt65lr22pn6mk1ZMg6BW+sS4Ej4WxIFvhab1uwWsh827Rk8PwmZx4zKVX02o8Q21KHJZp+NasWTQtQT1ooPSiJMoASugx5CgfMBTMEtWZc07DXlXAdARimcmCpVH6EKlmV7IQDGJ3TWayH/3Oi3HB81QY7utuvhLKfY0oQ1JAj89dhcLkm9pe2YRmU5yEqe+C51ZJ+ltLPLyPwcLMbWIp7lAGfZBP7D6mbk23CJzzaedMkgsfWfEyFZ3IWsxpU81cDVthQeV1tHtxBZCuGcN2HEeziHk3JFhY9Z5pYuhTYj6/92ZTARXJ2rs/aRHFbK6Y7lp1+Av3QL3a/Acnu6ZvcezD4a/VY7EGp7WuuIgahu+6Fgk9sRIBCB+4T6MUHZpv+XFswG/BGZhcVd5tsNgSzd3W17oUeoE7gJ10BkWiiCEk9/2i9vEwPnTWVKEOAMhoAIHnNyRn2MKiCIx7BH1DOz2Gq97G2Fk7W8yqnuUISH9VjTH9RlsLghjzEKY1AWseLpFDzW6ZXfS3uLUjADolf/msiU5q5YqruXwsOz49xbZLQsdqsWJ+S2OcxwpQ/H+AmjwUs/9rPtKWMd04qCHfYuY1ZySNyhIr/5AaiMl2RBzIhHfTdJggUDYN3VlP+og1CmRp5MmBLHBFn01qAI4zifFBPTyZkzpCNdqd8RqmQExQwr+A/Cneyco5F1olIn4bj+1H8gvNUVNRAs2EpZgkMsbeKEUSK6egE="
        ],
        "X-MS-TrafficTypeDiagnostic": "CY4PR07MB3095:",
        "X-Exchange-Antispam-Report-Test": "UriScan:(236129657087228)(167848164394848); ",
        "X-Microsoft-Antispam-PRVS": "<CY4PR07MB309545902AD6570251BAAC59EAA70@CY4PR07MB3095.namprd07.prod.outlook.com>",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(2017060910075)(93006095)(10201501046)(100000703101)(100105400095)(3002001)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123562025)(20161123560025)(20161123558100)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);\n\tSRVR:CY4PR07MB3095; BCL:0; PCL:0;\n\tRULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);\n\tSRVR:CY4PR07MB3095; ",
        "X-Forefront-PRVS": "0374433C81",
        "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(4630300001)(7370300001)(6069001)(6009001)(39400400002)(39450400003)(39850400002)(39840400002)(39410400002)(39860400002)(6116002)(42882006)(72206003)(305945005)(7736002)(15650500001)(48376002)(2950100002)(50466002)(6506006)(5003940100001)(6666003)(7350300001)(47776003)(575784001)(189998001)(478600001)(4326008)(110136004)(6486002)(5009440100003)(25786009)(66066001)(8656003)(107886003)(38730400002)(50986999)(76176999)(2906002)(6512007)(81166006)(8676002)(33646002)(1076002)(3846002)(50226002)(53936002)(42186005)(5660300001)(36756003)(110426004);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR07MB3095; H:localhost.localdomain;\n\tFPR:; \n\tSPF:None; MLV:nov; PTR:InfoNoRecords; LANG:en; ",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-OriginatorOrg": "caviumnetworks.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "20 Jul 2017 13:49:10.7443\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY4PR07MB3095",
        "Subject": "[dpdk-dev] [PATCH v3 6/6] mempool: update range info to pool",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "HW pool manager e.g. Octeontx SoC demands s/w to program start and end\naddress of pool. Currently, there is no such handle in external mempool.\nIntroducing rte_mempool_update_range handle which will let HW(pool\nmanager)\nknow when common layer selects hugepage:\nFor each hugepage - update its start/end address to HW pool manager.\n\nSigned-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>\nSigned-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>\n---\nv1 -- v2:\n- Added RTE_FUNC_PTR_OR_RET\n\n lib/librte_mempool/rte_mempool.c           |  3 +++\n lib/librte_mempool/rte_mempool.h           | 22 ++++++++++++++++++++++\n lib/librte_mempool/rte_mempool_ops.c       | 13 +++++++++++++\n lib/librte_mempool/rte_mempool_version.map |  1 +\n 4 files changed, 39 insertions(+)",
    "diff": "diff --git a/lib/librte_mempool/rte_mempool.c b/lib/librte_mempool/rte_mempool.c\nindex 7610f0d1f..df7996df8 100644\n--- a/lib/librte_mempool/rte_mempool.c\n+++ b/lib/librte_mempool/rte_mempool.c\n@@ -363,6 +363,9 @@ rte_mempool_populate_phys(struct rte_mempool *mp, char *vaddr,\n \tstruct rte_mempool_memhdr *memhdr;\n \tint ret;\n \n+\t/* update range info to mempool */\n+\trte_mempool_ops_update_range(mp, vaddr, paddr, len);\n+\n \t/* create the internal ring if not already done */\n \tif ((mp->flags & MEMPOOL_F_POOL_CREATED) == 0) {\n \t\tret = rte_mempool_ops_alloc(mp);\ndiff --git a/lib/librte_mempool/rte_mempool.h b/lib/librte_mempool/rte_mempool.h\nindex d7c2416f4..b59a522cd 100644\n--- a/lib/librte_mempool/rte_mempool.h\n+++ b/lib/librte_mempool/rte_mempool.h\n@@ -396,6 +396,11 @@ typedef unsigned (*rte_mempool_get_count)(const struct rte_mempool *mp);\n  */\n typedef int (*rte_mempool_get_capabilities_t)(struct rte_mempool *mp);\n \n+/**\n+ * Update range info to mempool.\n+ */\n+typedef void (*rte_mempool_update_range_t)(const struct rte_mempool *mp,\n+\t\tchar *vaddr, phys_addr_t paddr, size_t len);\n \n /** Structure defining mempool operations structure */\n struct rte_mempool_ops {\n@@ -406,6 +411,7 @@ struct rte_mempool_ops {\n \trte_mempool_dequeue_t dequeue;   /**< Dequeue an object. */\n \trte_mempool_get_count get_count; /**< Get qty of available objs. */\n \trte_mempool_get_capabilities_t get_capabilities; /**< Get capability */\n+\trte_mempool_update_range_t update_range; /**< Update range to mempool */\n } __rte_cache_aligned;\n \n #define RTE_MEMPOOL_MAX_OPS_IDX 16  /**< Max registered ops structs */\n@@ -531,6 +537,22 @@ int\n rte_mempool_ops_get_capabilities(struct rte_mempool *mp);\n \n /**\n+ * @internal wrapper for mempool_ops update_range callback.\n+ *\n+ * @param mp\n+ *   Pointer to the memory pool.\n+ * @param vaddr\n+ *   Pointer to the buffer virtual address\n+ * @param paddr\n+ *   Pointer to the buffer physical address\n+ * @param len\n+ *   Pool size\n+ */\n+void\n+rte_mempool_ops_update_range(const struct rte_mempool *mp,\n+\t\t\t\tchar *vaddr, phys_addr_t paddr, size_t len);\n+\n+/**\n  * @internal wrapper for mempool_ops free callback.\n  *\n  * @param mp\ndiff --git a/lib/librte_mempool/rte_mempool_ops.c b/lib/librte_mempool/rte_mempool_ops.c\nindex 31a73cc9a..7bb52b3ca 100644\n--- a/lib/librte_mempool/rte_mempool_ops.c\n+++ b/lib/librte_mempool/rte_mempool_ops.c\n@@ -87,6 +87,7 @@ rte_mempool_register_ops(const struct rte_mempool_ops *h)\n \tops->dequeue = h->dequeue;\n \tops->get_count = h->get_count;\n \tops->get_capabilities = h->get_capabilities;\n+\tops->update_range = h->update_range;\n \n \trte_spinlock_unlock(&rte_mempool_ops_table.sl);\n \n@@ -137,6 +138,18 @@ rte_mempool_ops_get_capabilities(struct rte_mempool *mp)\n \treturn ops->get_capabilities(mp);\n }\n \n+/* wrapper to update range info to external mempool */\n+void\n+rte_mempool_ops_update_range(const struct rte_mempool *mp, char *vaddr,\n+\t\t\t     phys_addr_t paddr, size_t len)\n+{\n+\tstruct rte_mempool_ops *ops;\n+\n+\tops = rte_mempool_get_ops(mp->ops_index);\n+\tRTE_FUNC_PTR_OR_RET(ops->update_range);\n+\tops->update_range(mp, vaddr, paddr, len);\n+}\n+\n /* sets mempool ops previously registered by rte_mempool_register_ops. */\n int\n rte_mempool_set_ops_byname(struct rte_mempool *mp, const char *name,\ndiff --git a/lib/librte_mempool/rte_mempool_version.map b/lib/librte_mempool/rte_mempool_version.map\nindex 3c3471507..2663001c3 100644\n--- a/lib/librte_mempool/rte_mempool_version.map\n+++ b/lib/librte_mempool/rte_mempool_version.map\n@@ -46,5 +46,6 @@ DPDK_17.11 {\n \tglobal:\n \n \trte_mempool_ops_get_capabilities;\n+\trte_mempool_ops_update_range;\n \n } DPDK_16.07;\n",
    "prefixes": [
        "dpdk-dev",
        "v3",
        "6/6"
    ]
}