get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2196341,
    "url": "http://patchwork.ozlabs.org/api/patches/2196341/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/glibc/patch/20260213132950.529984-1-xry111@xry111.site/",
    "project": {
        "id": 41,
        "url": "http://patchwork.ozlabs.org/api/projects/41/?format=api",
        "name": "GNU C Library",
        "link_name": "glibc",
        "list_id": "libc-alpha.sourceware.org",
        "list_email": "libc-alpha@sourceware.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20260213132950.529984-1-xry111@xry111.site>",
    "list_archive_url": null,
    "date": "2026-02-13T13:29:36",
    "name": "[v2] linux/mips: handle wait status 0x7f specially for WIFSIGNALED and WIFSTOPPED",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "27ec4d2b0531afc89f25d95a41057530f16b8527",
    "submitter": {
        "id": 84026,
        "url": "http://patchwork.ozlabs.org/api/people/84026/?format=api",
        "name": "Xi Ruoyao",
        "email": "xry111@xry111.site"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/glibc/patch/20260213132950.529984-1-xry111@xry111.site/mbox/",
    "series": [
        {
            "id": 492097,
            "url": "http://patchwork.ozlabs.org/api/series/492097/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/glibc/list/?series=492097",
            "date": "2026-02-13T13:29:36",
            "name": "[v2] linux/mips: handle wait status 0x7f specially for WIFSIGNALED and WIFSTOPPED",
            "version": 2,
            "mbox": "http://patchwork.ozlabs.org/series/492097/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2196341/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2196341/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "libc-alpha@sourceware.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@legolas.ozlabs.org",
            "libc-alpha@sourceware.org"
        ],
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=xry111.site header.i=@xry111.site header.a=rsa-sha256\n header.s=default header.b=HP6HMsHK;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org;\n receiver=patchwork.ozlabs.org)",
            "sourceware.org;\n\tdkim=pass (1024-bit key,\n unprotected) header.d=xry111.site header.i=@xry111.site header.a=rsa-sha256\n header.s=default header.b=HP6HMsHK",
            "sourceware.org;\n dmarc=pass (p=reject dis=none) header.from=xry111.site",
            "sourceware.org; spf=pass smtp.mailfrom=xry111.site",
            "server2.sourceware.org;\n arc=none smtp.remote-ip=89.208.246.23"
        ],
        "Received": [
            "from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fCCjl6xC3z1xpl\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 14 Feb 2026 00:31:07 +1100 (AEDT)",
            "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id DB4D54B9DB52\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 13 Feb 2026 13:31:05 +0000 (GMT)",
            "from xry111.site (xry111.site [89.208.246.23])\n by sourceware.org (Postfix) with ESMTPS id 154A44BA23C7\n for <libc-alpha@sourceware.org>; Fri, 13 Feb 2026 13:30:44 +0000 (GMT)",
            "from stargazer (unknown [IPv6:2409:8a4c:e12:da00::aaf])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n (Client did not present a certificate)\n (Authenticated sender: xry111@xry111.site)\n by xry111.site (Postfix) with ESMTPSA id 3FC421A3F53;\n Fri, 13 Feb 2026 08:30:07 -0500 (EST)"
        ],
        "DKIM-Filter": [
            "OpenDKIM Filter v2.11.0 sourceware.org DB4D54B9DB52",
            "OpenDKIM Filter v2.11.0 sourceware.org 154A44BA23C7"
        ],
        "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 154A44BA23C7",
        "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 154A44BA23C7",
        "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1770989444; cv=none;\n b=CFTB5Sor9p401iFP5kVtjmiL5L8sJtV5ETPMlsU7nQlHbt0IF+4cAZy967/dYhLCg5F5JN2u3ai3wHxzkT/UlpiywLqwWuUOZjvDuxrEdiGZF4xfGrVZvDhmWiYUFxybS86QptIBvE/D6BuwhRZx3u6GKhIvVwh2HVMmAK6SpbA=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1770989444; c=relaxed/simple;\n bh=aEzjTAiFsu0bUBE5cgGyi9aHylj5uX6sp5ZWPT/KcQ0=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=RD/lsIPStmxAac+bzxMOxd0Dlv1pWqBcRE4H3I69vmecbHOHM1oa8uRX+2Gaj9RuHYeaCQGY7JDD5Db14avLHPU4d2ZSjWERWLpZ/JtWfHTxucF+Mkwy+OKhaKIeOI+d8/7PWPuTLttjQ/cFFqnYo7o2cill6OU8JmYSZ3rZ2Yo=",
        "ARC-Authentication-Results": "i=1; server2.sourceware.org",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=xry111.site;\n s=default; t=1770989412;\n bh=TV334vzdvsmYrc5FgzEt/PjGYIHNXKbkytVVMSA12dg=;\n h=From:To:Cc:Subject:Date:From;\n b=HP6HMsHKimNOyLibrHNSW5PA0c5NjdA7MaiMdD6/Is9SxdMhwPt3RKJDEbUUZewy8\n HSMxo5xyqoaQ9CDC+HNkXy20zg6EiYffdrgnf9dgGhN8D6Qljnbvt4QnA6G9tbnbEZ\n u2b5TNB3rYQ73ESBESPDa/BS9fdnX6rzUpepWIaw=",
        "From": "Xi Ruoyao <xry111@xry111.site>",
        "To": "libc-alpha@sourceware.org",
        "Cc": "Jiaxun Yang <jiaxun.yang@flygoat.com>, Mingcong Bai <jeffbai@aosc.io>,\n WANG Xuerui <i@xen0n.name>, Zixing Liu <liushuyu@aosc.io>,\n Xi Ruoyao <xry111@xry111.site>",
        "Subject": "[PATCH v2] linux/mips: handle wait status 0x7f specially for\n WIFSIGNALED and WIFSTOPPED",
        "Date": "Fri, 13 Feb 2026 21:29:36 +0800",
        "Message-ID": "<20260213132950.529984-1-xry111@xry111.site>",
        "X-Mailer": "git-send-email 2.53.0",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "libc-alpha@sourceware.org",
        "X-Mailman-Version": "2.1.30",
        "Precedence": "list",
        "List-Id": "Libc-alpha mailing list <libc-alpha.sourceware.org>",
        "List-Unsubscribe": "<https://sourceware.org/mailman/options/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=unsubscribe>",
        "List-Archive": "<https://sourceware.org/pipermail/libc-alpha/>",
        "List-Post": "<mailto:libc-alpha@sourceware.org>",
        "List-Help": "<mailto:libc-alpha-request@sourceware.org?subject=help>",
        "List-Subscribe": "<https://sourceware.org/mailman/listinfo/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=subscribe>",
        "Errors-To": "libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org"
    },
    "content": "MIPS Linux has SIGRTMAX=127, thus the wait status 0x7f means the program\nis terminated by SIGRTMAX, not stopped.\n\nThis cannot happen on other ports so make a special version of\nwaitstatus.h for MIPS to avoid adding redundant calculation to others.\nI cannot find a way to use status only once in the expression, so use\ninline functions instead of macros to avoid double-evaluating status.\n\nSigned-off-by: Xi Ruoyao <xry111@xry111.site>\n---\n\nChange since v1: use reserved name for parameter.\n\n .../unix/sysv/linux/mips/bits/waitstatus.h    | 68 +++++++++++++++++++\n 1 file changed, 68 insertions(+)\n create mode 100644 sysdeps/unix/sysv/linux/mips/bits/waitstatus.h",
    "diff": "diff --git a/sysdeps/unix/sysv/linux/mips/bits/waitstatus.h b/sysdeps/unix/sysv/linux/mips/bits/waitstatus.h\nnew file mode 100644\nindex 0000000000..de938153dd\n--- /dev/null\n+++ b/sysdeps/unix/sysv/linux/mips/bits/waitstatus.h\n@@ -0,0 +1,68 @@\n+/* Definitions of status bits for `wait' et al.\n+   MIPS version, based on the generic version (bits/waitstatus.h).\n+\n+   Copyright (C) 1992-2026 Free Software Foundation, Inc.\n+   This file is part of the GNU C Library.\n+\n+   The GNU C Library is free software; you can redistribute it and/or\n+   modify it under the terms of the GNU Lesser General Public\n+   License as published by the Free Software Foundation; either\n+   version 2.1 of the License, or (at your option) any later version.\n+\n+   The GNU C Library is distributed in the hope that it will be useful,\n+   but WITHOUT ANY WARRANTY; without even the implied warranty of\n+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n+   Lesser General Public License for more details.\n+\n+   You should have received a copy of the GNU Lesser General Public\n+   License along with the GNU C Library; if not, see\n+   <https://www.gnu.org/licenses/>.  */\n+\n+#if !defined _SYS_WAIT_H && !defined _STDLIB_H\n+# error \"Never include <bits/waitstatus.h> directly; use <sys/wait.h> instead.\"\n+#endif\n+\n+\n+/* On MIPS SIGRTMAX is 127, so we need to handle the status code 127\n+   which is impossible on other ports.  */\n+\n+/* If WIFEXITED(STATUS), the low-order 8 bits of the status.  */\n+#define        __WEXITSTATUS(status)   (((status) & 0xff00) >> 8)\n+\n+/* If WIFSIGNALED(STATUS), the terminating signal.  */\n+#define        __WTERMSIG(status)      ((status) & 0x7f)\n+\n+/* If WIFSTOPPED(STATUS), the signal that stopped the child.  */\n+#define        __WSTOPSIG(status)      __WEXITSTATUS(status)\n+\n+/* Nonzero if STATUS indicates normal termination.  */\n+#define        __WIFEXITED(status)     (__WTERMSIG(status) == 0)\n+\n+/* Nonzero if STATUS indicates termination by a signal.  */\n+static __inline int\n+__WIFSIGNALED (int __status)\n+{\n+  return ((signed char) ((__status & 0x7f) + 1) >> 1) > 0 || __status == 0x7f;\n+}\n+\n+/* Nonzero if STATUS indicates the child is stopped.  */\n+static __inline int\n+__WIFSTOPPED (int __status)\n+{\n+  return (__status & 0xff) == 0x7f && __status != 0x7f;\n+}\n+\n+/* Nonzero if STATUS indicates the child continued after a stop.  We only\n+   define this if <bits/waitflags.h> provides the WCONTINUED flag bit.  */\n+#ifdef WCONTINUED\n+# define __WIFCONTINUED(status)        ((status) == __W_CONTINUED)\n+#endif\n+\n+/* Nonzero if STATUS indicates the child dumped core.  */\n+#define        __WCOREDUMP(status)     ((status) & __WCOREFLAG)\n+\n+/* Macros for constructing status values.  */\n+#define        __W_EXITCODE(ret, sig)  ((ret) << 8 | (sig))\n+#define        __W_STOPCODE(sig)       ((sig) << 8 | 0x7f)\n+#define __W_CONTINUED          0xffff\n+#define        __WCOREFLAG             0x80\n",
    "prefixes": [
        "v2"
    ]
}