get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 129092,
    "url": "https://patches.dpdk.org/api/patches/129092/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20230629025339.49404-1-suweifeng1@huawei.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": "<20230629025339.49404-1-suweifeng1@huawei.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230629025339.49404-1-suweifeng1@huawei.com",
    "date": "2023-06-29T02:53:39",
    "name": "[v2] pci: add O_CLOEXEC when open uio device",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "aade74f73ba2f3603fe57505b41b2b141f1ce7cd",
    "submitter": {
        "id": 3077,
        "url": "https://patches.dpdk.org/api/people/3077/?format=api",
        "name": "Weifeng Su",
        "email": "suweifeng1@huawei.com"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20230629025339.49404-1-suweifeng1@huawei.com/mbox/",
    "series": [
        {
            "id": 28703,
            "url": "https://patches.dpdk.org/api/series/28703/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=28703",
            "date": "2023-06-29T02:53:39",
            "name": "[v2] pci: add O_CLOEXEC when open uio device",
            "version": 2,
            "mbox": "https://patches.dpdk.org/series/28703/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/129092/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/129092/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 2C3AD42D87;\n\tThu, 29 Jun 2023 04:53:52 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id F17D740EDB;\n\tThu, 29 Jun 2023 04:53:51 +0200 (CEST)",
            "from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188])\n by mails.dpdk.org (Postfix) with ESMTP id 27263406B7;\n Thu, 29 Jun 2023 04:53:49 +0200 (CEST)",
            "from canpemm500005.china.huawei.com (unknown [172.30.72.57])\n by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4Qs2xm5py9zMp4V;\n Thu, 29 Jun 2023 10:50:36 +0800 (CST)",
            "from Y00251687ALE274.china.huawei.com (10.174.178.198) by\n canpemm500005.china.huawei.com (7.192.104.229) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id\n 15.1.2507.27; Thu, 29 Jun 2023 10:53:47 +0800"
        ],
        "From": "Weifeng Su <suweifeng1@huawei.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<stable@dpdk.org>, <linfeilong@huawei.com>, Weifeng Su\n <suweifeng1@huawei.com>",
        "Subject": "[PATCH v2] pci: add O_CLOEXEC when open uio device",
        "Date": "Thu, 29 Jun 2023 10:53:39 +0800",
        "Message-ID": "<20230629025339.49404-1-suweifeng1@huawei.com>",
        "X-Mailer": "git-send-email 2.18.0.windows.1",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[10.174.178.198]",
        "X-ClientProxiedBy": "dggems703-chm.china.huawei.com (10.3.19.180) To\n canpemm500005.china.huawei.com (7.192.104.229)",
        "X-CFilter-Loop": "Reflected",
        "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": "In this scenario, the DPDK process invokes a script which\ninherits an open file descriptor (FD) for a UIO device.\nAfter the script execution is complete, the UIO device's\nclose operation is called. However, in a new kernel version\n(865a11f987ab5f03:uio/uio_pci_generic: Disable bus-mastering on release),\nthis close operation causes the PCI bus master bit to be cleared,\nrendering the device unusable and leading to unexpected behavior.\n\nThis modification was made to prevent the UIO device's FD\nfrom being inherited by the child process.\n\nSigned-off-by: Weifeng Su <suweifeng1@huawei.com>\n---\n drivers/bus/pci/linux/pci_uio.c | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)",
    "diff": "diff --git a/drivers/bus/pci/linux/pci_uio.c b/drivers/bus/pci/linux/pci_uio.c\nindex d52125e49b..7ac142c36e 100644\n--- a/drivers/bus/pci/linux/pci_uio.c\n+++ b/drivers/bus/pci/linux/pci_uio.c\n@@ -246,7 +246,7 @@ pci_uio_alloc_resource(struct rte_pci_device *dev,\n \tsnprintf(devname, sizeof(devname), \"/dev/uio%u\", uio_num);\n \n \t/* save fd if in primary process */\n-\tfd = open(devname, O_RDWR);\n+\tfd = open(devname, O_RDWR | O_CLOEXEC);\n \tif (fd < 0) {\n \t\tRTE_LOG(ERR, EAL, \"Cannot open %s: %s\\n\",\n \t\t\tdevname, strerror(errno));\n",
    "prefixes": [
        "v2"
    ]
}