get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 42202,
    "url": "http://patches.dpdk.org/api/patches/42202/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1530695113-12477-1-git-send-email-hemant.agrawal@nxp.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": "<1530695113-12477-1-git-send-email-hemant.agrawal@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1530695113-12477-1-git-send-email-hemant.agrawal@nxp.com",
    "date": "2018-07-04T09:05:13",
    "name": "[v2] security: remove experimental tag from security APIs",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": true,
    "hash": "1a6a6eb110b78a4d0d68604f733d4416f760e01c",
    "submitter": {
        "id": 477,
        "url": "http://patches.dpdk.org/api/people/477/?format=api",
        "name": "Hemant Agrawal",
        "email": "hemant.agrawal@nxp.com"
    },
    "delegate": {
        "id": 22,
        "url": "http://patches.dpdk.org/api/users/22/?format=api",
        "username": "pdelarag",
        "first_name": "Pablo",
        "last_name": "de Lara Guarch",
        "email": "pablo.de.lara.guarch@intel.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1530695113-12477-1-git-send-email-hemant.agrawal@nxp.com/mbox/",
    "series": [
        {
            "id": 389,
            "url": "http://patches.dpdk.org/api/series/389/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=389",
            "date": "2018-07-04T09:05:13",
            "name": "[v2] security: remove experimental tag from security APIs",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/389/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/42202/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/42202/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 [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 1378D1BF1C;\n\tWed,  4 Jul 2018 11:06:55 +0200 (CEST)",
            "from EUR01-VE1-obe.outbound.protection.outlook.com\n\t(mail-ve1eur01on0074.outbound.protection.outlook.com [104.47.1.74])\n\tby dpdk.org (Postfix) with ESMTP id CFB641BF01\n\tfor <dev@dpdk.org>; Wed,  4 Jul 2018 11:06:53 +0200 (CEST)",
            "from bf-netperf1.ap.freescale.net (14.142.187.166) by\n\tDB3PR04MB0761.eurprd04.prod.outlook.com (2a01:111:e400:9440::24) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.19;\n\tWed, 4 Jul 2018 09:06:49 +0000"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=zul9M5TLYHS/u/I5yhRT7T76saTHWqRmaIca5em+QB4=;\n\tb=K7YZQIwEnOyuRyh/5/YKBUCCzCc0tHeCXi3SuJivaMu/9IGe4gW79vMvUXLQT6ZCeejNDwS0zWezU9h4rf00rwlsAMth2gdVvkEoMWbg/pseWY7jQCP5buKPvbDSTrsBnvHaskWBsjeaaDbSzVNUqxA1erWkvNXHWDL5RvaJXGY=",
        "Authentication-Results": "spf=none (sender IP is )\n\tsmtp.mailfrom=hemant.agrawal@nxp.com; ",
        "From": "Hemant Agrawal <hemant.agrawal@nxp.com>",
        "To": "radu.nicolau@intel.com, akhil.goyal@nxp.com, declan.doherty@intel.com,\n\tpablo.de.lara.guarch@intel.com, borisp@mellanox.com",
        "Cc": "dev@dpdk.org",
        "Date": "Wed,  4 Jul 2018 14:35:13 +0530",
        "Message-Id": "<1530695113-12477-1-git-send-email-hemant.agrawal@nxp.com>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1530690841-27356-1-git-send-email-hemant.agrawal@nxp.com>",
        "References": "<1530690841-27356-1-git-send-email-hemant.agrawal@nxp.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[14.142.187.166]",
        "X-ClientProxiedBy": "BM1PR01CA0071.INDPRD01.PROD.OUTLOOK.COM\n\t(2603:1096:b00:1::11) To DB3PR04MB0761.eurprd04.prod.outlook.com\n\t(2a01:111:e400:9440::24)",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "148e1f3c-9a45-4315-f061-08d5e18d7a8a",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-Microsoft-Antispam": "UriScan:; BCL:0; PCL:0;\n\tRULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020);\n\tSRVR:DB3PR04MB0761; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; DB3PR04MB0761;\n\t3:SH0gGGcBiGyRCWo2676OD5pQMK5V+eMvEEmJq2Bx7scFvZxYiVxkr8UwIYQxkhHrr+RRqPSMmCH+NJdgsY7zi/+vsp5oPSFL7wEm4KCJrixbDKBHuC1vwxCBvKzmCegKttvkZgo09u2sJ6g2PIUWAneOzFTUshMJz3L0VprNSp+La0MLNY9oLAO1Ec1BjBJFXDgQSZp36PaHzU0mk77kRW76e8AyTN0i2MD7mziszCY6atUs22fBjAMeBsJykP2m;\n\t25:azt4+mPiDPOWOFJyxyi3nIbKeShzbJ/5qSEJE7s25MPmo4ldqbE0Wgi7+c1spKZiQ99H7xyrzGrAmD53xzUo5kwYhtl5qSY/qK5mtslduTOKf22n8ETTnf0sArLZzhxCpY9jcUp3K19OyUHyvSJQg3DP8JS+st2a6lo25YV9mgrFo1zRPSX+EpLCQ8/olrMv7ttp5X1qk3NitbpR9RMmQe8vzT/b6dBgHGbBBGxCDIXaxLQlY5gYprLffLkHFwTnlwKtfL5rxtdOjdYGD8fJwieNkrBJzbHnC4qpkgmUQ3/JZzVLjKpIfvkFnPdkfhWESHLWQWYr31boNzQegb9CFA==;\n\t31:1ozFiDNnqpbxcf/cg9svQtLOOHp7jhNCiH+3LrrNnPxjS3Fp7NHI7EYwm99W620VgMA6QTyDbMJacMiT6WtnnNwnAwdUR628MCs0PVlXzraPk8GXmZ7oBCp9lDnWY9soUUZCls8RquqmKp40N/Bg336tXLfVJcO/2X8TsQa8EiSjTDOKO8R4fQlhvMExMP8qe1s4c5gvm6jLbmGkdomMhP8GL73KAOMdP21fWMdzyCQ=",
            "1; DB3PR04MB0761;\n\t20:YbJP7YBN3ojH6UcPtHdFDtGlD0lVgLnN9PogawFP59B6bvS9EWqkgtbfhgynLQwVV46zTa9r1aVSDfhZ2FLKnO7Pe7KDFc6Bg6Hi8rtgIp6pDGHe/d0PlUtQMePUsIYufqazM7DjlX4eQDPoxNTJQ5lcliXAMcZtwFYjEh97Q69V0mRcvowxGYFHFeqPydYCLrTJShm4iaa/Hr9baDtPJ/iJynjbokK/1iJOEXqLFYD1hzmZkxmRYtnVvNZH1TwvWYJMtrnoz8tSfbzUUHUHmAa/vDU9C9tanmN3VBqZ1e4MhTuCUKJ2Zv6WOooHMs33mQzJnes6cry+6dDCzzruBwlIacC3RM1Iw1+yW0PD/tVfr5NdzWALJl2yUv6nS8eCJaLyKzqd0gvmxGpFRTHxUzGv9PEruni0KjAqpoUnMlGItOy88kkvxi5/BG+7p6BhXEUfwDN3xouCyM0AJefAywbhE+lC6SMGmSKSHOkA1kusfaeGV7Dc1R9ZsbwrsJU5;\n\t4:zj7HwNGDeZENpf3f94tgC9DMVGpSXOcpJdnY2LJr2RWshMd6YJABodiCJm6/d5QtydlSac8u2c6BeeQgoZa7to8F/s3Ij1At+Hm81CvrkXJWCfBFIeXGXKD+WIPUG3g2KW9tCARPAy1L6BlxirDrDh/iiUyHVT+AqgxRsYqRcYMiXLJ0CfdvK/oJBjC2284NrkRmtsb+5yGqMnXWXU34NE9TVz3L/eF83EGqYbYKUSAkmaudQTxJgXglAG/MkUIQQe1tPYjSk1eW2H9ussPlTA8thDYq3PuFotrrLtLiSTAilDeFlFPJEmiqpKc/+cXhrIcvyMBcidgZ1i/8ohz0+24qeT4XjffG4sCJ7iJI0rs=",
            "=?us-ascii?Q?1; DB3PR04MB0761;\n\t23:7srY8zArJYRXzDVLG+G6YENeTnsLHG31Pv0MwCRdo?=\n\taqaQrJqm7FqAiJH381IHSKDtBsIsiPH4OySQhvP4ZbE58OatQBpguYVycem+OuXkoRXeVySJTf9JnMY4B7u4o84S3Nq/t0htsjkGV/XeQdVJMBl6ObyZ/Zkd+YSjvlp+w9ubBdf2xaQaLlcL8X762H3Wj2R+O9HWfr0lirJM7K3+G9fQuqs4zbgQ3AWz8zvz+72v4cPhg1FAIzODPFX4GOKluoUB69BDGADWnmW8qy6/aGcnNH5goNyTYBIAX7P6use/wKH7kSdnFYTnzJvZgxcMtlp9YhvmvfRfyIEHhq2yGjtcxhdU89q84SoSNRiu+EE815qKYVd/a2V3S31JTjMw/Spd71E7TTiVX0PlFhpT0QcNQqJknUW/YmlbKVBc++mGMqLr22jif9HyArM/7WxNaSR33TIuiQ6JJyAxmkuFglobd4cgWnDcLt7EQmKq3BUj5YZi6R2CsdAsGH2wy7tPKvFR3KwCzM1Lsb/htwimRxsUVH5uuXgiT+RlJj8yAOgyuL/hhXHaimB1ygsmKBDx8XxJYbLm5ZOV3RDMvaUhkArecuOQdCNr6mfddYotQwV03vJJzuT3aQtsALJyRqqc1VUe8coJkaxEk/Q/7TfG+dvkUzSn9PZRA54med8LtmUYYdKXgGMbRXLJ6Sr+w00jx6wBk7zuzAEtMWZip6Ix38haq+yb5lbOJeA5R7yPhrJuADeXfcWnAPimgRsoW/715gj4z8TmXRd1w/cgVHqRzWj3h2LCIvNQLdXiuvvPpdRqE4Zb1RFRp9+1GWMDTUAOT/rjHEBVbGzsf77WldVWIqPaFMQeMPCE2VzDyZnqYx1VP2b6irB8FfVvXDaIC1tXATV5Oc5BGNLvyazmPUwJanv7ATJ4xJ45P2BIcSTDPK3MaXUPOXPb4BrvUWOefbc/eoOA2qa/2uT3ziJXRC2YbIdJDIMQbGJC4C4lx/vll3AyNe59ZaaN/oZzSOBbknAb9NiaVVOKRGwJTWqyRMrJrymZu4ueLYtjrAfEtlDiMYjomyrZogrCBGugl276nI0vpoSBXP9em3y7uLeA7OeN+E2tgeZwD6pw1STdAmadjYnfX+Gb5xe3MJVnZs1G0YrILENR8UfDq1e4B368Ho9dYus+2WZ/QQgA7kKouPIvkpT4DbaLeft0+R7KAKXBtZZavtf3R28FHiotfGPudXo4tpvia5RE7b41fGWfXBN/XXZBt2GA+nr0e/eYG7Lp7dpdOTf47pwnAkmpDa+2XzSxkGXu8uk+8bVmHYjUoTRwO11dz0IMxHb0ahVR7e6Tka1",
            "1; DB3PR04MB0761;\n\t6:ZoUIVjfh+Zn/3BlZDWHx8ocqQAlKJ02jS0wXiZaqYLptZ2BVTrH2MkYuLGSQC/0ZcBOQKkgCvfaIDcIf0fe6Z5u8QMdVV8KfWwEybU2HL3CS4IGiUuJOdpn9HP6iY/J30huPH/niaAagtsf6UqzxIwKLnhKngmwb0VlDJJhMvE5zLNITJCk68CuvNm/obs8s3E0Gn8m8Pr/nHveYm4eUNRcwtybKN1O3Jd9vJe0dTnv3mEqpJGJiSwPzc3tqHlokW9im8lDt6CR+3kx4ucsDLcFlTAn9cfMEtN8g+NHOovhfmz6KAVhLp0lCoUU8om06hgLFm8u/zMNR/dJFCeFPP6BsX7D0Voo4AFtzc6Iw36bpOg6rL7MK37w0e/cgDxK6fGDQmj4/yyPaqlkMNcZMleSuB/8Xolirxxa/xoFWOhMQUJnyQBNf7QsxAQ7XGU0Uo4j2JpP0JaYWnW6INbBKbA==;\n\t5:xUIzFMRRZwx1I4WHqWKE8T1oYdkQMJ0IrKXfCJxBpw4wrrZNCwcClZ6x0CbkbPLkxs50Ollv0Rpg2KN9BNrlqJGF/33WLmGS3IhtbzBGN/gAKPHxp8P9f+p8hqH6ALmMUHr7WpeGj7YE3pdC2R/XNk9hS6CBejZ9gou3b2dqoW4=;\n\t24:jCBDzHScMTpMrkOwN1nCoZhFRnHmTLvRn5c5uWROxv3cIM5fw2AUbr63qDX1kTX2LNnDQ7cLzfE16KSrcvj4vmCmUvMCD9/jJImv+19piOU=",
            "1; DB3PR04MB0761;\n\t7:rE2HmDxChXAZekbocebIRKch9HupNZYUvsBJ1kZbZSFqHB5Fo4pTvdxX0yMw+NcIeyiCSERRbc3o962fOtKVa8NymnMwwSFpkd+krtIqzxAfQQf5Xk50cb7YBE46JzWKAs88IHVai7GQqOzB5R+r8JH8uOZxSABIYko4VF9m0lEcVlwygPoQwgaJupqjjMh0dwmxHAL+eznKM3iB8xG1iZNPmHCUHqYgaNFt9VwgGs/iswcgpp/6tlRy5WHxPkbO"
        ],
        "X-MS-TrafficTypeDiagnostic": "DB3PR04MB0761:",
        "X-Microsoft-Antispam-PRVS": "<DB3PR04MB0761BAE826FBE377C36BBE3B89410@DB3PR04MB0761.eurprd04.prod.outlook.com>",
        "X-Exchange-Antispam-Report-Test": "UriScan:(192374486261705)(185117386973197); ",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231254)(944501410)(52105095)(3002001)(10201501046)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016);\n\tSRVR:DB3PR04MB0761; BCL:0; PCL:0; RULEID:; SRVR:DB3PR04MB0761; ",
        "X-Forefront-PRVS": "0723A02764",
        "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(136003)(366004)(346002)(39860400002)(396003)(376002)(189003)(199004)(76176011)(186003)(478600001)(48376002)(7736002)(5009440100003)(50466002)(8936002)(8676002)(15650500001)(81156014)(81166006)(305945005)(476003)(2616005)(6116002)(956004)(446003)(3846002)(11346002)(16526019)(16586007)(575784001)(86362001)(6486002)(2906002)(486006)(97736004)(6512007)(14444005)(5024004)(316002)(53936002)(66066001)(44832011)(4326008)(47776003)(25786009)(68736007)(50226002)(51416003)(5660300001)(36756003)(105586002)(6666003)(52116002)(386003)(55236004)(6506007)(106356001)(26005)(110426005);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:DB3PR04MB0761;\n\tH:bf-netperf1.ap.freescale.net; \n\tFPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; ",
        "Received-SPF": "None (protection.outlook.com: nxp.com does not designate\n\tpermitted sender hosts)",
        "X-Microsoft-Antispam-Message-Info": "lWPdEoWbYZ5lY+/khlyQ78x0Oh5RKgRf/ZGnZos/nwiR1Gztk/uRpUUaF3R3ijqsvUBNneM1MjUwkSZ2/LnZVDCb3a3iUrgjV0aT0l/0lTOMru4DoV+j3pHoBvssozgwP/07AEds9+onAh0FGOyHOlgHppN5Rsr48/75/DSlxARlLeYwi21aGQq+ZwLoE+gVmlSH34MJX3fmXUKIXKgkduiEd03uEXFT3k2k1ryFwCrumCWgHNw6hDbR2u7W9rbE2rfSarOlqTtI6jRwlA386hShhjMcNSa9Bre7MN74LyBUMEpI8q2i+ScgYD5PzsBLg5ULv7l7rCpla8wxeJSvB/GHJajyc4qm0JpBkLPfmWU=",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-OriginatorOrg": "nxp.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "04 Jul 2018 09:06:49.2617\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "148e1f3c-9a45-4315-f061-08d5e18d7a8a",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DB3PR04MB0761",
        "Subject": "[dpdk-dev] [PATCH v2] security: remove experimental tag from\n\tsecurity APIs",
        "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\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>\n---\nv2: fix the release version\n\n doc/guides/rel_notes/release_18_08.rst       |  7 +++++++\n lib/librte_security/rte_security.c           | 18 +++++++++---------\n lib/librte_security/rte_security.h           | 28 +++++++++++++---------------\n lib/librte_security/rte_security_driver.h    |  2 --\n lib/librte_security/rte_security_version.map |  2 +-\n 5 files changed, 30 insertions(+), 27 deletions(-)",
    "diff": "diff --git a/doc/guides/rel_notes/release_18_08.rst b/doc/guides/rel_notes/release_18_08.rst\nindex bc01242..355e8e2 100644\n--- a/doc/guides/rel_notes/release_18_08.rst\n+++ b/doc/guides/rel_notes/release_18_08.rst\n@@ -60,6 +60,13 @@ API Changes\n    Also, make sure to start the actual text at the margin.\n    =========================================================\n \n+* security : No longer marked as experimental.\n+\n+  The security functions are no longer marked as experimental, and have\n+  become part of the normal DPDK API and ABI. Any future ABI changes will be\n+  announced at least one release before the ABI change is made. There are no\n+  ABI breaking changes planned.\n+\n \n ABI Changes\n -----------\ndiff --git a/lib/librte_security/rte_security.c b/lib/librte_security/rte_security.c\nindex f36a8a0..9f848a2 100644\n--- a/lib/librte_security/rte_security.c\n+++ b/lib/librte_security/rte_security.c\n@@ -10,7 +10,7 @@\n #include \"rte_security_driver.h\"\n \n struct rte_security_session *\n-__rte_experimental rte_security_session_create(struct rte_security_ctx *instance,\n+rte_security_session_create(struct rte_security_ctx *instance,\n \t\t\t    struct rte_security_session_conf *conf,\n \t\t\t    struct rte_mempool *mp)\n {\n@@ -33,7 +33,7 @@ __rte_experimental rte_security_session_create(struct rte_security_ctx *instance\n \treturn sess;\n }\n \n-int __rte_experimental\n+int\n rte_security_session_update(struct rte_security_ctx *instance,\n \t\t\t    struct rte_security_session *sess,\n \t\t\t    struct rte_security_session_conf *conf)\n@@ -42,14 +42,14 @@ rte_security_session_update(struct rte_security_ctx *instance,\n \treturn instance->ops->session_update(instance->device, sess, conf);\n }\n \n-unsigned int __rte_experimental\n+unsigned int\n rte_security_session_get_size(struct rte_security_ctx *instance)\n {\n \tRTE_FUNC_PTR_OR_ERR_RET(*instance->ops->session_get_size, 0);\n \treturn instance->ops->session_get_size(instance->device);\n }\n \n-int __rte_experimental\n+int\n rte_security_session_stats_get(struct rte_security_ctx *instance,\n \t\t\t       struct rte_security_session *sess,\n \t\t\t       struct rte_security_stats *stats)\n@@ -58,7 +58,7 @@ rte_security_session_stats_get(struct rte_security_ctx *instance,\n \treturn instance->ops->session_stats_get(instance->device, sess, stats);\n }\n \n-int __rte_experimental\n+int\n rte_security_session_destroy(struct rte_security_ctx *instance,\n \t\t\t     struct rte_security_session *sess)\n {\n@@ -77,7 +77,7 @@ rte_security_session_destroy(struct rte_security_ctx *instance,\n \treturn ret;\n }\n \n-int __rte_experimental\n+int\n rte_security_set_pkt_metadata(struct rte_security_ctx *instance,\n \t\t\t      struct rte_security_session *sess,\n \t\t\t      struct rte_mbuf *m, void *params)\n@@ -87,7 +87,7 @@ rte_security_set_pkt_metadata(struct rte_security_ctx *instance,\n \t\t\t\t\t       sess, m, params);\n }\n \n-void * __rte_experimental\n+void *\n rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md)\n {\n \tvoid *userdata = NULL;\n@@ -99,14 +99,14 @@ rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md)\n \treturn userdata;\n }\n \n-const struct rte_security_capability * __rte_experimental\n+const struct rte_security_capability *\n rte_security_capabilities_get(struct rte_security_ctx *instance)\n {\n \tRTE_FUNC_PTR_OR_ERR_RET(*instance->ops->capabilities_get, NULL);\n \treturn instance->ops->capabilities_get(instance->device);\n }\n \n-const struct rte_security_capability * __rte_experimental\n+const struct rte_security_capability *\n rte_security_capability_get(struct rte_security_ctx *instance,\n \t\t\t    struct rte_security_capability_idx *idx)\n {\ndiff --git a/lib/librte_security/rte_security.h b/lib/librte_security/rte_security.h\nindex b0d1b97..89dd073 100644\n--- a/lib/librte_security/rte_security.h\n+++ b/lib/librte_security/rte_security.h\n@@ -8,8 +8,6 @@\n \n /**\n  * @file rte_security.h\n- * @b EXPERIMENTAL: this API may change without prior notice\n- *\n  * RTE Security Common Definitions\n  *\n  */\n@@ -269,7 +267,7 @@ struct rte_security_session {\n  *  - On success, pointer to session\n  *  - On failure, NULL\n  */\n-struct rte_security_session * __rte_experimental\n+struct rte_security_session *\n rte_security_session_create(struct rte_security_ctx *instance,\n \t\t\t    struct rte_security_session_conf *conf,\n \t\t\t    struct rte_mempool *mp);\n@@ -284,7 +282,7 @@ rte_security_session_create(struct rte_security_ctx *instance,\n  *  - On success returns 0\n  *  - On failure return errno\n  */\n-int __rte_experimental\n+int\n rte_security_session_update(struct rte_security_ctx *instance,\n \t\t\t    struct rte_security_session *sess,\n \t\t\t    struct rte_security_session_conf *conf);\n@@ -298,7 +296,7 @@ rte_security_session_update(struct rte_security_ctx *instance,\n  *   - Size of the private data, if successful\n  *   - 0 if device is invalid or does not support the operation.\n  */\n-unsigned int __rte_experimental\n+unsigned int\n rte_security_session_get_size(struct rte_security_ctx *instance);\n \n /**\n@@ -313,7 +311,7 @@ rte_security_session_get_size(struct rte_security_ctx *instance);\n  *  - -EINVAL if session is NULL.\n  *  - -EBUSY if not all device private data has been freed.\n  */\n-int __rte_experimental\n+int\n rte_security_session_destroy(struct rte_security_ctx *instance,\n \t\t\t     struct rte_security_session *sess);\n \n@@ -330,7 +328,7 @@ rte_security_session_destroy(struct rte_security_ctx *instance,\n  *  - On success, zero.\n  *  - On failure, a negative value.\n  */\n-int __rte_experimental\n+int\n rte_security_set_pkt_metadata(struct rte_security_ctx *instance,\n \t\t\t      struct rte_security_session *sess,\n \t\t\t      struct rte_mbuf *mb, void *params);\n@@ -352,7 +350,7 @@ rte_security_set_pkt_metadata(struct rte_security_ctx *instance,\n  *  - On success, userdata\n  *  - On failure, NULL\n  */\n-void * __rte_experimental\n+void *\n rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md);\n \n /**\n@@ -361,7 +359,7 @@ rte_security_get_userdata(struct rte_security_ctx *instance, uint64_t md);\n  * @param\tsym_op\tcrypto operation\n  * @param\tsess\tsecurity session\n  */\n-static inline int __rte_experimental\n+static inline int\n __rte_security_attach_session(struct rte_crypto_sym_op *sym_op,\n \t\t\t      struct rte_security_session *sess)\n {\n@@ -370,13 +368,13 @@ __rte_security_attach_session(struct rte_crypto_sym_op *sym_op,\n \treturn 0;\n }\n \n-static inline void * __rte_experimental\n+static inline void *\n get_sec_session_private_data(const struct rte_security_session *sess)\n {\n \treturn sess->sess_private_data;\n }\n \n-static inline void __rte_experimental\n+static inline void\n set_sec_session_private_data(struct rte_security_session *sess,\n \t\t\t     void *private_data)\n {\n@@ -392,7 +390,7 @@ set_sec_session_private_data(struct rte_security_session *sess,\n  * @param\top\tcrypto operation\n  * @param\tsess\tsecurity session\n  */\n-static inline int __rte_experimental\n+static inline int\n rte_security_attach_session(struct rte_crypto_op *op,\n \t\t\t    struct rte_security_session *sess)\n {\n@@ -434,7 +432,7 @@ struct rte_security_stats {\n  *  - On success return 0\n  *  - On failure errno\n  */\n-int __rte_experimental\n+int\n rte_security_session_stats_get(struct rte_security_ctx *instance,\n \t\t\t       struct rte_security_session *sess,\n \t\t\t       struct rte_security_stats *stats);\n@@ -518,7 +516,7 @@ struct rte_security_capability_idx {\n  *   - Returns array of security capabilities.\n  *   - Return NULL if no capabilities available.\n  */\n-const struct rte_security_capability * __rte_experimental\n+const struct rte_security_capability *\n rte_security_capabilities_get(struct rte_security_ctx *instance);\n \n /**\n@@ -532,7 +530,7 @@ rte_security_capabilities_get(struct rte_security_ctx *instance);\n  *     index criteria.\n  *   - Return NULL if the capability not matched on security instance.\n  */\n-const struct rte_security_capability * __rte_experimental\n+const struct rte_security_capability *\n rte_security_capability_get(struct rte_security_ctx *instance,\n \t\t\t    struct rte_security_capability_idx *idx);\n \ndiff --git a/lib/librte_security/rte_security_driver.h b/lib/librte_security/rte_security_driver.h\nindex 42f42ff..b627b0c 100644\n--- a/lib/librte_security/rte_security_driver.h\n+++ b/lib/librte_security/rte_security_driver.h\n@@ -8,8 +8,6 @@\n \n /**\n  * @file rte_security_driver.h\n- * @b EXPERIMENTAL: this API may change without prior notice\n- *\n  * RTE Security Common Definitions\n  *\n  */\ndiff --git a/lib/librte_security/rte_security_version.map b/lib/librte_security/rte_security_version.map\nindex 5a1c8ae..6aaabe4 100644\n--- a/lib/librte_security/rte_security_version.map\n+++ b/lib/librte_security/rte_security_version.map\n@@ -1,4 +1,4 @@\n-EXPERIMENTAL {\n+DPDK_18.08 {\n \tglobal:\n \n \trte_security_attach_session;\n",
    "prefixes": [
        "v2"
    ]
}