get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 126029,
    "url": "http://patches.dpdk.org/api/patches/126029/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20230413132704.17586-3-nipun.gupta@amd.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": "<20230413132704.17586-3-nipun.gupta@amd.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230413132704.17586-3-nipun.gupta@amd.com",
    "date": "2023-04-13T13:27:00",
    "name": "[v2,2/6] bus/cdx: add dma map and unmap support",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "f656931af6176a972690ecf87e911b57d2f636de",
    "submitter": {
        "id": 2928,
        "url": "http://patches.dpdk.org/api/people/2928/?format=api",
        "name": "Gupta, Nipun",
        "email": "nipun.gupta@amd.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20230413132704.17586-3-nipun.gupta@amd.com/mbox/",
    "series": [
        {
            "id": 27696,
            "url": "http://patches.dpdk.org/api/series/27696/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=27696",
            "date": "2023-04-13T13:27:01",
            "name": "add support for CDX bus",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/27696/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/126029/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/126029/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 2D62942933;\n\tThu, 13 Apr 2023 15:27:59 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id AF10142B71;\n\tThu, 13 Apr 2023 15:27:52 +0200 (CEST)",
            "from NAM10-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam10on2051.outbound.protection.outlook.com [40.107.93.51])\n by mails.dpdk.org (Postfix) with ESMTP id ECEB9410F2\n for <dev@dpdk.org>; Thu, 13 Apr 2023 15:27:51 +0200 (CEST)",
            "from DM6PR18CA0015.namprd18.prod.outlook.com (2603:10b6:5:15b::28)\n by CH0PR12MB5345.namprd12.prod.outlook.com (2603:10b6:610:d4::11) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.30; Thu, 13 Apr\n 2023 13:27:49 +0000",
            "from DM6NAM11FT045.eop-nam11.prod.protection.outlook.com\n (2603:10b6:5:15b:cafe::2c) by DM6PR18CA0015.outlook.office365.com\n (2603:10b6:5:15b::28) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.32 via Frontend\n Transport; Thu, 13 Apr 2023 13:27:49 +0000",
            "from SATLEXMB04.amd.com (165.204.84.17) by\n DM6NAM11FT045.mail.protection.outlook.com (10.13.173.123) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.20.6298.31 via Frontend Transport; Thu, 13 Apr 2023 13:27:49 +0000",
            "from SATLEXMB07.amd.com (10.181.41.45) by SATLEXMB04.amd.com\n (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 13 Apr\n 2023 08:27:46 -0500",
            "from SATLEXMB03.amd.com (10.181.40.144) by SATLEXMB07.amd.com\n (10.181.41.45) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Thu, 13 Apr\n 2023 06:27:41 -0700",
            "from xhdipdslab41.xilinx.com (10.180.168.240) by SATLEXMB03.amd.com\n (10.181.40.144) with Microsoft SMTP Server id 15.1.2375.34 via\n Frontend Transport; Thu, 13 Apr 2023 08:27:39 -0500"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=LbVSSR7kAKBqi4WW+cJ2tb04EbsrtEBPBnlgRt/0Nc0PjJ/UIdVEtjgi+88lCOPv8vDyEjglZ5R8jpd+hNlwILJbh81e/zv6wC2hm0F924rzySEZmrBIBq1Z1f+TDO3LtccG+Qj7oqGJJWU3zzi1fOUIDrCygyohvp1HkqItIZeBcyFz6AfKpbLAoghqNUYoZtis1y0ZsbpVLeq01z0n2sFUt//2Tp0mGiH8pacNMo5feXBsZZHvt6cWbkYuzjFQ1uBnarKZoG1IWI6yloHz6t93w1wX0T0mXMBeYNM+OPODUHGDHcWx7LxNWXvnLgU3K1yhPJdnWGm6ZKXKYSvPJg==",
        "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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=6uc8hYhxmsRh3RlIaX0z7pSR1DfICwTOu7OvlztOPzw=;\n b=eyzI9FV/ZjyQbXqhqlJxhkAA6frIhqoSYp2jp8YR6bu4uEADuu3VCcg+G23SWmKmwmr8kzhV3jVL8/c4Ouvl3YvX/GFNZnLkdnvj7+twuzVYvXydBJ4SeZVQmCDXr/nrhLZg4M91fek+ubwgB82WjIm+JiU8+94HU6isirtBCQ8DvADSuZ43p+ReEBB5x6L6O7gDw74fXcOJVhfLPH+HuT6mNhVWXpa0AVixaM4monI5IcYLjfDGO/w1qrqU5Nt+HdYYnDurgTzlI+yxN+p2LaiSC8l2MuXvQiq97SRjvMtobfwalatRtS/WQFoefcZH46HsJN2XzSFB1vp06ZOpMg==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 165.204.84.17) smtp.rcpttodomain=dpdk.org smtp.mailfrom=amd.com; dmarc=pass\n (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com;\n dkim=none (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=6uc8hYhxmsRh3RlIaX0z7pSR1DfICwTOu7OvlztOPzw=;\n b=R724nI4URdziGzns0cB0CXZ+htgerd47t6MRfiCt8/vLfXLqEcwodeugY3HsZAuRtZLyrpu1P97lw5t0ptyWVB5104/RAbllqnsug8G0IpTPTZuRPHhcDAQP7s/sfzMOgeaEKVhX3TO1lEgSSKxNAng9e2sMm8Q1EUECixIbWh4=",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 165.204.84.17)\n smtp.mailfrom=amd.com; dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=amd.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of amd.com designates\n 165.204.84.17 as permitted sender) receiver=protection.outlook.com;\n client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C",
        "From": "Nipun Gupta <nipun.gupta@amd.com>",
        "To": "<dev@dpdk.org>, <thomas@monjalon.net>, <david.marchand@redhat.com>",
        "CC": "<ferruh.yigit@amd.com>, <harpreet.anand@amd.com>,\n <nikhil.agarwal@amd.com>, Nipun Gupta <nipun.gupta@amd.com>",
        "Subject": "[PATCH v2 2/6] bus/cdx: add dma map and unmap support",
        "Date": "Thu, 13 Apr 2023 18:57:00 +0530",
        "Message-ID": "<20230413132704.17586-3-nipun.gupta@amd.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20230413132704.17586-1-nipun.gupta@amd.com>",
        "References": "<20230124140746.594066-1-nipun.gupta@amd.com>\n <20230413132704.17586-1-nipun.gupta@amd.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "DM6NAM11FT045:EE_|CH0PR12MB5345:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "c9f2cb15-a3fe-451e-87ef-08db3c22e07a",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n vHr5Ki9bhTvsUs8eUGnCV6tss0GFAc+0YXpf1hj/w6jpUJmNrqKBRj2+Io6Wa95q6RBACBuWFOyy6Ax/8v6rTqzGVPVn5i/W7LtCafcqyi1z8HxcO9Bh0oHULUDQXQPT3wky3zl+s8rrJEDwDLEEnp3MbpccAzfA1moYxChxmTfscqFdoYnUduy1Ak6eXmAvOwbMVDoKeNFjB1JzbijlQ5ERy48NS2FP8Bo7NadWnx8x4wMN7RY67BRb4BvDdRYPD8aZ5TuCcNdpsLHDTsTglHsgkBovoIw/qGOBeNPNppqT9RzUnQP17IoxkNrz+GURUnK8nsguGW87H+1CZjXu4svjl7WjtymoN/NvpU2vxfeD9/E0lXzC2TmiDRmtKfiTd7KNBzZE3QBywN3gC8Zva2eZtXm92AUISYAyYn540f2ws7qE574bUnrWAPznnkB19HhKqqLOJTnVBQnBoBELnFnQoo4CDObjXMkl2mJSIlbHjM1PoeZaGWWSOuoxCWrT5yIyPXxrWS79ASeoJjkpa8j1EoH7lT9WnImelxVsVvW7+M1qE3fNsxmGOdeiyz8/pN8BtOxdkAQeOU4slB9D8MOlzTt/gjt1MBog1Ix/IXEQ8MtMNzAgSeM/N0Pdz5pGnABIMrzzs9TInMUnQlRdbVzRv+Ep/m/+os/xH4rSUlXTUriGQk7sIhFXeox2kcbjlEy0b9goLWrqrKYQQDCtyB2cQ9q3cnSvMg3IXxbK4vs=",
        "X-Forefront-Antispam-Report": "CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:;\n IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE;\n SFS:(13230028)(4636009)(376002)(39860400002)(346002)(136003)(396003)(451199021)(36840700001)(40470700004)(46966006)(8676002)(36860700001)(47076005)(336012)(426003)(2616005)(478600001)(6666004)(40460700003)(26005)(54906003)(110136005)(1076003)(186003)(2906002)(44832011)(5660300002)(36756003)(81166007)(316002)(4326008)(356005)(82310400005)(70586007)(70206006)(41300700001)(82740400003)(8936002)(40480700001)(86362001)(36900700001);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "amd.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "13 Apr 2023 13:27:49.4957 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n c9f2cb15-a3fe-451e-87ef-08db3c22e07a",
        "X-MS-Exchange-CrossTenant-Id": "3dd8961f-e488-4e60-8e11-a82d994e183d",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17];\n Helo=[SATLEXMB04.amd.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n DM6NAM11FT045.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CH0PR12MB5345",
        "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"
    },
    "content": "CDX bus can use VFIO interface for mapping and unmapping\nof DMA addresses in the IOMMU. This change adds the callback\nsupport for map and unmap APIs as well as fetching the IOMMU\nclass.\n\nSigned-off-by: Nipun Gupta <nipun.gupta@amd.com>\n---\n drivers/bus/cdx/cdx.c | 40 ++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 40 insertions(+)",
    "diff": "diff --git a/drivers/bus/cdx/cdx.c b/drivers/bus/cdx/cdx.c\nindex bb23b32312..b1d8f8382f 100644\n--- a/drivers/bus/cdx/cdx.c\n+++ b/drivers/bus/cdx/cdx.c\n@@ -506,12 +506,52 @@ cdx_find_device(const struct rte_device *start, rte_dev_cmp_t cmp,\n \treturn NULL;\n }\n \n+static int\n+cdx_dma_map(struct rte_device *dev, void *addr, uint64_t iova, size_t len)\n+{\n+\tstruct rte_cdx_device *cdx_dev = RTE_DEV_TO_CDX_DEV(dev);\n+\n+\tif (!cdx_dev) {\n+\t\trte_errno = EINVAL;\n+\t\treturn -1;\n+\t}\n+\n+\treturn rte_vfio_container_dma_map(RTE_VFIO_DEFAULT_CONTAINER_FD,\n+\t\t\t\t\t  (uintptr_t)addr, iova, len);\n+}\n+\n+static int\n+cdx_dma_unmap(struct rte_device *dev, void *addr, uint64_t iova, size_t len)\n+{\n+\tstruct rte_cdx_device *cdx_dev = RTE_DEV_TO_CDX_DEV(dev);\n+\n+\tif (!cdx_dev) {\n+\t\trte_errno = EINVAL;\n+\t\treturn -1;\n+\t}\n+\n+\treturn rte_vfio_container_dma_unmap(RTE_VFIO_DEFAULT_CONTAINER_FD,\n+\t\t\t\t\t    (uintptr_t)addr, iova, len);\n+}\n+\n+static enum rte_iova_mode\n+cdx_get_iommu_class(void)\n+{\n+\tif (TAILQ_EMPTY(&rte_cdx_bus.device_list))\n+\t\treturn RTE_IOVA_DC;\n+\n+\treturn RTE_IOVA_VA;\n+}\n+\n struct rte_cdx_bus rte_cdx_bus = {\n \t.bus = {\n \t\t.scan = cdx_scan,\n \t\t.probe = cdx_probe,\n \t\t.find_device = cdx_find_device,\n \t\t.parse = cdx_parse,\n+\t\t.dma_map = cdx_dma_map,\n+\t\t.dma_unmap = cdx_dma_unmap,\n+\t\t.get_iommu_class = cdx_get_iommu_class,\n \t},\n \t.device_list = TAILQ_HEAD_INITIALIZER(rte_cdx_bus.device_list),\n \t.driver_list = TAILQ_HEAD_INITIALIZER(rte_cdx_bus.driver_list),\n",
    "prefixes": [
        "v2",
        "2/6"
    ]
}