Show a cover letter.

GET /api/covers/105725/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 105725,
    "url": "https://patches.dpdk.org/api/covers/105725/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/cover/20220111173929.28746-1-eagostini@nvidia.com/",
    "project": {
        "id": 1,
        "url": "https://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": "<20220111173929.28746-1-eagostini@nvidia.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20220111173929.28746-1-eagostini@nvidia.com",
    "date": "2022-01-11T17:39:28",
    "name": "[v1,0/1] gpu/cuda: expose GPU memory with GDRCopy",
    "submitter": {
        "id": 1571,
        "url": "https://patches.dpdk.org/api/people/1571/?format=api",
        "name": "Elena Agostini",
        "email": "eagostini@nvidia.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/cover/20220111173929.28746-1-eagostini@nvidia.com/mbox/",
    "series": [
        {
            "id": 21118,
            "url": "https://patches.dpdk.org/api/series/21118/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=21118",
            "date": "2022-01-11T17:39:28",
            "name": "gpu/cuda: expose GPU memory with GDRCopy",
            "version": 1,
            "mbox": "https://patches.dpdk.org/series/21118/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/covers/105725/comments/",
    "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 17528A034D;\n\tTue, 11 Jan 2022 10:29:47 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 903D74121E;\n\tTue, 11 Jan 2022 10:29:46 +0100 (CET)",
            "from NAM12-DM6-obe.outbound.protection.outlook.com\n (mail-dm6nam12on2047.outbound.protection.outlook.com [40.107.243.47])\n by mails.dpdk.org (Postfix) with ESMTP id A8149411AE\n for <dev@dpdk.org>; Tue, 11 Jan 2022 10:29:44 +0100 (CET)",
            "from BN9PR03CA0771.namprd03.prod.outlook.com (2603:10b6:408:13a::26)\n by CY4PR12MB1848.namprd12.prod.outlook.com (2603:10b6:903:11d::23)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.11; Tue, 11 Jan\n 2022 09:29:42 +0000",
            "from BN8NAM11FT003.eop-nam11.prod.protection.outlook.com\n (2603:10b6:408:13a:cafe::70) by BN9PR03CA0771.outlook.office365.com\n (2603:10b6:408:13a::26) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.9 via Frontend\n Transport; Tue, 11 Jan 2022 09:29:42 +0000",
            "from mail.nvidia.com (12.22.5.236) by\n BN8NAM11FT003.mail.protection.outlook.com (10.13.177.90) with Microsoft SMTP\n Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id\n 15.20.4867.7 via Frontend Transport; Tue, 11 Jan 2022 09:29:42 +0000",
            "from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL109.nvidia.com\n (10.27.9.19) with Microsoft SMTP Server (TLS) id 15.0.1497.18;\n Tue, 11 Jan 2022 09:29:41 +0000",
            "from nvidia.com (10.127.8.10) by rnnvmail201.nvidia.com\n (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.986.9; Tue, 11 Jan 2022\n 01:29:40 -0800"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=Wj8eGQnywObFpal3Imh/JUhMIzI7RXTuVtGOUKRK9IxBueuWXwg/setMgVPSTBptyTLxrwUEufTsfz1R4OgXB6e4W5fJ5XPn8OVRs/YsNzpSfsFA5kpcYbDJ44bY8NoHq854McE/j88AcoihJ3PLDuy6x4kpdFvfuVEL9BEFYv8iRBzPAmOAg1IYjJBPfD85uVJTSrh8HVkkc23Yaf+e4KOCkeDa2BX/lABbKACtNfnH/EJKgwduonfewYsQlrFTVsVCRzULTcXARntY5iuRkaNNGUw7tjlCp+ZGWaqgndW9osDA2uu71WJBDSxNBjLifPFV1asm4mrvrQ2fnp2SnA==",
        "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=gYF/rCQEO+GThJxDZZmv4nM5KjeboTPip09VEz9JeuA=;\n b=DccRU50uuis4wR1F0ZAezNvGF5SynaG1kUGgxUcyVozpB9cEiFc+AFauPuDEhgSvaWsSb73TYTCBECtmDaksgIVt4kmkN/6MXo5vikrNPE46FawngW8gfUsY7IKV6kd+MIJFlEO9X8EzGOdkU39N/rS5oYfCD1a4RKKOYL2TR8Kdkpi1UTY6+N8lTBfGFZOeAFVL89xK6MFD5nwdkJbQ2oDpeUu1OQd0QUCZXsOdM7tFYb+VsQGdJ5mHEDQ1h4EMt242onkO8yg5wzNAQ4yDghoeoqnYLdGnqEgsxPM7I6t7SIqEFoYeuG8R9RG4e13FFpzafMHmYNQoDRcTvEtOZA==",
        "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 12.22.5.236) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass\n (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none\n (message not signed); arc=none",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=gYF/rCQEO+GThJxDZZmv4nM5KjeboTPip09VEz9JeuA=;\n b=bO61fbX7ju80zU5u/U8tKq/hrDbkTKo88ZCfItT7dmWxLHXu8ERGn+wjmC3gnEPrLQ+LK376UtxahDSquqKjsJBPxGLZDJ3rcSGwLKZfU9DO3V/JNVJoSGhrn7r5CTlokpsNqGj8WItyAoarHxJN3FZ4CdDpYEuQRxu/0EdxN6EulHvnZ5QcnX4jDv8hSq8xtj4rjG0tapOpU7sphk2S9389ypcYjhnDzR8U28fu/OYyAVWSxWQngpJSDU1DeIHIF3X2YEmh77rf4WxqMvHtHEnvE4x8CGxt9aN6nLn4cXm0/wx578gTWRNTmACi8sdlcgLfhYO4gjoJk5su72r1dQ==",
        "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 12.22.5.236)\n smtp.mailfrom=nvidia.com; dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=nvidia.com;",
        "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 12.22.5.236 as permitted sender) receiver=protection.outlook.com;\n client-ip=12.22.5.236; helo=mail.nvidia.com;",
        "From": "<eagostini@nvidia.com>",
        "To": "<dev@dpdk.org>",
        "CC": "Elena Agostini <eagostini@nvidia.com>",
        "Subject": "[PATCH v1 0/1] gpu/cuda: expose GPU memory with GDRCopy",
        "Date": "Tue, 11 Jan 2022 17:39:28 +0000",
        "Message-ID": "<20220111173929.28746-1-eagostini@nvidia.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[10.127.8.10]",
        "X-ClientProxiedBy": "HQMAIL111.nvidia.com (172.20.187.18) To\n rnnvmail201.nvidia.com (10.129.68.8)",
        "X-EOPAttributedMessage": "0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "d09b6853-b7b0-41fc-b734-08d9d4e4e5e4",
        "X-MS-TrafficTypeDiagnostic": "CY4PR12MB1848:EE_",
        "X-Microsoft-Antispam-PRVS": "\n <CY4PR12MB1848FFF81E52469D7AA7C5A9CD519@CY4PR12MB1848.namprd12.prod.outlook.com>",
        "X-MS-Oob-TLC-OOBClassifiers": "OLM:3044;",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "BCL:0;",
        "X-Microsoft-Antispam-Message-Info": "\n tjDm9GFxX1SenRh2TEZlMz4Eh/IPTd/KTEOlmQqKZkKS/VXc3VAY/pFuZQyFAZpFvzJb9oQ4fEqNLawizPFN+1OKBiBBUsZC2N6P1CJSVFiJF2hOOFun93aqEAYW7cSVlub04IXpcGOHDWQ51/jlqmTXUiX011H5MnOC4ulJhGketxVhDPBtE2MBHnqyxwQkbzuYcsJH3kx62wL2I9ucJKYN0tcXTK16BExr9E8xR1V7YcaHpM988G5gdI20uhD36cdbJA+Jut0hVXgmHOoSVmRDoNa0PB8igt0xs/U03DXYbP2Srx5oDtCht3Jy82i7mKjZTFdl9pmJFZlmv9dimPH3ehA/K15mrIHu1wAKh9JQGM0ti24mHvOuTnATDPyBkngFULs+SO/2H4lkXBgw/GOSyybNsakY9z43z2870dfoinxBsNU5I7pnV4+Tvc38jvSDKdyfolii9rKGh7SBskE+1St4Otl7odFwOOCc1/E15KJW0GSpv5U+bdfyEI1uHkgiCINzGVCJ2lSdybhqO85bR1hwvrE4OuPIEnKHS8qnt+QNN3/ecusshA0FlgH0W6EJsoqnrqO7AESaE6wPOjyLNldEiywm/0e/YKOTBqha6bvKxhxcEGR+e5l2XgTHTpZQdCDmgfd/DdwHcmEfg7UV98FoUnKd9xEV8uLZnrTwqbZEQxqyuYVlnacFkz5bGlnqDgddxxJeg1xd6fqfPvO2aU44uO0b6g5duFtXnirEmDzZfs94mhFYSEOfvHPhpJVobyNV8kKTXPp3HFGoceD1ivWOcsCwrjlZ3aj2atuA1WyP88pcx1bOa55YdvJfGukP/oeAhWS/ubfOpVioZP7fD3/+O4IF0TGvJW4XnKzSAiREFcD7ipYaErMbBG33",
        "X-Forefront-Antispam-Report": "CIP:12.22.5.236; CTRY:US; LANG:en; SCL:1; SRV:;\n IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE;\n SFS:(4636009)(36840700001)(46966006)(40470700002)(6666004)(316002)(83380400001)(1076003)(356005)(81166007)(2876002)(966005)(70206006)(2906002)(70586007)(5660300002)(186003)(8936002)(6916009)(40460700001)(7696005)(86362001)(4326008)(47076005)(55016003)(8676002)(107886003)(6286002)(426003)(36860700001)(36756003)(26005)(16526019)(336012)(82310400004)(508600001)(2616005)(36900700001);\n DIR:OUT; SFP:1101;",
        "X-OriginatorOrg": "Nvidia.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "11 Jan 2022 09:29:42.2364 (UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n d09b6853-b7b0-41fc-b734-08d9d4e4e5e4",
        "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a",
        "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[12.22.5.236];\n Helo=[mail.nvidia.com]",
        "X-MS-Exchange-CrossTenant-AuthSource": "\n BN8NAM11FT003.eop-nam11.prod.protection.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CY4PR12MB1848",
        "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": "From: Elena Agostini <eagostini@nvidia.com>\n\nGPU CUDA implementation of the new gpudev functions\nto expose GPU memory to the CPU.\n\nToday GDRCopy library is required to pin and DMA map\nthe GPU memory through the BAR1 of the GPU and expose\nit to the CPU.\n\nGoal here is to hide technical details GDRCopy library\nand expose the functionality through the generic\ngpudev layer.\n\nGDRCopy can be found here: https://github.com/NVIDIA/gdrcopy\n\nTo build GPU CUDA driver with GDRCopy, you need to build\nDPDK indicating the gdrapi.h header file with\n-Dc_args=\"-I/path/to/gdrapi/\".\n\nTo execute you need to indicate the path to libgdrapi.so\nlibrary with the environment variable\nGDRCOPY_PATH_L=/path/to/gdrcopy/lib/\n\nIf GDRCopy is not built with GPU CUDA driver, the GPU expose\nfunctionality will not be supported by the driver.\n\nThis is an indipendent feature.\nAll the other GPU CUDA driver capabilities are not affected\nif GDRCopy is not built.\n\nSigned-off-by: Elena Agostini <eagostini@nvidia.com>\n\n---\nDependency on https://patches.dpdk.org/project/dpdk/patch/20220108000457.31104-1-eagostini@nvidia.com/\n\nElena Agostini (1):\n  gpu/cuda: expose GPU memory with GDRCopy\n\n drivers/gpu/cuda/cuda.c      | 101 +++++++++++++++++++++++++\n drivers/gpu/cuda/gdrcopy.c   | 139 +++++++++++++++++++++++++++++++++++\n drivers/gpu/cuda/gdrcopy.h   |  29 ++++++++\n drivers/gpu/cuda/meson.build |   6 +-\n 4 files changed, 274 insertions(+), 1 deletion(-)\n create mode 100644 drivers/gpu/cuda/gdrcopy.c\n create mode 100644 drivers/gpu/cuda/gdrcopy.h"
}