get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2233408,
    "url": "http://patchwork.ozlabs.org/api/1.1/patches/2233408/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/ltp/patch/20260506113655.10797-4-mmenashe@redhat.com/",
    "project": {
        "id": 59,
        "url": "http://patchwork.ozlabs.org/api/1.1/projects/59/?format=api",
        "name": "Linux Test Project development",
        "link_name": "ltp",
        "list_id": "ltp.lists.linux.it",
        "list_email": "ltp@lists.linux.it",
        "web_url": "",
        "scm_url": "",
        "webscm_url": ""
    },
    "msgid": "<20260506113655.10797-4-mmenashe@redhat.com>",
    "date": "2026-05-06T11:36:54",
    "name": "[3/4] futex_wake05: Add EFAULT error coverage test",
    "commit_ref": null,
    "pull_url": null,
    "state": "changes-requested",
    "archived": false,
    "hash": "5cd5393f020b12a37d57ae0df1bba47dd33f98a6",
    "submitter": {
        "id": 93123,
        "url": "http://patchwork.ozlabs.org/api/1.1/people/93123/?format=api",
        "name": "Michael Menasherov",
        "email": "mmenashe@redhat.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/ltp/patch/20260506113655.10797-4-mmenashe@redhat.com/mbox/",
    "series": [
        {
            "id": 502973,
            "url": "http://patchwork.ozlabs.org/api/1.1/series/502973/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/ltp/list/?series=502973",
            "date": "2026-05-06T11:36:51",
            "name": "futex: Add error coverage tests for wait, wake and cmp_requeue",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/502973/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2233408/comments/",
    "check": "fail",
    "checks": "http://patchwork.ozlabs.org/api/patches/2233408/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "<ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "ltp@lists.linux.it"
        ],
        "Delivered-To": [
            "patchwork-incoming@legolas.ozlabs.org",
            "ltp@picard.linux.it"
        ],
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=lists.linux.it header.i=@lists.linux.it\n header.a=rsa-sha256 header.s=picard header.b=A8owrbGo;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=McAj3zhk;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.linux.it\n (client-ip=2001:1418:10:5::2; helo=picard.linux.it;\n envelope-from=ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it;\n receiver=patchwork.ozlabs.org)"
        ],
        "Received": [
            "from picard.linux.it (picard.linux.it [IPv6:2001:1418:10:5::2])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g9YKr5ZCsz1yJq\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 06 May 2026 21:38:24 +1000 (AEST)",
            "from picard.linux.it (localhost [IPv6:::1])\n\tby picard.linux.it (Postfix) with ESMTP id 757A53E6156\n\tfor <incoming@patchwork.ozlabs.org>; Wed,  6 May 2026 13:38:22 +0200 (CEST)",
            "from in-4.smtp.seeweb.it (in-4.smtp.seeweb.it [217.194.8.4])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature ECDSA (secp384r1))\n (No client certificate requested)\n by picard.linux.it (Postfix) with ESMTPS id 006D43E615B\n for <ltp@lists.linux.it>; Wed,  6 May 2026 13:37:07 +0200 (CEST)",
            "from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.129.124])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by in-4.smtp.seeweb.it (Postfix) with ESMTPS id 6BDD710009F4\n for <ltp@lists.linux.it>; Wed,  6 May 2026 13:37:07 +0200 (CEST)",
            "from mail-wr1-f70.google.com (mail-wr1-f70.google.com\n [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n us-mta-55-xhmpCVDCPwqiAuwf37i5dQ-1; Wed, 06 May 2026 07:37:04 -0400",
            "by mail-wr1-f70.google.com with SMTP id\n ffacd0b85a97d-44b186b715aso3016451f8f.0\n for <ltp@lists.linux.it>; Wed, 06 May 2026 04:37:04 -0700 (PDT)",
            "from fedora.redhat.com (85.65.168.167.dynamic.barak-online.net.\n [85.65.168.167]) by smtp.gmail.com with ESMTPSA id\n ffacd0b85a97d-45055960022sm11919938f8f.26.2026.05.06.04.37.00\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Wed, 06 May 2026 04:37:01 -0700 (PDT)"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/simple; d=lists.linux.it;\n i=@lists.linux.it; q=dns/txt; s=picard; t=1778067502; h=to : date :\n message-id : in-reply-to : references : mime-version : subject :\n list-id : list-unsubscribe : list-archive : list-post : list-help :\n list-subscribe : from : reply-to : content-type :\n content-transfer-encoding : sender : from;\n bh=NfZjeVeH0lU8RK8MWYx6gzEY3+Br0e9TCZpOcdZBoxs=;\n b=A8owrbGoMZT4EzNcadn5OMguXCDvfFEvNeXkknkfxPRtRhe+Yc8Y1qnucpQ+/LGL2Kfsq\n rVXm/2MMq9OxdvEWipLmXdCFIUeanG7liKxIJIHBmHWLMR/aIwEbf7KXJRv2ulrK+a0Os8+\n tvr7enGrB2brphxvZUbyCIt2rTxUzKA=",
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1778067426;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references;\n bh=w6PM+iazZHiaNtQstutOpMmLJDrpEeOwSs1KfuxQnzw=;\n b=McAj3zhklrvNaSkWt1RE10zE5svdoNFAbGDDL4TMZpQS7bwShwWcFQtf8ASxmUkLZiGuWK\n YzudceH6JBVwv74ImS/dAZjyDcwBqwyhwmL7C0fEEIgC5Y5Tvx3plJ12zUOSvJAWJHVGr9\n 8dgz7x6Y2tVR7VmtxWb+qI4VZNdHsQU="
        ],
        "X-MC-Unique": "xhmpCVDCPwqiAuwf37i5dQ-1",
        "X-Mimecast-MFC-AGG-ID": "xhmpCVDCPwqiAuwf37i5dQ_1778067423",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1778067423; x=1778672223;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=w6PM+iazZHiaNtQstutOpMmLJDrpEeOwSs1KfuxQnzw=;\n b=XbQVSU4iuByoQIu4mhWyoaI8vVY/foZLiMXn3SFuRDOdBE9GoGcvu3WzNYgSkEMMOy\n ylgg75jypojaWokqlQxnvQ5vTnTHBkZHeg0Xqs0VcZn0P284ZBSH4ltHCljKhKgunG2X\n yGb7qseL0NkOKpyHUS6xLa4wEhCfvWuJzYryOgw0T7Knj898FVyKhOwRfq8UHKpcbbkO\n 5zhX01Ee9bKhpS8Le2qsv45rMYcvdJQLKl0VZDYJDgZhf8X4uFYLmKKXQLExR39SdTrH\n Uy9afjQPqWGQViUx1ym9bD2f08r0qyvSKAlO4f2Dh44K9tKewlMEeq1LH+th7ZptO1Ff\n Kq1Q==",
        "X-Gm-Message-State": "AOJu0Yxya92LqSG5MSFJFXw+hc7GuITy9gACTAdR8BESGrHOY3XL0/wz\n qrpk1Kowzqfo14cKpxH0ZgniERYvzTvRk9csMetGwsIUVsPfwRbCs4HoMVkltxVLosPkmDHGxXH\n y3RnF82bGsi9Cm5FiNM/9M0QymQ90sd64J7V+nZR5yMmP75ps/yD0IO+dUB/FHyKjYH2mxybGLp\n LM6B1SY3kgq6hOsoW+hDWuuBtT9xxRGZk9gFAL",
        "X-Gm-Gg": "AeBDietiQ+iEzpfh5LbfeKCzIOTVY7DnXGoXOh3K7ytUIrYZhR+d0IUa7WhFs7F2urE\n fJUXDhYaBF89W6Jy0ZuQ6ScWWguQ6Lnm0rWWUi+kHjYP19RtdDtALJaDfTocWeClQFv8i2v5eRw\n CXmFKu8h1KmeibIUGEcimEmjexAkmDud0lU4kzwls3iR7PlynLzfu9jv4JZf0ZcX2V1IEyOoeG/\n aDmgEKE/p1s77/UlrOy571WnJ4IGg2Qm7VymzN93zcuQmGG8T7UmdPNN63bi8NBmAoS1dFD2iPU\n seqhhnF42FznPrwrNvChFG+8E6cBtk9wZUwL47wQKugZdYS3YaS+iXk7xefxmr4JIkuOH5Trs+N\n D+TG5d3xY3jVt/Yu3sjOtHWHjVxfHR0TbmvsQlBQvC8gn2J9nsN8T9JUmLzKyamiuPmMzjldYDS\n eCGNdp4g==",
        "X-Received": [
            "by 2002:a05:6000:22c4:b0:44f:d9da:2c40 with SMTP id\n ffacd0b85a97d-4515cf125d1mr5204337f8f.21.1778067423000;\n Wed, 06 May 2026 04:37:03 -0700 (PDT)",
            "by 2002:a05:6000:22c4:b0:44f:d9da:2c40 with SMTP id\n ffacd0b85a97d-4515cf125d1mr5204278f8f.21.1778067422502;\n Wed, 06 May 2026 04:37:02 -0700 (PDT)"
        ],
        "To": "ltp@lists.linux.it",
        "Date": "Wed,  6 May 2026 14:36:54 +0300",
        "Message-ID": "<20260506113655.10797-4-mmenashe@redhat.com>",
        "X-Mailer": "git-send-email 2.53.0",
        "In-Reply-To": "<20260506113655.10797-1-mmenashe@redhat.com>",
        "References": "<20260506113655.10797-1-mmenashe@redhat.com>",
        "MIME-Version": "1.0",
        "X-Mimecast-Spam-Score": "0",
        "X-Mimecast-MFC-PROC-ID": "Fh27kP2vOCIERnwNdU1wyyt-MAphf9tGVP6Fv28y9hk_1778067423",
        "X-Mimecast-Originator": "redhat.com",
        "X-Spam-Status": "No, score=0.1 required=7.0 tests=DKIM_SIGNED,DKIM_VALID,\n DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS shortcircuit=no\n autolearn=disabled version=4.0.1",
        "X-Spam-Checker-Version": "SpamAssassin 4.0.1 (2024-03-25) on in-4.smtp.seeweb.it",
        "X-Virus-Scanned": "clamav-milter 1.0.9 at in-4.smtp.seeweb.it",
        "X-Virus-Status": "Clean",
        "Subject": "[LTP] [PATCH 3/4] futex_wake05: Add EFAULT error coverage test",
        "X-BeenThere": "ltp@lists.linux.it",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "Linux Test Project <ltp.lists.linux.it>",
        "List-Unsubscribe": "<https://lists.linux.it/options/ltp>,\n <mailto:ltp-request@lists.linux.it?subject=unsubscribe>",
        "List-Archive": "<http://lists.linux.it/pipermail/ltp/>",
        "List-Post": "<mailto:ltp@lists.linux.it>",
        "List-Help": "<mailto:ltp-request@lists.linux.it?subject=help>",
        "List-Subscribe": "<https://lists.linux.it/listinfo/ltp>,\n <mailto:ltp-request@lists.linux.it?subject=subscribe>",
        "From": "Michael Menasherov via ltp <ltp@lists.linux.it>",
        "Reply-To": "Michael Menasherov <mmenashe@redhat.com>",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-Transfer-Encoding": "7bit",
        "Errors-To": "ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it",
        "Sender": "\"ltp\" <ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it>"
    },
    "content": "---\n runtest/syscalls                              |  1 +\n testcases/kernel/syscalls/futex/.gitignore    |  1 +\n .../kernel/syscalls/futex/futex_wake05.c      | 86 +++++++++++++++++++\n 3 files changed, 88 insertions(+)\n create mode 100644 testcases/kernel/syscalls/futex/futex_wake05.c",
    "diff": "diff --git a/runtest/syscalls b/runtest/syscalls\nindex 75b7754db..4d85a1d26 100644\n--- a/runtest/syscalls\n+++ b/runtest/syscalls\n@@ -1907,3 +1907,4 @@ io_uring03 io_uring03\n perf_event_open03 perf_event_open03\n futex_wait06 futex_wait06\n futex_wait07 futex_wait07\n+futex_wake05 futex_wake05\ndiff --git a/testcases/kernel/syscalls/futex/.gitignore b/testcases/kernel/syscalls/futex/.gitignore\nindex 74ac9a926..c11546e07 100644\n--- a/testcases/kernel/syscalls/futex/.gitignore\n+++ b/testcases/kernel/syscalls/futex/.gitignore\n@@ -15,3 +15,4 @@\n /futex_waitv03\n /futex_wait06\n /futex_wait07\n+/futex_wake05\ndiff --git a/testcases/kernel/syscalls/futex/futex_wake05.c b/testcases/kernel/syscalls/futex/futex_wake05.c\nnew file mode 100644\nindex 000000000..1e9bd6435\n--- /dev/null\n+++ b/testcases/kernel/syscalls/futex/futex_wake05.c\n@@ -0,0 +1,86 @@\n+// SPDX-License-Identifier: GPL-2.0-or-later\n+/*\n+ * Copyright (C) 2026 Red Hat, Inc.\n+ */\n+\n+/*\\\n+ * Check that futex(FUTEX_WAKE) returns EFAULT when uaddr points to\n+ * unmapped or PROT_NONE memory.\n+ *\n+ * Note: FUTEX_WAKE never reads *uaddr, so PROT_NONE triggers EFAULT\n+ * (not EACCES). The EACCES behavior only applies to syscalls that read\n+ * *uaddr (e.g. FUTEX_WAIT, FUTEX_CMP_REQUEUE).\n+ */\n+\n+#include <errno.h>\n+#include <sys/mman.h>\n+#include \"futextest.h\"\n+\n+static futex_t *prot_none_addr;\n+\n+static struct futex_test_variants variants[] = {\n+#if (__NR_futex != __LTP__NR_INVALID_SYSCALL)\n+\t{ .fntype = FUTEX_FN_FUTEX, .desc = \"syscall with old kernel spec\"},\n+#endif\n+\n+#if (__NR_futex_time64 != __LTP__NR_INVALID_SYSCALL)\n+\t{ .fntype = FUTEX_FN_FUTEX64, .desc = \"syscall time64 with kernel spec\"},\n+#endif\n+};\n+\n+static struct testcase {\n+\tconst char *desc;\n+\tfutex_t *addr;\n+\tint exp_errno;\n+} testcases[2];\n+\n+static void run(unsigned int n)\n+{\n+\tstruct futex_test_variants *tv = &variants[tst_variant];\n+\tstruct testcase *tc = &testcases[n];\n+\n+\tTST_EXP_FAIL(futex_wake(tv->fntype, tc->addr, 1, 0),\n+\t\ttc->exp_errno, \"%s\", tc->desc);\n+}\n+\n+static void setup(void)\n+{\n+\tstruct futex_test_variants *tv = &variants[tst_variant];\n+\tsize_t pagesize = getpagesize();\n+\tfutex_t *unmapped;\n+\n+\ttst_res(TINFO, \"Testing variant: %s\", tv->desc);\n+\tfutex_supported_by_kernel(tv->fntype);\n+\n+\tunmapped = SAFE_MMAP(NULL, pagesize, PROT_READ | PROT_WRITE,\n+\t\tMAP_PRIVATE | MAP_ANONYMOUS, -1, 0);\n+\tSAFE_MUNMAP(unmapped, pagesize);\n+\n+\tprot_none_addr = SAFE_MMAP(NULL, pagesize, PROT_NONE,\n+\t\tMAP_PRIVATE | MAP_ANONYMOUS, -1, 0);\n+\n+\ttestcases[0] = (struct testcase){\n+\t\t.desc = \"uaddr unmapped\",\n+\t\t.addr = unmapped,\n+\t\t.exp_errno = EFAULT,\n+\t};\n+\ttestcases[1] = (struct testcase){\n+\t\t.desc = \"uaddr PROT_NONE\",\n+\t\t.addr = prot_none_addr,\n+\t\t.exp_errno = EFAULT,\n+\t};\n+}\n+\n+static void cleanup(void)\n+{\n+\tif (prot_none_addr)\n+\t\tSAFE_MUNMAP(prot_none_addr, getpagesize());\n+}\n+\n+static struct tst_test test = {\n+\t.setup = setup,\n+\t.cleanup = cleanup,\n+\t.test = run,\n+\t.tcnt = ARRAY_SIZE(testcases),\n+\t.test_variants = ARRAY_SIZE(variants),\n+};\n",
    "prefixes": [
        "3/4"
    ]
}