get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 74779,
    "url": "http://patches.dpdk.org/api/patches/74779/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200724143906.7453-4-parav@mellanox.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": "<20200724143906.7453-4-parav@mellanox.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200724143906.7453-4-parav@mellanox.com",
    "date": "2020-07-24T14:38:59",
    "name": "[v10,03/10] drivers: relax dependency order",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "e7d99e9e3ab6591a2dca1f672f7e7ced83e3da86",
    "submitter": {
        "id": 1780,
        "url": "http://patches.dpdk.org/api/people/1780/?format=api",
        "name": "Parav Pandit",
        "email": "parav@mellanox.com"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patches.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200724143906.7453-4-parav@mellanox.com/mbox/",
    "series": [
        {
            "id": 11291,
            "url": "http://patches.dpdk.org/api/series/11291/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=11291",
            "date": "2020-07-24T14:38:56",
            "name": "Improve mlx5 PMD driver framework for multiple classes",
            "version": 10,
            "mbox": "http://patches.dpdk.org/series/11291/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/74779/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/74779/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 631A5A0527;\n\tFri, 24 Jul 2020 16:39:53 +0200 (CEST)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 681821C069;\n\tFri, 24 Jul 2020 16:39:35 +0200 (CEST)",
            "from EUR04-VI1-obe.outbound.protection.outlook.com\n (mail-eopbgr80082.outbound.protection.outlook.com [40.107.8.82])\n by dpdk.org (Postfix) with ESMTP id 71D421C043\n for <dev@dpdk.org>; Fri, 24 Jul 2020 16:39:32 +0200 (CEST)",
            "from AM0PR05MB4866.eurprd05.prod.outlook.com (2603:10a6:208:c0::32)\n by AM0PR05MB4962.eurprd05.prod.outlook.com (2603:10a6:208:c3::24)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3195.17; Fri, 24 Jul\n 2020 14:39:30 +0000",
            "from AM0PR05MB4866.eurprd05.prod.outlook.com\n ([fe80::eccf:72b3:bacb:f09d]) by AM0PR05MB4866.eurprd05.prod.outlook.com\n ([fe80::eccf:72b3:bacb:f09d%5]) with mapi id 15.20.3216.024; Fri, 24 Jul 2020\n 14:39:30 +0000",
            "from sw-mtx-036.mtx.labs.mlnx (208.176.44.194) by\n SA9PR10CA0025.namprd10.prod.outlook.com (2603:10b6:806:a7::30) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.3216.23 via Frontend Transport; Fri, 24 Jul 2020 14:39:28 +0000"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=Y2drkAGSIwUIkCfjmokY0RTY58yTncx6Oqj+a8qE1iAl0Kz8npDU1Sutlu3cNO4a4Iy6ARHnJoyBE0qcpSGYD2UXeTEDjKgRcqG1FhJE4TqS2ALWkrTzbgzlBRoFzlWWeXEIQmDg97ENFsgOMOmD49KjLV9lrKLMehPfsu9ixVvF3euQDXqb0iR0/3cAmDrLJ7LXDXwQGoV/ZWy34eJOxXqEcyfupuZPjegatRPas3J/qEwy/FK2FQAXno06n1XCd1PfqRfig6g3wbewzlss5S44aXnoMLDo3DZPAcmRhP5YK0nWWU/k9ct5DpjYEc7AxkM5NUT35SpBZ4ZPCDrqBw==",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=Mq0ZIjBYU1cgOBpxFbX+ZJpeIvvgVrIrS3RYYcFnVVI=;\n b=I7ENMJU9QxS0SXehPsYIPC2xAR/XniFGckzoq9zOapI5zyQTa17PaFEwMscjmp/gasY59evUmTMHbRFhXaM17jCbsBhqaTXqnrlMxxjw+S6vuZiPqYrqLCTxm7GTboMy8fSi7LkVFMEGkTw4LZcuHP5zRo5n33cG9jJRCk7NvAxf5GzVOOk3aRu9CwyuBBbVq0HrA01NrYM26WJqrop7jHtvtRl38XsBNKfXH28AYtq+W6EjLY/ZSb1t+8FNcL9U60xAsqxDxsPMk7NXlCwERTDcFiDD8o4DQKZYFdjQ228cgvH2zI1pljqmHl8BJCdpzgTZbIIrbmXQt5pO9feiYQ==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com;\n dkim=pass header.d=mellanox.com; arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com;\n s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=Mq0ZIjBYU1cgOBpxFbX+ZJpeIvvgVrIrS3RYYcFnVVI=;\n b=RJfA4c4ES6Ia6wIbJEfreQu7sggyNKwwqFBaZ3mZxiyf7s0wRW+HQuIGAGIiPTXtQyhxorSEY1+YdB2AnWVGFc+8vn4EZahxreQWOCa+bWM37F4Hw6QvHRnBODRi8I1iztmtUbDrwPyJ05C9twHgFNGcFDDbqgfkDtBTCM+N3L4=",
        "Authentication-Results": "dpdk.org; dkim=none (message not signed)\n header.d=none;dpdk.org; dmarc=none action=none header.from=mellanox.com;",
        "From": "Parav Pandit <parav@mellanox.com>",
        "To": "dev@dpdk.org, grive@u256.net, ferruh.yigit@intel.com, thomas@monjalon.net",
        "Cc": "rasland@mellanox.com, orika@mellanox.com, matan@mellanox.com,\n joyce.kong@arm.com, Bruce Richardson <bruce.richardson@intel.com>",
        "Date": "Fri, 24 Jul 2020 17:38:59 +0300",
        "Message-Id": "<20200724143906.7453-4-parav@mellanox.com>",
        "X-Mailer": [
            "git-send-email 2.26.2",
            "git-send-email 2.26.2"
        ],
        "In-Reply-To": "<20200724143906.7453-1-parav@mellanox.com>",
        "References": "<20200610171728.89-2-parav@mellanox.com>\n <20200724143906.7453-1-parav@mellanox.com>",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "SA9PR10CA0025.namprd10.prod.outlook.com\n (2603:10b6:806:a7::30) To AM0PR05MB4866.eurprd05.prod.outlook.com\n (2603:10a6:208:c0::32)",
        "MIME-Version": "1.0",
        "X-MS-Exchange-MessageSentRepresentingType": "1",
        "X-Originating-IP": "[208.176.44.194]",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-MS-Office365-Filtering-Correlation-Id": "5a8a54ef-1155-482c-cd9d-08d82fdf5fb6",
        "X-MS-TrafficTypeDiagnostic": "AM0PR05MB4962:",
        "X-LD-Processed": "a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtFwd,ExtAddr",
        "X-MS-Exchange-Transport-Forked": "True",
        "X-Microsoft-Antispam-PRVS": "\n <AM0PR05MB496263C1F28D3CF52121AD1BD1770@AM0PR05MB4962.eurprd05.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:2089;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n FL0d9usYjBkrusxUyDK8TNp+WMqp9x0NqPJzGvpHxjqqxzFGgy9s1B4VzKdT0JPpYK38dI1B/xn57kEAJDwGoVxluKB7BDptd0Phuy/7ymL+9Dldd232e2foZa0rP6tXo/T04tGakxf3K2hagFbnppOkWB3fwFZ3QTca4o6Y2+++YHt3mUbehGG26jkEFD0v9v459QqrXBO6t9eTVuXvSudOPbhVgEMv4xulalY/+CvUStSIkP3i/mRCD7LYzW+R/e7FH2in8hwfaMmnuzTbpQHgLjluxP+3/2TOJ4vFoesSx9hnscnANluF29e/MCeudJt97/H4kP+ioEysB+GGRw==",
        "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:AM0PR05MB4866.eurprd05.prod.outlook.com; PTR:; CAT:NONE;\n SFTY:;\n SFS:(4636009)(396003)(39860400002)(346002)(136003)(376002)(366004)(8936002)(36756003)(1076003)(4326008)(26005)(52116002)(2616005)(956004)(316002)(6506007)(478600001)(16526019)(66946007)(86362001)(6512007)(83380400001)(8676002)(66476007)(66556008)(186003)(6486002)(5660300002)(2906002)(6666004);\n DIR:OUT; SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData": "\n 5zwS7N5ij1E12/j/Lcosa+6qO4xuZyqUK/cOuVDfHK2/A0LUPEZ7K/PhefepORNBFmWu/H/NKdoPK2Fsi5R//hjBJ2JcCuVkOgAKUXskqmZ7e/sDIKo7JwVc6sKuamJERocy84f7hSWBsFULcUR0/2/EflYunssvmZAmHDB2gPW+vBLHnGRouNGz6v5u2pDYSldyJZjozve95/DG0KCKqdGi/PT+ou8H2bw05cSoeVsqPHQBiNuFxwAS2gU5TdI2gMiudyA+4tx3SUne3CKD0Gy9DI3WglVsx7luHN/zX1TNVjHE/WRFydBom4pK3BTusYnpjK250fAMHFv3UTYYOWiip+oYBunugb9BU5DuG8srcNUWlYjwy+/BGOPEsPltd8JcxP9mLKigiDzL/dJOQb8YWbw3cCotDqC9HNaiWPNI541N+wl6lP3VdVy23ZsLT82FcRtcQNir0lGbzPEEWhFcT0k8G/PQcKVFCj70EEEH3gJabseBzoPj4vVPkv4C",
        "X-OriginatorOrg": "Mellanox.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 5a8a54ef-1155-482c-cd9d-08d82fdf5fb6",
        "X-MS-Exchange-CrossTenant-AuthSource": "AM0PR05MB4866.eurprd05.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "24 Jul 2020 14:39:30.5382 (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "a652971c-7d2e-4d9b-a6a4-d149256f461b",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n PZkhY36ZSE4JZFO4F9mtlIYEVK1OfjWmsIE2jw/bdeYaOK3tSl8ukcqL098HGIWEBBOBIwmQRm7xD71rTJKCPA==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AM0PR05MB4962",
        "Subject": "[dpdk-dev] [PATCH v10 03/10] drivers: relax dependency order",
        "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": "From: Thomas Monjalon <thomas@monjalon.net>\n\nDrivers dependencies are evaluated in the order defined per their parent\ndirectory (also called class). This strict ordering prevents from\nhaving pairs of drivers from two classes with different dependency\nordering. For example, if the mlx5 common code depends on the pci bus\ndriver, while the dpaax common code is itself a dependency of the dpaa\nbus driver.  Having a strict ordering between directories bus and common\nis too restrictive, as processing either common drivers or bus drivers\nfirst leads us to missing dependencies in this scenario.\n\nThis patch makes it possible to have a more fine-grain directory list,\nadding a specific driver sub-directory in the top-level drivers\nsubdirectory list. In this case, the isolated driver must also be removed\nfrom its class list, and the per-class variables must be duplicated in\nthe isolated driver, because the call \"subdir(class)\" is skipped in the\nisolated driver case.\n\nReview-by: Bruce Richardson <bruce.richardson@intel.com>\nAcked-by: Bruce Richardson <bruce.richardson@intel.com>\nSigned-off-by: Thomas Monjalon <thomas@monjalon.net>\n---\nChangelog:\nv8->v9:\n - Updated commit message\n - Fixed typo\n---\n drivers/meson.build | 28 +++++++++++++++++++++-------\n 1 file changed, 21 insertions(+), 7 deletions(-)",
    "diff": "diff --git a/drivers/meson.build b/drivers/meson.build\nindex e2aeba931..038957460 100644\n--- a/drivers/meson.build\n+++ b/drivers/meson.build\n@@ -1,8 +1,8 @@\n # SPDX-License-Identifier: BSD-3-Clause\n # Copyright(c) 2017-2019 Intel Corporation\n \n-# Defines the order in which the drivers are buit.\n-dpdk_driver_classes = [\n+# Defines the order of dependencies evaluation\n+subdirs = [\n \t'common',\n \t'bus',\n \t'mempool', # depends on common and bus.\n@@ -27,7 +27,7 @@ if cc.has_argument('-Wno-format-truncation')\n \tdefault_cflags += '-Wno-format-truncation'\n endif\n \n-foreach class:dpdk_driver_classes\n+foreach subpath:subdirs\n \tdrivers = []\n \tstd_deps = []\n \tconfig_flag_fmt = '' # format string used to set the value in dpdk_conf\n@@ -35,8 +35,22 @@ foreach class:dpdk_driver_classes\n \t                     # the library, the dependency and to find the\n \t                     # version file for linking\n \n-\tsubdir(class)\n-\tclass_drivers = []\n+\t# subpath can be either \"class\" or \"class/driver\"\n+\tif subpath.contains('/')\n+\t\tdriver_path = subpath.split('/')\n+\t\tclass = driver_path[0]\n+\t\tdrivers += driver_path[1]\n+\telse\n+\t\tclass = subpath\n+\t\tsubdir(class)\n+\tendif\n+\n+\t# save class name on first occurrence\n+\tif not dpdk_driver_classes.contains(class)\n+\t\tdpdk_driver_classes += class\n+\tendif\n+\t# get already enabled drivers of the same class\n+\tenabled_drivers = get_variable(class + '_drivers', [])\n \n \tforeach drv:drivers\n \t\tdrv_path = join_paths(class, drv)\n@@ -96,7 +110,7 @@ foreach class:dpdk_driver_classes\n \t\t\t\t\t\t'_disable_reason', reason)\n \t\t\tendif\n \t\telse\n-\t\t\tclass_drivers += name\n+\t\t\tenabled_drivers += name\n \n \t\t\tif fmt_name == ''\n \t\t\t\tfmt_name = name\n@@ -203,5 +217,5 @@ foreach class:dpdk_driver_classes\n \t\tendif # build\n \tendforeach\n \n-\tset_variable(class + '_drivers', class_drivers)\n+\tset_variable(class + '_drivers', enabled_drivers)\n endforeach\n",
    "prefixes": [
        "v10",
        "03/10"
    ]
}