get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2222637,
    "url": "http://patchwork.ozlabs.org/api/1.2/patches/2222637/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/buildroot/patch/20260413082817.3553573-2-bernd@kuhls.net/",
    "project": {
        "id": 27,
        "url": "http://patchwork.ozlabs.org/api/1.2/projects/27/?format=api",
        "name": "Buildroot development",
        "link_name": "buildroot",
        "list_id": "buildroot.buildroot.org",
        "list_email": "buildroot@buildroot.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20260413082817.3553573-2-bernd@kuhls.net>",
    "list_archive_url": null,
    "date": "2026-04-13T08:28:14",
    "name": "[2/4] package/strace: fix build with linux-7.0",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "0939b4161f7f700ec957ee1f2108911140f8e26a",
    "submitter": {
        "id": 86624,
        "url": "http://patchwork.ozlabs.org/api/1.2/people/86624/?format=api",
        "name": "Bernd Kuhls",
        "email": "bernd@kuhls.net"
    },
    "delegate": {
        "id": 89618,
        "url": "http://patchwork.ozlabs.org/api/1.2/users/89618/?format=api",
        "username": "juju",
        "first_name": "Julien",
        "last_name": "Olivain",
        "email": "juju@cotds.org"
    },
    "mbox": "http://patchwork.ozlabs.org/project/buildroot/patch/20260413082817.3553573-2-bernd@kuhls.net/mbox/",
    "series": [
        {
            "id": 499666,
            "url": "http://patchwork.ozlabs.org/api/1.2/series/499666/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/buildroot/list/?series=499666",
            "date": "2026-04-13T08:28:13",
            "name": "[1/4] {linux, linux-headers}: bump 6.{1, 6, 12, 18, 19}.x series",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/499666/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2222637/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2222637/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<buildroot-bounces@buildroot.org>",
        "X-Original-To": [
            "incoming-buildroot@patchwork.ozlabs.org",
            "buildroot@buildroot.org"
        ],
        "Delivered-To": [
            "patchwork-incoming-buildroot@legolas.ozlabs.org",
            "buildroot@buildroot.org"
        ],
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=buildroot.org header.i=@buildroot.org\n header.a=rsa-sha256 header.s=default header.b=Cg4oRlbL;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org\n (client-ip=2605:bc80:3010::137; helo=smtp4.osuosl.org;\n envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org)"
        ],
        "Received": [
            "from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\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 4fvLCY1s8Lz1y2d\n\tfor <incoming-buildroot@patchwork.ozlabs.org>;\n Mon, 13 Apr 2026 18:28:41 +1000 (AEST)",
            "from localhost (localhost [127.0.0.1])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id A870442072;\n\tMon, 13 Apr 2026 08:28:39 +0000 (UTC)",
            "from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id sT_3am40HWXD; Mon, 13 Apr 2026 08:28:37 +0000 (UTC)",
            "from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id EDB5D42616;\n\tMon, 13 Apr 2026 08:28:36 +0000 (UTC)",
            "from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\n by lists1.osuosl.org (Postfix) with ESMTP id 7412B283\n for <buildroot@buildroot.org>; Mon, 13 Apr 2026 08:28:35 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n by smtp4.osuosl.org (Postfix) with ESMTP id 7163442616\n for <buildroot@buildroot.org>; Mon, 13 Apr 2026 08:28:35 +0000 (UTC)",
            "from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id RunqNXZoZEoZ for <buildroot@buildroot.org>;\n Mon, 13 Apr 2026 08:28:33 +0000 (UTC)",
            "from dd20012.kasserver.com (dd20012.kasserver.com [85.13.140.57])\n by smtp4.osuosl.org (Postfix) with ESMTPS id 7331742072\n for <buildroot@buildroot.org>; Mon, 13 Apr 2026 08:28:32 +0000 (UTC)",
            "from fli4l.lan.fli4l (p4fd6ccdb.dip0.t-ipconnect.de\n [79.214.204.219])\n by dd20012.kasserver.com (Postfix) with ESMTPSA id 6BA7AA4C21A2;\n Mon, 13 Apr 2026 10:28:18 +0200 (CEST)",
            "from bruckner.lan.fli4l ([192.168.1.1]:37362)\n by fli4l.lan.fli4l with esmtp (Exim 4.99.1)\n (envelope-from <bernd@kuhls.net>) id 1wCCeW-0000000008w-3ori;\n Mon, 13 Apr 2026 08:28:18 +0000"
        ],
        "X-Virus-Scanned": [
            "amavis at osuosl.org",
            "amavis at osuosl.org"
        ],
        "X-Comment": "SPF check N/A for local connections - client-ip=140.211.166.142;\n helo=lists1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org;\n receiver=<UNKNOWN> ",
        "DKIM-Filter": [
            "OpenDKIM Filter v2.11.0 smtp4.osuosl.org EDB5D42616",
            "OpenDKIM Filter v2.11.0 smtp4.osuosl.org 7331742072"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=buildroot.org;\n\ts=default; t=1776068917;\n\tbh=UEQb+BmkyJyGo/J36k5yqAnB3W3UAB0ltFXPiEwarEA=;\n\th=From:To:Date:In-Reply-To:References:Subject:List-Id:\n\t List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:\n\t Cc:From;\n\tb=Cg4oRlbL+cplDqqrhxVwsBSJlFcC/u4Qv6fliWoEJ/mvpTQ4sS3ezRZNFAmLusWXj\n\t b53C1R6DhGJIJOIzf82diSdQnyWnP3EA96wg4xtUOeehAn1QFHArtd6COM7OapBQzc\n\t tUNNXtfdf9aJIPtz/2sd42rOAZpyruPc4FRUfhPl/q77pKRE+2oYx0vBzi3GmK5Azj\n\t oIPQHOZw3s5/mldgONO6ShRq0p4X9XCiVYphThK40wCZ71yc4sAQDzblgJvp/OsaIE\n\t PaIJhH6K0RKBOCsOMhHiwKrwh3sYkgIOKGFDd49SyS6XmbsnW7o0beSHtb8pLIyqYG\n\t pc0zztRMqvmrw==",
        "Received-SPF": "Pass (mailfrom) identity=mailfrom; client-ip=85.13.140.57;\n helo=dd20012.kasserver.com; envelope-from=bernd@kuhls.net;\n receiver=<UNKNOWN>",
        "DMARC-Filter": "OpenDMARC Filter v1.4.2 smtp4.osuosl.org 7331742072",
        "From": "Bernd Kuhls <bernd@kuhls.net>",
        "To": "buildroot@buildroot.org",
        "Date": "Mon, 13 Apr 2026 10:28:14 +0200",
        "Message-ID": "<20260413082817.3553573-2-bernd@kuhls.net>",
        "X-Mailer": "git-send-email 2.47.3",
        "In-Reply-To": "<20260413082817.3553573-1-bernd@kuhls.net>",
        "References": "<20260413082817.3553573-1-bernd@kuhls.net>",
        "MIME-Version": "1.0",
        "X-Spamd-Bar": "-",
        "X-Mailman-Original-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=kuhls.net;\n s=kas202511301023; t=1776068898;\n bh=rZjUtAYDk0yNHQS+GaI/mKbEGzuSpfpQbHni8HuKMb8=;\n h=From:To:Cc:Subject:Date:In-Reply-To:From;\n b=bvtshYrvJJg2XmD8jfzfNiaqY2FXnhARVmlQZ3mmEcIs0TSUsD7BYkF/fAkuT8w/D\n a9UU4DSK+XnA2LaEn9unf14YHJOTmKtRJQwT7wvcSHN/NTHg2vzRM4YGz3RsMjBR8M\n U0fDYikqvEUaE3MmyWbWec24Y3Etfv+JCKTDtW9ElLHtR2VlgliXXAL1bVOIt0mTAj\n 8KIKYlV1SmYmsFHu3zwVxA3YuB7mTMY6UsoxTXIjVz6+Ye61kbLcIPggs6Nzy03IX3\n 55SgXsY0NyHl3ARP2Ts87bideGdhzN8KCd/k5aYR/AydDDFJ7ffp+4iLaBkDQSxOjq\n LjeXlkeDwk9rA==",
        "X-Mailman-Original-Authentication-Results": [
            "smtp4.osuosl.org;\n dmarc=pass (p=none dis=none)\n header.from=kuhls.net",
            "smtp4.osuosl.org;\n dkim=pass (2048-bit key,\n unprotected) header.d=kuhls.net header.i=@kuhls.net header.a=rsa-sha256\n header.s=kas202511301023 header.b=bvtshYrv"
        ],
        "Subject": "[Buildroot] [PATCH 2/4] package/strace: fix build with linux-7.0",
        "X-BeenThere": "buildroot@buildroot.org",
        "X-Mailman-Version": "2.1.30",
        "Precedence": "list",
        "List-Id": "Discussion and development of buildroot <buildroot.buildroot.org>",
        "List-Unsubscribe": "<https://lists.buildroot.org/mailman/options/buildroot>,\n <mailto:buildroot-request@buildroot.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.buildroot.org/pipermail/buildroot/>",
        "List-Post": "<mailto:buildroot@buildroot.org>",
        "List-Help": "<mailto:buildroot-request@buildroot.org?subject=help>",
        "List-Subscribe": "<https://lists.buildroot.org/mailman/listinfo/buildroot>,\n <mailto:buildroot-request@buildroot.org?subject=subscribe>",
        "Cc": "Romain Naour <romain.naour@gmail.com>,\n Giulio Benetti <giulio.benetti@benettiengineering.com>,\n Thomas Petazzoni <thomas.petazzoni@bootlin.com>",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "Content-Transfer-Encoding": "base64",
        "Errors-To": "buildroot-bounces@buildroot.org",
        "Sender": "\"buildroot\" <buildroot-bounces@buildroot.org>"
    },
    "content": "Add three upstream patches to fix build with the upcoming bump of the\nlinux kernel to 7.0.\n\nSigned-off-by: Bernd Kuhls <bernd@kuhls.net>\n---\n ...pdate-linux-UAPI-headers-to-v7.0-rc3.patch | 1126 +++++++++++++++++\n ...-update-linux-io_uring.h-to-v7.0-rc3.patch |  165 +++\n ...e-linux-io_uring-query.h-to-v7.0-rc3.patch |  123 ++\n 3 files changed, 1414 insertions(+)\n create mode 100644 package/strace/0001-bundled-update-linux-UAPI-headers-to-v7.0-rc3.patch\n create mode 100644 package/strace/0002-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch\n create mode 100644 package/strace/0003-bundled-update-linux-io_uring-query.h-to-v7.0-rc3.patch",
    "diff": "diff --git a/package/strace/0001-bundled-update-linux-UAPI-headers-to-v7.0-rc3.patch b/package/strace/0001-bundled-update-linux-UAPI-headers-to-v7.0-rc3.patch\nnew file mode 100644\nindex 0000000000..c2b6994703\n--- /dev/null\n+++ b/package/strace/0001-bundled-update-linux-UAPI-headers-to-v7.0-rc3.patch\n@@ -0,0 +1,1126 @@\n+From 33b950714a966bde816a1f1e75c127c3d3ae53cd Mon Sep 17 00:00:00 2001\n+From: \"Dmitry V. Levin\" <ldv@strace.io>\n+Date: Mon, 9 Mar 2026 08:00:00 +0000\n+Subject: [PATCH] bundled: update linux UAPI headers to v7.0-rc3\n+\n+The update of linux/io_uring.h is delayed because the change in\n+struct io_uring_zcrx_ifq_reg requires a synchronous update of\n+the header, the parser and the test.\n+\n+The update of linux/io_uring/query.h is delayed because the change in\n+struct io_uring_query_zcrx requires a synchronous update of the header,\n+the parser and the test.\n+\n+* bundled/linux/include/uapi/linux/typelimits.h: New file.\n+* bundled/Makefile.am (EXTRA_DIST): Add\n+linux/include/uapi/linux/typelimits.h.\n+* bundled/linux/include/uapi/linux/blkzoned.h: Update to\n+headers_install'ed Linux kernel v7.0-rc3.\n+* bundled/linux/include/uapi/linux/btrfs.h: Likewise.\n+* bundled/linux/include/uapi/linux/btrfs_tree.h: Likewise.\n+* bundled/linux/include/uapi/linux/ethtool.h: Likewise.\n+* bundled/linux/include/uapi/linux/fs.h: Likewise.\n+* bundled/linux/include/uapi/linux/if_alg.h: Likewise.\n+* bundled/linux/include/uapi/linux/if_link.h: Likewise.\n+* bundled/linux/include/uapi/linux/landlock.h: Likewise.\n+* bundled/linux/include/uapi/linux/mount.h: Likewise.\n+* bundled/linux/include/uapi/linux/mptcp_pm.h: Likewise.\n+* bundled/linux/include/uapi/linux/nl80211.h: Likewise.\n+* bundled/linux/include/uapi/linux/perf_event.h: Likewise.\n+* bundled/linux/include/uapi/linux/pkt_sched.h: Likewise.\n+* bundled/linux/include/uapi/linux/prctl.h: Likewise.\n+* bundled/linux/include/uapi/linux/taskstats.h: Likewise.\n+* bundled/linux/include/uapi/linux/tcp.h: Likewise.\n+* bundled/linux/include/uapi/linux/v4l2-controls.h: Likewise.\n+* bundled/linux/include/uapi/linux/version.h: Likewise.\n+* bundled/linux/include/uapi/linux/videodev2.h: Likewise.\n+\n+Upstream: https://github.com/strace/strace/commit/33b950714a966bde816a1f1e75c127c3d3ae53cd\n+\n+Signed-off-by: Bernd Kuhls <bernd@kuhls.net>\n+---\n+ bundled/Makefile.am                           |   1 +\n+ bundled/linux/include/uapi/linux/blkzoned.h   |   6 +-\n+ bundled/linux/include/uapi/linux/btrfs.h      |   1 +\n+ bundled/linux/include/uapi/linux/btrfs_tree.h |  34 +++++-\n+ bundled/linux/include/uapi/linux/ethtool.h    |  26 +++-\n+ bundled/linux/include/uapi/linux/fs.h         |   1 +\n+ bundled/linux/include/uapi/linux/if_alg.h     |   2 +-\n+ bundled/linux/include/uapi/linux/if_link.h    |   1 +\n+ bundled/linux/include/uapi/linux/landlock.h   |  67 ++++++-----\n+ bundled/linux/include/uapi/linux/mount.h      |  13 +-\n+ bundled/linux/include/uapi/linux/mptcp_pm.h   |   2 +-\n+ bundled/linux/include/uapi/linux/nl80211.h    | 112 +++++++++++++++++-\n+ bundled/linux/include/uapi/linux/perf_event.h |  29 ++++-\n+ bundled/linux/include/uapi/linux/pkt_sched.h  |   1 +\n+ bundled/linux/include/uapi/linux/prctl.h      |  37 ++++++\n+ bundled/linux/include/uapi/linux/taskstats.h  |  13 +-\n+ bundled/linux/include/uapi/linux/tcp.h        |  26 +++-\n+ bundled/linux/include/uapi/linux/typelimits.h |   8 ++\n+ .../linux/include/uapi/linux/v4l2-controls.h  |  63 ++++++++++\n+ bundled/linux/include/uapi/linux/version.h    |   6 +-\n+ bundled/linux/include/uapi/linux/videodev2.h  |   3 +\n+ 21 files changed, 395 insertions(+), 57 deletions(-)\n+ create mode 100644 bundled/linux/include/uapi/linux/typelimits.h\n+\n+diff --git a/bundled/Makefile.am b/bundled/Makefile.am\n+index 9140ccbbe..f1644002f 100644\n+--- a/bundled/Makefile.am\n++++ b/bundled/Makefile.am\n+@@ -135,6 +135,7 @@ EXTRA_DIST = \\\n+ \tlinux/include/uapi/linux/thermal.h \\\n+ \tlinux/include/uapi/linux/tipc.h \\\n+ \tlinux/include/uapi/linux/tls.h \\\n++\tlinux/include/uapi/linux/typelimits.h \\\n+ \tlinux/include/uapi/linux/types.h \\\n+ \tlinux/include/uapi/linux/unix_diag.h \\\n+ \tlinux/include/uapi/linux/userfaultfd.h \\\n+diff --git a/bundled/linux/include/uapi/linux/blkzoned.h b/bundled/linux/include/uapi/linux/blkzoned.h\n+index 44d5cbe5c..7ca3da613 100644\n+--- a/bundled/linux/include/uapi/linux/blkzoned.h\n++++ b/bundled/linux/include/uapi/linux/blkzoned.h\n+@@ -81,7 +81,8 @@ enum blk_zone_cond {\n+ \tBLK_ZONE_COND_FULL\t= 0xE,\n+ \tBLK_ZONE_COND_OFFLINE\t= 0xF,\n+ \n+-\tBLK_ZONE_COND_ACTIVE\t= 0xFF,\n++\tBLK_ZONE_COND_ACTIVE\t= 0xFF, /* added in Linux 6.19 */\n++#define BLK_ZONE_COND_ACTIVE\tBLK_ZONE_COND_ACTIVE\n+ };\n+ \n+ /**\n+@@ -100,7 +101,8 @@ enum blk_zone_report_flags {\n+ \tBLK_ZONE_REP_CAPACITY\t= (1U << 0),\n+ \n+ \t/* Input flags */\n+-\tBLK_ZONE_REP_CACHED\t= (1U << 31),\n++\tBLK_ZONE_REP_CACHED\t= (1U << 31), /* added in Linux 6.19 */\n++#define BLK_ZONE_REP_CACHED\tBLK_ZONE_REP_CACHED\n+ };\n+ \n+ /**\n+diff --git a/bundled/linux/include/uapi/linux/btrfs.h b/bundled/linux/include/uapi/linux/btrfs.h\n+index df4b2f88f..2988d1b29 100644\n+--- a/bundled/linux/include/uapi/linux/btrfs.h\n++++ b/bundled/linux/include/uapi/linux/btrfs.h\n+@@ -334,6 +334,7 @@ struct btrfs_ioctl_fs_info_args {\n+ #define BTRFS_FEATURE_INCOMPAT_EXTENT_TREE_V2\t(1ULL << 13)\n+ #define BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE\t(1ULL << 14)\n+ #define BTRFS_FEATURE_INCOMPAT_SIMPLE_QUOTA\t(1ULL << 16)\n++#define BTRFS_FEATURE_INCOMPAT_REMAP_TREE\t(1ULL << 17)\n+ \n+ struct btrfs_ioctl_feature_flags {\n+ \t__u64 compat_flags;\n+diff --git a/bundled/linux/include/uapi/linux/btrfs_tree.h b/bundled/linux/include/uapi/linux/btrfs_tree.h\n+index 86242120a..0507f9309 100644\n+--- a/bundled/linux/include/uapi/linux/btrfs_tree.h\n++++ b/bundled/linux/include/uapi/linux/btrfs_tree.h\n+@@ -72,6 +72,9 @@\n+ /* Tracks RAID stripes in block groups. */\n+ #define BTRFS_RAID_STRIPE_TREE_OBJECTID 12ULL\n+ \n++/* Holds details of remapped addresses after relocation. */\n++#define BTRFS_REMAP_TREE_OBJECTID 13ULL\n++\n+ /* device stats in the device tree */\n+ #define BTRFS_DEV_STATS_OBJECTID 0ULL\n+ \n+@@ -278,6 +281,10 @@\n+ \n+ #define BTRFS_RAID_STRIPE_KEY\t230\n+ \n++#define BTRFS_IDENTITY_REMAP_KEY \t234\n++#define BTRFS_REMAP_KEY\t\t \t235\n++#define BTRFS_REMAP_BACKREF_KEY\t \t236\n++\n+ /*\n+  * Records the overall state of the qgroups.\n+  * There's only one instance of this key present,\n+@@ -710,9 +717,12 @@ struct btrfs_super_block {\n+ \t__u8 metadata_uuid[BTRFS_FSID_SIZE];\n+ \n+ \t__u64 nr_global_roots;\n++\t__le64 remap_root;\n++\t__le64 remap_root_generation;\n++\t__u8 remap_root_level;\n+ \n+ \t/* Future expansion */\n+-\t__le64 reserved[27];\n++\t__u8 reserved[199];\n+ \t__u8 sys_chunk_array[BTRFS_SYSTEM_CHUNK_ARRAY_SIZE];\n+ \tstruct btrfs_root_backup super_roots[BTRFS_NUM_BACKUP_ROOTS];\n+ \n+@@ -1157,12 +1167,15 @@ struct btrfs_dev_replace_item {\n+ #define BTRFS_BLOCK_GROUP_RAID6         (1ULL << 8)\n+ #define BTRFS_BLOCK_GROUP_RAID1C3       (1ULL << 9)\n+ #define BTRFS_BLOCK_GROUP_RAID1C4       (1ULL << 10)\n++#define BTRFS_BLOCK_GROUP_REMAPPED      (1ULL << 11)\n++#define BTRFS_BLOCK_GROUP_METADATA_REMAP (1ULL << 12)\n+ #define BTRFS_BLOCK_GROUP_RESERVED\t(BTRFS_AVAIL_ALLOC_BIT_SINGLE | \\\n+ \t\t\t\t\t BTRFS_SPACE_INFO_GLOBAL_RSV)\n+ \n+ #define BTRFS_BLOCK_GROUP_TYPE_MASK\t(BTRFS_BLOCK_GROUP_DATA |    \\\n+ \t\t\t\t\t BTRFS_BLOCK_GROUP_SYSTEM |  \\\n+-\t\t\t\t\t BTRFS_BLOCK_GROUP_METADATA)\n++\t\t\t\t\t BTRFS_BLOCK_GROUP_METADATA | \\\n++\t\t\t\t\t BTRFS_BLOCK_GROUP_METADATA_REMAP)\n+ \n+ #define BTRFS_BLOCK_GROUP_PROFILE_MASK\t(BTRFS_BLOCK_GROUP_RAID0 |   \\\n+ \t\t\t\t\t BTRFS_BLOCK_GROUP_RAID1 |   \\\n+@@ -1215,6 +1228,14 @@ struct btrfs_block_group_item {\n+ \t__le64 flags;\n+ } __attribute__ ((__packed__));\n+ \n++struct btrfs_block_group_item_v2 {\n++\t__le64 used;\n++\t__le64 chunk_objectid;\n++\t__le64 flags;\n++\t__le64 remap_bytes;\n++\t__le32 identity_remap_count;\n++} __attribute__ ((__packed__));\n++\n+ struct btrfs_free_space_info {\n+ \t__le32 extent_count;\n+ \t__le32 flags;\n+@@ -1319,4 +1340,13 @@ struct btrfs_verity_descriptor_item {\n+ \t__u8 encryption;\n+ } __attribute__ ((__packed__));\n+ \n++/*\n++ * For a range identified by a BTRFS_REMAP_KEY item in the remap tree, gives\n++ * the address that the start of the range will get remapped to.  This\n++ * structure is also shared by BTRFS_REMAP_BACKREF_KEY.\n++ */\n++struct btrfs_remap_item {\n++\t__le64 address;\n++} __attribute__ ((__packed__));\n++\n+ #endif /* _BTRFS_CTREE_H_ */\n+diff --git a/bundled/linux/include/uapi/linux/ethtool.h b/bundled/linux/include/uapi/linux/ethtool.h\n+index 046eb223f..7a13192e7 100644\n+--- a/bundled/linux/include/uapi/linux/ethtool.h\n++++ b/bundled/linux/include/uapi/linux/ethtool.h\n+@@ -15,11 +15,10 @@\n+ #define _LINUX_ETHTOOL_H\n+ \n+ #include <linux/const.h>\n++#include <linux/typelimits.h>\n+ #include <linux/types.h>\n+ #include <linux/if_ether.h>\n+ \n+-#include <limits.h> /* for INT_MAX */\n+-\n+ /* All structures exposed to userland should be defined such that they\n+  * have the same layout for 32-bit and 64-bit userland.\n+  */\n+@@ -601,6 +600,8 @@ enum ethtool_link_ext_state {\n+ \tETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED,\n+ \tETHTOOL_LINK_EXT_STATE_OVERHEAT,\n+ \tETHTOOL_LINK_EXT_STATE_MODULE,\n++\tETHTOOL_LINK_EXT_STATE_OTP_SPEED_VIOLATION,\n++\tETHTOOL_LINK_EXT_STATE_BMC_REQUEST_DOWN,\n+ };\n+ \n+ /* More information in addition to ETHTOOL_LINK_EXT_STATE_AUTONEG. */\n+@@ -1092,13 +1093,20 @@ enum ethtool_module_fw_flash_status {\n+  * struct ethtool_gstrings - string set for data tagging\n+  * @cmd: Command number = %ETHTOOL_GSTRINGS\n+  * @string_set: String set ID; one of &enum ethtool_stringset\n+- * @len: On return, the number of strings in the string set\n++ * @len: Number of strings in the string set\n+  * @data: Buffer for strings.  Each string is null-padded to a size of\n+  *\t%ETH_GSTRING_LEN.\n+  *\n+  * Users must use %ETHTOOL_GSSET_INFO to find the number of strings in\n+  * the string set.  They must allocate a buffer of the appropriate\n+  * size immediately following this structure.\n++ *\n++ * Setting @len on input is optional (though preferred), but must be zeroed\n++ * otherwise.\n++ * When set, @len will return the requested count if it matches the actual\n++ * count; otherwise, it will be zero.\n++ * This prevents issues when the number of strings is different than the\n++ * userspace allocation.\n+  */\n+ struct ethtool_gstrings {\n+ \t__u32\tcmd;\n+@@ -1175,13 +1183,20 @@ struct ethtool_test {\n+ /**\n+  * struct ethtool_stats - device-specific statistics\n+  * @cmd: Command number = %ETHTOOL_GSTATS\n+- * @n_stats: On return, the number of statistics\n++ * @n_stats: Number of statistics\n+  * @data: Array of statistics\n+  *\n+  * Users must use %ETHTOOL_GSSET_INFO or %ETHTOOL_GDRVINFO to find the\n+  * number of statistics that will be returned.  They must allocate a\n+  * buffer of the appropriate size (8 * number of statistics)\n+  * immediately following this structure.\n++ *\n++ * Setting @n_stats on input is optional (though preferred), but must be zeroed\n++ * otherwise.\n++ * When set, @n_stats will return the requested count if it matches the actual\n++ * count; otherwise, it will be zero.\n++ * This prevents issues when the number of stats is different than the\n++ * userspace allocation.\n+  */\n+ struct ethtool_stats {\n+ \t__u32\tcmd;\n+@@ -2188,6 +2203,7 @@ enum ethtool_link_mode_bit_indices {\n+ #define SPEED_40000\t\t40000\n+ #define SPEED_50000\t\t50000\n+ #define SPEED_56000\t\t56000\n++#define SPEED_80000\t\t80000\n+ #define SPEED_100000\t\t100000\n+ #define SPEED_200000\t\t200000\n+ #define SPEED_400000\t\t400000\n+@@ -2198,7 +2214,7 @@ enum ethtool_link_mode_bit_indices {\n+ \n+ static __inline__ int ethtool_validate_speed(__u32 speed)\n+ {\n+-\treturn speed <= INT_MAX || speed == (__u32)SPEED_UNKNOWN;\n++\treturn speed <= __KERNEL_INT_MAX || speed == (__u32)SPEED_UNKNOWN;\n+ }\n+ \n+ /* Duplex, half or full. */\n+diff --git a/bundled/linux/include/uapi/linux/fs.h b/bundled/linux/include/uapi/linux/fs.h\n+index 59af514fe..1f54423d3 100644\n+--- a/bundled/linux/include/uapi/linux/fs.h\n++++ b/bundled/linux/include/uapi/linux/fs.h\n+@@ -249,6 +249,7 @@ struct file_attr {\n+ #define FS_XFLAG_FILESTREAM\t0x00004000\t/* use filestream allocator */\n+ #define FS_XFLAG_DAX\t\t0x00008000\t/* use DAX for IO */\n+ #define FS_XFLAG_COWEXTSIZE\t0x00010000\t/* CoW extent size allocator hint */\n++#define FS_XFLAG_VERITY\t\t0x00020000\t/* fs-verity enabled */\n+ #define FS_XFLAG_HASATTR\t0x80000000\t/* no DIFLAG for this\t*/\n+ \n+ /* the read-only stuff doesn't really belong here, but any other place is\n+diff --git a/bundled/linux/include/uapi/linux/if_alg.h b/bundled/linux/include/uapi/linux/if_alg.h\n+index 0824fbc02..79fd8956c 100644\n+--- a/bundled/linux/include/uapi/linux/if_alg.h\n++++ b/bundled/linux/include/uapi/linux/if_alg.h\n+@@ -42,7 +42,7 @@ struct sockaddr_alg_new {\n+ \n+ struct af_alg_iv {\n+ \t__u32\tivlen;\n+-\t__u8\tiv[];\n++\t__u8\tiv[] __counted_by(ivlen);\n+ };\n+ \n+ /* Socket options */\n+diff --git a/bundled/linux/include/uapi/linux/if_link.h b/bundled/linux/include/uapi/linux/if_link.h\n+index d05f5cc75..2037afbc4 100644\n+--- a/bundled/linux/include/uapi/linux/if_link.h\n++++ b/bundled/linux/include/uapi/linux/if_link.h\n+@@ -1441,6 +1441,7 @@ enum {\n+ \tIFLA_GENEVE_DF,\n+ \tIFLA_GENEVE_INNER_PROTO_INHERIT,\n+ \tIFLA_GENEVE_PORT_RANGE,\n++\tIFLA_GENEVE_GRO_HINT,\n+ \t__IFLA_GENEVE_MAX\n+ };\n+ #define IFLA_GENEVE_MAX\t(__IFLA_GENEVE_MAX - 1)\n+diff --git a/bundled/linux/include/uapi/linux/landlock.h b/bundled/linux/include/uapi/linux/landlock.h\n+index fde9a3e7f..f729a3333 100644\n+--- a/bundled/linux/include/uapi/linux/landlock.h\n++++ b/bundled/linux/include/uapi/linux/landlock.h\n+@@ -117,11 +117,24 @@ struct landlock_ruleset_attr {\n+  *     future nested domains, not the one being created. It can also be used\n+  *     with a @ruleset_fd value of -1 to mute subdomain logs without creating a\n+  *     domain.\n++ *\n++ * The following flag supports policy enforcement in multithreaded processes:\n++ *\n++ * %LANDLOCK_RESTRICT_SELF_TSYNC\n++ *     Applies the new Landlock configuration atomically to all threads of the\n++ *     current process, including the Landlock domain and logging\n++ *     configuration. This overrides the Landlock configuration of sibling\n++ *     threads, irrespective of previously established Landlock domains and\n++ *     logging configurations on these threads.\n++ *\n++ *     If the calling thread is running with no_new_privs, this operation\n++ *     enables no_new_privs on the sibling threads as well.\n+  */\n+ /* clang-format off */\n+ #define LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF\t\t(1U << 0)\n+ #define LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON\t\t\t(1U << 1)\n+ #define LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF\t\t(1U << 2)\n++#define LANDLOCK_RESTRICT_SELF_TSYNC\t\t\t\t(1U << 3)\n+ /* clang-format on */\n+ \n+ /**\n+@@ -182,11 +195,13 @@ struct landlock_net_port_attr {\n+ \t * It should be noted that port 0 passed to :manpage:`bind(2)` will bind\n+ \t * to an available port from the ephemeral port range.  This can be\n+ \t * configured with the ``/proc/sys/net/ipv4/ip_local_port_range`` sysctl\n+-\t * (also used for IPv6).\n++\t * (also used for IPv6), and within that range, on a per-socket basis\n++\t * with ``setsockopt(IP_LOCAL_PORT_RANGE)``.\n+ \t *\n+-\t * A Landlock rule with port 0 and the ``LANDLOCK_ACCESS_NET_BIND_TCP``\n++\t * A Landlock rule with port 0 and the %LANDLOCK_ACCESS_NET_BIND_TCP\n+ \t * right means that requesting to bind on port 0 is allowed and it will\n+-\t * automatically translate to binding on the related port range.\n++\t * automatically translate to binding on a kernel-assigned ephemeral\n++\t * port.\n+ \t */\n+ \t__u64 port;\n+ };\n+@@ -216,6 +231,23 @@ struct landlock_net_port_attr {\n+  *   :manpage:`ftruncate(2)`, :manpage:`creat(2)`, or :manpage:`open(2)` with\n+  *   ``O_TRUNC``.  This access right is available since the third version of the\n+  *   Landlock ABI.\n++ * - %LANDLOCK_ACCESS_FS_IOCTL_DEV: Invoke :manpage:`ioctl(2)` commands on an opened\n++ *   character or block device.\n++ *\n++ *   This access right applies to all `ioctl(2)` commands implemented by device\n++ *   drivers.  However, the following common IOCTL commands continue to be\n++ *   invokable independent of the %LANDLOCK_ACCESS_FS_IOCTL_DEV right:\n++ *\n++ *   * IOCTL commands targeting file descriptors (``FIOCLEX``, ``FIONCLEX``),\n++ *   * IOCTL commands targeting file descriptions (``FIONBIO``, ``FIOASYNC``),\n++ *   * IOCTL commands targeting file systems (``FIFREEZE``, ``FITHAW``,\n++ *     ``FIGETBSZ``, ``FS_IOC_GETFSUUID``, ``FS_IOC_GETFSSYSFSPATH``)\n++ *   * Some IOCTL commands which do not make sense when used with devices, but\n++ *     whose implementations are safe and return the right error codes\n++ *     (``FS_IOC_FIEMAP``, ``FICLONE``, ``FICLONERANGE``, ``FIDEDUPERANGE``)\n++ *\n++ *   This access right is available since the fifth version of the Landlock\n++ *   ABI.\n+  *\n+  * Whether an opened file can be truncated with :manpage:`ftruncate(2)` or used\n+  * with `ioctl(2)` is determined during :manpage:`open(2)`, in the same way as\n+@@ -275,26 +307,6 @@ struct landlock_net_port_attr {\n+  *   If multiple requirements are not met, the ``EACCES`` error code takes\n+  *   precedence over ``EXDEV``.\n+  *\n+- * The following access right applies both to files and directories:\n+- *\n+- * - %LANDLOCK_ACCESS_FS_IOCTL_DEV: Invoke :manpage:`ioctl(2)` commands on an opened\n+- *   character or block device.\n+- *\n+- *   This access right applies to all `ioctl(2)` commands implemented by device\n+- *   drivers.  However, the following common IOCTL commands continue to be\n+- *   invokable independent of the %LANDLOCK_ACCESS_FS_IOCTL_DEV right:\n+- *\n+- *   * IOCTL commands targeting file descriptors (``FIOCLEX``, ``FIONCLEX``),\n+- *   * IOCTL commands targeting file descriptions (``FIONBIO``, ``FIOASYNC``),\n+- *   * IOCTL commands targeting file systems (``FIFREEZE``, ``FITHAW``,\n+- *     ``FIGETBSZ``, ``FS_IOC_GETFSUUID``, ``FS_IOC_GETFSSYSFSPATH``)\n+- *   * Some IOCTL commands which do not make sense when used with devices, but\n+- *     whose implementations are safe and return the right error codes\n+- *     (``FS_IOC_FIEMAP``, ``FICLONE``, ``FICLONERANGE``, ``FIDEDUPERANGE``)\n+- *\n+- *   This access right is available since the fifth version of the Landlock\n+- *   ABI.\n+- *\n+  * .. warning::\n+  *\n+  *   It is currently not possible to restrict some file-related actions\n+@@ -332,13 +344,12 @@ struct landlock_net_port_attr {\n+  * These flags enable to restrict a sandboxed process to a set of network\n+  * actions.\n+  *\n+- * This is supported since Landlock ABI version 4.\n+- *\n+  * The following access rights apply to TCP port numbers:\n+  *\n+- * - %LANDLOCK_ACCESS_NET_BIND_TCP: Bind a TCP socket to a local port.\n+- * - %LANDLOCK_ACCESS_NET_CONNECT_TCP: Connect an active TCP socket to\n+- *   a remote port.\n++ * - %LANDLOCK_ACCESS_NET_BIND_TCP: Bind TCP sockets to the given local\n++ *   port. Support added in Landlock ABI version 4.\n++ * - %LANDLOCK_ACCESS_NET_CONNECT_TCP: Connect TCP sockets to the given\n++ *   remote port. Support added in Landlock ABI version 4.\n+  */\n+ /* clang-format off */\n+ #define LANDLOCK_ACCESS_NET_BIND_TCP\t\t\t(1ULL << 0)\n+diff --git a/bundled/linux/include/uapi/linux/mount.h b/bundled/linux/include/uapi/linux/mount.h\n+index 534dc2f1d..96f2d20e7 100644\n+--- a/bundled/linux/include/uapi/linux/mount.h\n++++ b/bundled/linux/include/uapi/linux/mount.h\n+@@ -61,7 +61,8 @@\n+ /*\n+  * open_tree() flags.\n+  */\n+-#define OPEN_TREE_CLONE\t\t1\t\t/* Clone the target tree and attach the clone */\n++#define OPEN_TREE_CLONE\t\t(1 << 0)\t/* Clone the target tree and attach the clone */\n++#define OPEN_TREE_NAMESPACE\t(1 << 1)\t/* Clone the target tree into a new mount namespace */\n+ #define OPEN_TREE_CLOEXEC\tO_CLOEXEC\t/* Close the file on execve() */\n+ \n+ /*\n+@@ -197,7 +198,10 @@ struct statmount {\n+  */\n+ struct mnt_id_req {\n+ \t__u32 size;\n+-\t__u32 mnt_ns_fd;\n++\tunion {\n++\t\t__u32 mnt_ns_fd;\n++\t\t__u32 mnt_fd;\n++\t};\n+ \t__u64 mnt_id;\n+ \t__u64 param;\n+ \t__u64 mnt_ns_id;\n+@@ -232,4 +236,9 @@ struct mnt_id_req {\n+ #define LSMT_ROOT\t\t0xffffffffffffffff\t/* root mount */\n+ #define LISTMOUNT_REVERSE\t(1 << 0) /* List later mounts first */\n+ \n++/*\n++ * @flag bits for statmount(2)\n++ */\n++#define STATMOUNT_BY_FD\t\t0x00000001U\t/* want mountinfo for given fd */\n++\n+ #endif /* _LINUX_MOUNT_H */\n+diff --git a/bundled/linux/include/uapi/linux/mptcp_pm.h b/bundled/linux/include/uapi/linux/mptcp_pm.h\n+index 593be618b..6e38dfc9f 100644\n+--- a/bundled/linux/include/uapi/linux/mptcp_pm.h\n++++ b/bundled/linux/include/uapi/linux/mptcp_pm.h\n+@@ -11,7 +11,7 @@\n+ #define MPTCP_PM_VER\t1\n+ \n+ /**\n+- * enum mptcp_event_type\n++ * enum mptcp_event_type - Netlink MPTCP event types\n+  * @MPTCP_EVENT_UNSPEC: unused event\n+  * @MPTCP_EVENT_CREATED: A new MPTCP connection has been created. It is the\n+  *   good time to allocate memory and send ADD_ADDR if needed. Depending on the\n+diff --git a/bundled/linux/include/uapi/linux/nl80211.h b/bundled/linux/include/uapi/linux/nl80211.h\n+index 8134f10e4..b63f71850 100644\n+--- a/bundled/linux/include/uapi/linux/nl80211.h\n++++ b/bundled/linux/include/uapi/linux/nl80211.h\n+@@ -11,7 +11,7 @@\n+  * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>\n+  * Copyright 2008 Colin McCabe <colin@cozybit.com>\n+  * Copyright 2015-2017\tIntel Deutschland GmbH\n+- * Copyright (C) 2018-2025 Intel Corporation\n++ * Copyright (C) 2018-2026 Intel Corporation\n+  *\n+  * Permission to use, copy, modify, and/or distribute this software for any\n+  * purpose with or without fee is hereby granted, provided that the above\n+@@ -2880,8 +2880,9 @@ enum nl80211_commands {\n+  *\tindex. If the userspace includes more RNR elements than number of\n+  *\tMBSSID elements then these will be added in every EMA beacon.\n+  *\n+- * @NL80211_ATTR_MLO_LINK_DISABLED: Flag attribute indicating that the link is\n+- *\tdisabled.\n++ * @NL80211_ATTR_MLO_LINK_DISABLED: Unused. It was used to indicate that a link\n++ *\tis disabled during association. However, the AP will send the\n++ *\tinformation by including a TTLM in the association response.\n+  *\n+  * @NL80211_ATTR_BSS_DUMP_INCLUDE_USE_DATA: Include BSS usage data, i.e.\n+  *\tinclude BSSes that can only be used in restricted scenarios and/or\n+@@ -2973,6 +2974,16 @@ enum nl80211_commands {\n+  *\tprimary channel is 2 MHz wide, and the control channel designates\n+  *\tthe 1 MHz primary subchannel within that 2 MHz primary.\n+  *\n++ * @NL80211_ATTR_EPP_PEER: A flag attribute to indicate if the peer is an EPP\n++ *\tSTA. Used with %NL80211_CMD_NEW_STA and %NL80211_CMD_ADD_LINK_STA\n++ *\n++ * @NL80211_ATTR_UHR_CAPABILITY: UHR Capability information element (from\n++ *\tassociation request when used with NL80211_CMD_NEW_STATION). Can be set\n++ *\tonly if HE/EHT are also available.\n++ * @NL80211_ATTR_DISABLE_UHR: Force UHR capable interfaces to disable\n++ *\tthis feature during association. This is a flag attribute.\n++ *\tCurrently only supported in mac80211 drivers.\n++ *\n+  * @NUM_NL80211_ATTR: total number of nl80211_attrs available\n+  * @NL80211_ATTR_MAX: highest attribute number currently defined\n+  * @__NL80211_ATTR_AFTER_LAST: internal use\n+@@ -3541,6 +3552,11 @@ enum nl80211_attrs {\n+ \n+ \tNL80211_ATTR_S1G_PRIMARY_2MHZ,\n+ \n++\tNL80211_ATTR_EPP_PEER,\n++\n++\tNL80211_ATTR_UHR_CAPABILITY,\n++\tNL80211_ATTR_DISABLE_UHR,\n++\n+ \t/* add attributes here, update the policy in nl80211.c */\n+ \n+ \t__NL80211_ATTR_AFTER_LAST,\n+@@ -3893,6 +3909,12 @@ enum nl80211_eht_ru_alloc {\n+  * @NL80211_RATE_INFO_4_MHZ_WIDTH: 4 MHz S1G rate\n+  * @NL80211_RATE_INFO_8_MHZ_WIDTH: 8 MHz S1G rate\n+  * @NL80211_RATE_INFO_16_MHZ_WIDTH: 16 MHz S1G rate\n++ * @NL80211_RATE_INFO_UHR_MCS: UHR MCS index (u8, 0-15, 17, 19, 20, 23)\n++ *\tNote that the other EHT attributes (such as @NL80211_RATE_INFO_EHT_NSS)\n++ *\tare used in conjunction with this where applicable\n++ * @NL80211_RATE_INFO_UHR_ELR: UHR ELR flag, which restricts NSS to 1,\n++ *\tMCS to 0 or 1, and GI to %NL80211_RATE_INFO_EHT_GI_1_6.\n++ * @NL80211_RATE_INFO_UHR_IM: UHR Interference Mitigation flag\n+  * @__NL80211_RATE_INFO_AFTER_LAST: internal use\n+  */\n+ enum nl80211_rate_info {\n+@@ -3926,6 +3948,9 @@ enum nl80211_rate_info {\n+ \tNL80211_RATE_INFO_4_MHZ_WIDTH,\n+ \tNL80211_RATE_INFO_8_MHZ_WIDTH,\n+ \tNL80211_RATE_INFO_16_MHZ_WIDTH,\n++\tNL80211_RATE_INFO_UHR_MCS,\n++\tNL80211_RATE_INFO_UHR_ELR,\n++\tNL80211_RATE_INFO_UHR_IM,\n+ \n+ \t/* keep last */\n+ \t__NL80211_RATE_INFO_AFTER_LAST,\n+@@ -4248,6 +4273,10 @@ enum nl80211_mpath_info {\n+  *\tcapabilities element\n+  * @NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PPE: EHT PPE thresholds information as\n+  *\tdefined in EHT capabilities element\n++ * @NL80211_BAND_IFTYPE_ATTR_UHR_CAP_MAC: UHR MAC capabilities as in UHR\n++ *\tcapabilities element\n++ * @NL80211_BAND_IFTYPE_ATTR_UHR_CAP_PHY: UHR PHY capabilities as in UHR\n++ *\tcapabilities element\n+  * @__NL80211_BAND_IFTYPE_ATTR_AFTER_LAST: internal use\n+  * @NL80211_BAND_IFTYPE_ATTR_MAX: highest band attribute currently defined\n+  */\n+@@ -4265,6 +4294,8 @@ enum nl80211_band_iftype_attr {\n+ \tNL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY,\n+ \tNL80211_BAND_IFTYPE_ATTR_EHT_CAP_MCS_SET,\n+ \tNL80211_BAND_IFTYPE_ATTR_EHT_CAP_PPE,\n++\tNL80211_BAND_IFTYPE_ATTR_UHR_CAP_MAC,\n++\tNL80211_BAND_IFTYPE_ATTR_UHR_CAP_PHY,\n+ \n+ \t/* keep last */\n+ \t__NL80211_BAND_IFTYPE_ATTR_AFTER_LAST,\n+@@ -4444,6 +4475,11 @@ enum nl80211_wmm_rule {\n+  *\tchannel in current regulatory domain.\n+  * @NL80211_FREQUENCY_ATTR_NO_16MHZ: 16 MHz operation is not allowed on this\n+  *\tchannel in current regulatory domain.\n++ * @NL80211_FREQUENCY_ATTR_S1G_NO_PRIMARY: Channel is not permitted for use\n++ *\tas a primary channel. Does not prevent the channel from existing\n++ *\tas a non-primary subchannel. Only applicable to S1G channels.\n++ * @NL80211_FREQUENCY_ATTR_NO_UHR: UHR operation is not allowed on this channel\n++ *\tin current regulatory domain.\n+  * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number\n+  *\tcurrently defined\n+  * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use\n+@@ -4492,6 +4528,8 @@ enum nl80211_frequency_attr {\n+ \tNL80211_FREQUENCY_ATTR_NO_4MHZ,\n+ \tNL80211_FREQUENCY_ATTR_NO_8MHZ,\n+ \tNL80211_FREQUENCY_ATTR_NO_16MHZ,\n++\tNL80211_FREQUENCY_ATTR_S1G_NO_PRIMARY,\n++\tNL80211_FREQUENCY_ATTR_NO_UHR,\n+ \n+ \t/* keep last */\n+ \t__NL80211_FREQUENCY_ATTR_AFTER_LAST,\n+@@ -4705,6 +4743,7 @@ enum nl80211_sched_scan_match_attr {\n+  *\tdespite NO_IR configuration.\n+  * @NL80211_RRF_ALLOW_20MHZ_ACTIVITY: Allow activity in 20 MHz bandwidth,\n+  *\tdespite NO_IR configuration.\n++ * @NL80211_RRF_NO_UHR: UHR operation not allowed\n+  */\n+ enum nl80211_reg_rule_flags {\n+ \tNL80211_RRF_NO_OFDM                 = 1 << 0,\n+@@ -4731,6 +4770,7 @@ enum nl80211_reg_rule_flags {\n+ \tNL80211_RRF_NO_6GHZ_AFC_CLIENT      = 1 << 23,\n+ \tNL80211_RRF_ALLOW_6GHZ_VLP_AP       = 1 << 24,\n+ \tNL80211_RRF_ALLOW_20MHZ_ACTIVITY    = 1 << 25,\n++\tNL80211_RRF_NO_UHR\t\t    = 1 << 26,\n+ };\n+ \n+ #define NL80211_RRF_PASSIVE_SCAN\tNL80211_RRF_NO_IR\n+@@ -5425,6 +5465,7 @@ enum nl80211_bss_status {\n+  * @NL80211_AUTHTYPE_FILS_SK: Fast Initial Link Setup shared key\n+  * @NL80211_AUTHTYPE_FILS_SK_PFS: Fast Initial Link Setup shared key with PFS\n+  * @NL80211_AUTHTYPE_FILS_PK: Fast Initial Link Setup public key\n++ * @NL80211_AUTHTYPE_EPPKE: Enhanced Privacy Protection Key Exchange\n+  * @__NL80211_AUTHTYPE_NUM: internal\n+  * @NL80211_AUTHTYPE_MAX: maximum valid auth algorithm\n+  * @NL80211_AUTHTYPE_AUTOMATIC: determine automatically (if necessary by\n+@@ -5440,6 +5481,7 @@ enum nl80211_auth_type {\n+ \tNL80211_AUTHTYPE_FILS_SK,\n+ \tNL80211_AUTHTYPE_FILS_SK_PFS,\n+ \tNL80211_AUTHTYPE_FILS_PK,\n++\tNL80211_AUTHTYPE_EPPKE,\n+ \n+ \t/* keep last */\n+ \t__NL80211_AUTHTYPE_NUM,\n+@@ -6744,6 +6786,15 @@ enum nl80211_feature_flags {\n+  * @NL80211_EXT_FEATURE_BEACON_RATE_EHT: Driver supports beacon rate\n+  *\tconfiguration (AP/mesh) with EHT rates.\n+  *\n++ * @NL80211_EXT_FEATURE_EPPKE: Driver supports Enhanced Privacy Protection\n++ *\tKey Exchange (EPPKE) with user space SME (NL80211_CMD_AUTHENTICATE)\n++ *\tin non-AP STA mode.\n++ *\n++ * @NL80211_EXT_FEATURE_ASSOC_FRAME_ENCRYPTION: This specifies that the\n++ *\tdriver supports encryption of (Re)Association Request and Response\n++ *\tframes in both non‑AP STA and AP mode as specified in\n++ *\t\"IEEE P802.11bi/D3.0, 12.16.6\".\n++ *\n+  * @NUM_NL80211_EXT_FEATURES: number of extended features.\n+  * @MAX_NL80211_EXT_FEATURES: highest extended feature index.\n+  */\n+@@ -6820,6 +6871,8 @@ enum nl80211_ext_feature_index {\n+ \tNL80211_EXT_FEATURE_DFS_CONCURRENT,\n+ \tNL80211_EXT_FEATURE_SPP_AMSDU_SUPPORT,\n+ \tNL80211_EXT_FEATURE_BEACON_RATE_EHT,\n++\tNL80211_EXT_FEATURE_EPPKE,\n++\tNL80211_EXT_FEATURE_ASSOC_FRAME_ENCRYPTION,\n+ \n+ \t/* add new features before the definition below */\n+ \tNUM_NL80211_EXT_FEATURES,\n+@@ -7432,6 +7485,8 @@ enum nl80211_nan_band_conf_attributes {\n+  *\taddress that can take values from 50-6F-9A-01-00-00 to\n+  *\t50-6F-9A-01-FF-FF. This attribute is optional. If not present,\n+  *\ta random Cluster ID will be chosen.\n++ *\tThis attribute will be ignored in NL80211_CMD_CHANGE_NAN_CONFIG\n++ *\tsince after NAN was started, the cluster ID can no longer change.\n+  * @NL80211_NAN_CONF_EXTRA_ATTRS: Additional NAN attributes to be\n+  *\tpublished in the beacons. This is an optional byte array.\n+  * @NL80211_NAN_CONF_VENDOR_ELEMS: Vendor-specific elements that will\n+@@ -7766,6 +7821,30 @@ enum nl80211_peer_measurement_attrs {\n+  *\ttrigger based ranging measurement is supported\n+  * @NL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED: flag attribute indicating\n+  *\tif non-trigger-based ranging measurement is supported\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_6GHZ_SUPPORT: flag attribute indicating if\n++ *\tranging on the 6 GHz band is supported\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_TX_LTF_REP: u32 attribute indicating\n++ *\tthe maximum number of LTF repetitions the device can transmit in the\n++ *\tpreamble of the ranging NDP (zero means only one LTF, no repetitions)\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_RX_LTF_REP: u32 attribute indicating\n++ *\tthe maximum number of LTF repetitions the device can receive in the\n++ *\tpreamble of the ranging NDP (zero means only one LTF, no repetitions)\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_TX_STS: u32 attribute indicating\n++ *\tthe maximum number of space-time streams supported for ranging NDP TX\n++ *\t(zero-based)\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_RX_STS: u32 attribute indicating\n++ *\tthe maximum number of space-time streams supported for ranging NDP RX\n++ *\t(zero-based)\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_TOTAL_LTF_TX: u32 attribute indicating the\n++ *\tmaximum total number of LTFs the device can transmit. The total number\n++ *\tof LTFs is (number of LTF repetitions) * (number of space-time streams).\n++ *\tThis limits the allowed combinations of LTF repetitions and STS.\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_MAX_TOTAL_LTF_RX: u32 attribute indicating the\n++ *\tmaximum total number of LTFs the device can receive. The total number\n++ *\tof LTFs is (number of LTF repetitions) * (number of space-time streams).\n++ *\tThis limits the allowed combinations of LTF repetitions and STS.\n++ * @NL80211_PMSR_FTM_CAPA_ATTR_RSTA_SUPPORT: flag attribute indicating the\n++ *\tdevice supports operating as the RSTA in PMSR FTM request\n+  *\n+  * @NUM_NL80211_PMSR_FTM_CAPA_ATTR: internal\n+  * @NL80211_PMSR_FTM_CAPA_ATTR_MAX: highest attribute number\n+@@ -7783,6 +7862,14 @@ enum nl80211_peer_measurement_ftm_capa {\n+ \tNL80211_PMSR_FTM_CAPA_ATTR_MAX_FTMS_PER_BURST,\n+ \tNL80211_PMSR_FTM_CAPA_ATTR_TRIGGER_BASED,\n+ \tNL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_6GHZ_SUPPORT,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_MAX_TX_LTF_REP,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_MAX_RX_LTF_REP,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_MAX_TX_STS,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_MAX_RX_STS,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_MAX_TOTAL_LTF_TX,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_MAX_TOTAL_LTF_RX,\n++\tNL80211_PMSR_FTM_CAPA_ATTR_RSTA_SUPPORT,\n+ \n+ \t/* keep last */\n+ \tNUM_NL80211_PMSR_FTM_CAPA_ATTR,\n+@@ -7798,12 +7885,15 @@ enum nl80211_peer_measurement_ftm_capa {\n+  *\t&enum nl80211_preamble), optional for DMG (u32)\n+  * @NL80211_PMSR_FTM_REQ_ATTR_NUM_BURSTS_EXP: number of bursts exponent as in\n+  *\t802.11-2016 9.4.2.168 \"Fine Timing Measurement Parameters element\"\n+- *\t(u8, 0-15, optional with default 15 i.e. \"no preference\")\n++ *\t(u8, 0-15, optional with default 15 i.e. \"no preference\". No limit for\n++ *\t non-EDCA ranging)\n+  * @NL80211_PMSR_FTM_REQ_ATTR_BURST_PERIOD: interval between bursts in units\n+  *\tof 100ms (u16, optional with default 0)\n+  * @NL80211_PMSR_FTM_REQ_ATTR_BURST_DURATION: burst duration, as in 802.11-2016\n+  *\tTable 9-257 \"Burst Duration field encoding\" (u8, 0-15, optional with\n+- *\tdefault 15 i.e. \"no preference\")\n++ *\tdefault 15 i.e. \"no preference\"). For non-EDCA ranging, this is the\n++ *\tburst duration in milliseconds (optional with default 0, i.e. let the\n++ *\tdevice decide).\n+  * @NL80211_PMSR_FTM_REQ_ATTR_FTMS_PER_BURST: number of successful FTM frames\n+  *\trequested per burst\n+  *\t(u8, 0-31, optional with default 0 i.e. \"no preference\")\n+@@ -7832,6 +7922,14 @@ enum nl80211_peer_measurement_ftm_capa {\n+  * @NL80211_PMSR_FTM_REQ_ATTR_BSS_COLOR: optional. The BSS color of the\n+  *\tresponder. Only valid if %NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED\n+  *\tor %NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED is set.\n++ * @NL80211_PMSR_FTM_REQ_ATTR_RSTA: optional. Request to perform the measurement\n++ *\tas the RSTA (flag). When set, the device is expected to dwell on the\n++ *\tchannel specified in %NL80211_PMSR_PEER_ATTR_CHAN until it receives the\n++ *\tFTM request from the peer or the timeout specified by\n++ *\t%NL80211_ATTR_TIMEOUT has expired.\n++ *\tOnly valid if %NL80211_PMSR_FTM_REQ_ATTR_LMR_FEEDBACK is set (so the\n++ *\tRSTA will have the measurement results to report back in the FTM\n++ *\tresponse).\n+  *\n+  * @NUM_NL80211_PMSR_FTM_REQ_ATTR: internal\n+  * @NL80211_PMSR_FTM_REQ_ATTR_MAX: highest attribute number\n+@@ -7852,6 +7950,7 @@ enum nl80211_peer_measurement_ftm_req {\n+ \tNL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED,\n+ \tNL80211_PMSR_FTM_REQ_ATTR_LMR_FEEDBACK,\n+ \tNL80211_PMSR_FTM_REQ_ATTR_BSS_COLOR,\n++\tNL80211_PMSR_FTM_REQ_ATTR_RSTA,\n+ \n+ \t/* keep last */\n+ \tNUM_NL80211_PMSR_FTM_REQ_ATTR,\n+@@ -7936,6 +8035,8 @@ enum nl80211_peer_measurement_ftm_failure_reasons {\n+  *\t9.4.2.22.1) starting with the Measurement Token, with Measurement\n+  *\tType 11.\n+  * @NL80211_PMSR_FTM_RESP_ATTR_PAD: ignore, for u64/s64 padding only\n++ * @NL80211_PMSR_FTM_RESP_ATTR_BURST_PERIOD: actual burst period used by\n++ *\tthe responder (similar to request, u16)\n+  *\n+  * @NUM_NL80211_PMSR_FTM_RESP_ATTR: internal\n+  * @NL80211_PMSR_FTM_RESP_ATTR_MAX: highest attribute number\n+@@ -7964,6 +8065,7 @@ enum nl80211_peer_measurement_ftm_resp {\n+ \tNL80211_PMSR_FTM_RESP_ATTR_LCI,\n+ \tNL80211_PMSR_FTM_RESP_ATTR_CIVICLOC,\n+ \tNL80211_PMSR_FTM_RESP_ATTR_PAD,\n++\tNL80211_PMSR_FTM_RESP_ATTR_BURST_PERIOD,\n+ \n+ \t/* keep last */\n+ \tNUM_NL80211_PMSR_FTM_RESP_ATTR,\n+diff --git a/bundled/linux/include/uapi/linux/perf_event.h b/bundled/linux/include/uapi/linux/perf_event.h\n+index 210138d0f..b70e4b731 100644\n+--- a/bundled/linux/include/uapi/linux/perf_event.h\n++++ b/bundled/linux/include/uapi/linux/perf_event.h\n+@@ -2,7 +2,7 @@\n+ /*\n+  * Performance events:\n+  *\n+- *    Copyright (C) 2008-2009, Thomas Gleixner <tglx@linutronix.de>\n++ *    Copyright (C) 2008-2009, Linutronix GmbH, Thomas Gleixner <tglx@kernel.org>\n+  *    Copyright (C) 2008-2011, Red Hat, Inc., Ingo Molnar\n+  *    Copyright (C) 2008-2011, Red Hat, Inc., Peter Zijlstra\n+  *\n+@@ -1330,14 +1330,16 @@ union perf_mem_data_src {\n+ \t\t\tmem_snoopx  :  2, /* Snoop mode, ext */\n+ \t\t\tmem_blk     :  3, /* Access blocked */\n+ \t\t\tmem_hops    :  3, /* Hop level */\n+-\t\t\tmem_rsvd    : 18;\n++\t\t\tmem_region  :  5, /* cache/memory regions */\n++\t\t\tmem_rsvd    : 13;\n+ \t};\n+ };\n+ #elif defined(__BIG_ENDIAN_BITFIELD)\n+ union perf_mem_data_src {\n+ \t__u64 val;\n+ \tstruct {\n+-\t\t__u64\tmem_rsvd    : 18,\n++\t\t__u64\tmem_rsvd    : 13,\n++\t\t\tmem_region  :  5, /* cache/memory regions */\n+ \t\t\tmem_hops    :  3, /* Hop level */\n+ \t\t\tmem_blk     :  3, /* Access blocked */\n+ \t\t\tmem_snoopx  :  2, /* Snoop mode, ext */\n+@@ -1394,7 +1396,7 @@ union perf_mem_data_src {\n+ #define PERF_MEM_LVLNUM_L4\t\t\t0x0004 /* L4 */\n+ #define PERF_MEM_LVLNUM_L2_MHB\t\t\t0x0005 /* L2 Miss Handling Buffer */\n+ #define PERF_MEM_LVLNUM_MSC\t\t\t0x0006 /* Memory-side Cache */\n+-/* 0x007 available */\n++#define PERF_MEM_LVLNUM_L0\t\t\t0x0007 /* L0 */\n+ #define PERF_MEM_LVLNUM_UNC\t\t\t0x0008 /* Uncached */\n+ #define PERF_MEM_LVLNUM_CXL\t\t\t0x0009 /* CXL */\n+ #define PERF_MEM_LVLNUM_IO\t\t\t0x000a /* I/O */\n+@@ -1447,6 +1449,25 @@ union perf_mem_data_src {\n+ /* 5-7 available */\n+ #define PERF_MEM_HOPS_SHIFT\t\t\t43\n+ \n++/* Cache/Memory region */\n++#define PERF_MEM_REGION_NA\t\t0x0  /* Invalid */\n++#define PERF_MEM_REGION_RSVD\t\t0x01 /* Reserved */\n++#define PERF_MEM_REGION_L_SHARE\t\t0x02 /* Local CA shared cache */\n++#define PERF_MEM_REGION_L_NON_SHARE\t0x03 /* Local CA non-shared cache */\n++#define PERF_MEM_REGION_O_IO\t\t0x04 /* Other CA IO agent */\n++#define PERF_MEM_REGION_O_SHARE\t\t0x05 /* Other CA shared cache */\n++#define PERF_MEM_REGION_O_NON_SHARE\t0x06 /* Other CA non-shared cache */\n++#define PERF_MEM_REGION_MMIO\t\t0x07 /* MMIO */\n++#define PERF_MEM_REGION_MEM0\t\t0x08 /* Memory region 0 */\n++#define PERF_MEM_REGION_MEM1\t\t0x09 /* Memory region 1 */\n++#define PERF_MEM_REGION_MEM2\t\t0x0a /* Memory region 2 */\n++#define PERF_MEM_REGION_MEM3\t\t0x0b /* Memory region 3 */\n++#define PERF_MEM_REGION_MEM4\t\t0x0c /* Memory region 4 */\n++#define PERF_MEM_REGION_MEM5\t\t0x0d /* Memory region 5 */\n++#define PERF_MEM_REGION_MEM6\t\t0x0e /* Memory region 6 */\n++#define PERF_MEM_REGION_MEM7\t\t0x0f /* Memory region 7 */\n++#define PERF_MEM_REGION_SHIFT\t\t46\n++\n+ #define PERF_MEM_S(a, s) \\\n+ \t(((__u64)PERF_MEM_##a##_##s) << PERF_MEM_##a##_SHIFT)\n+ \n+diff --git a/bundled/linux/include/uapi/linux/pkt_sched.h b/bundled/linux/include/uapi/linux/pkt_sched.h\n+index bf05b13d6..dc40688e2 100644\n+--- a/bundled/linux/include/uapi/linux/pkt_sched.h\n++++ b/bundled/linux/include/uapi/linux/pkt_sched.h\n+@@ -1036,6 +1036,7 @@ enum {\n+ \tTCA_CAKE_STATS_DROP_NEXT_US,\n+ \tTCA_CAKE_STATS_P_DROP,\n+ \tTCA_CAKE_STATS_BLUE_TIMER_US,\n++\tTCA_CAKE_STATS_ACTIVE_QUEUES,\n+ \t__TCA_CAKE_STATS_MAX\n+ };\n+ #define TCA_CAKE_STATS_MAX (__TCA_CAKE_STATS_MAX - 1)\n+diff --git a/bundled/linux/include/uapi/linux/prctl.h b/bundled/linux/include/uapi/linux/prctl.h\n+index 51c4e8c82..55b0446ff 100644\n+--- a/bundled/linux/include/uapi/linux/prctl.h\n++++ b/bundled/linux/include/uapi/linux/prctl.h\n+@@ -386,4 +386,41 @@ struct prctl_mm_map {\n+ # define PR_FUTEX_HASH_SET_SLOTS\t1\n+ # define PR_FUTEX_HASH_GET_SLOTS\t2\n+ \n++/* RSEQ time slice extensions */\n++#define PR_RSEQ_SLICE_EXTENSION\t\t\t79\n++# define PR_RSEQ_SLICE_EXTENSION_GET\t\t1\n++# define PR_RSEQ_SLICE_EXTENSION_SET\t\t2\n++/*\n++ * Bits for RSEQ_SLICE_EXTENSION_GET/SET\n++ * PR_RSEQ_SLICE_EXT_ENABLE:\tEnable\n++ */\n++# define PR_RSEQ_SLICE_EXT_ENABLE\t\t0x01\n++\n++/*\n++ * Get the current indirect branch tracking configuration for the current\n++ * thread, this will be the value configured via PR_SET_INDIR_BR_LP_STATUS.\n++ */\n++#define PR_GET_INDIR_BR_LP_STATUS      80\n++\n++/*\n++ * Set the indirect branch tracking configuration. PR_INDIR_BR_LP_ENABLE will\n++ * enable cpu feature for user thread, to track all indirect branches and ensure\n++ * they land on arch defined landing pad instruction.\n++ * x86 - If enabled, an indirect branch must land on an ENDBRANCH instruction.\n++ * arch64 - If enabled, an indirect branch must land on a BTI instruction.\n++ * riscv - If enabled, an indirect branch must land on an lpad instruction.\n++ * PR_INDIR_BR_LP_DISABLE will disable feature for user thread and indirect\n++ * branches will no more be tracked by cpu to land on arch defined landing pad\n++ * instruction.\n++ */\n++#define PR_SET_INDIR_BR_LP_STATUS      81\n++# define PR_INDIR_BR_LP_ENABLE\t\t   (1UL << 0)\n++\n++/*\n++ * Prevent further changes to the specified indirect branch tracking\n++ * configuration.  All bits may be locked via this call, including\n++ * undefined bits.\n++ */\n++#define PR_LOCK_INDIR_BR_LP_STATUS      82\n++\n+ #endif /* _LINUX_PRCTL_H */\n+diff --git a/bundled/linux/include/uapi/linux/taskstats.h b/bundled/linux/include/uapi/linux/taskstats.h\n+index 5929030d4..3ae25f3ce 100644\n+--- a/bundled/linux/include/uapi/linux/taskstats.h\n++++ b/bundled/linux/include/uapi/linux/taskstats.h\n+@@ -18,6 +18,7 @@\n+ #define _LINUX_TASKSTATS_H\n+ \n+ #include <linux/types.h>\n++#include <linux/time_types.h>\n+ \n+ /* Format for per-task data returned to userland when\n+  *\t- a task exits\n+@@ -34,7 +35,7 @@\n+  */\n+ \n+ \n+-#define TASKSTATS_VERSION\t16\n++#define TASKSTATS_VERSION\t17\n+ #define TS_COMM_LEN\t\t32\t/* should be >= TASK_COMM_LEN\n+ \t\t\t\t\t * in linux/sched.h */\n+ \n+@@ -230,6 +231,16 @@ struct taskstats {\n+ \n+ \t__u64\tirq_delay_max;\n+ \t__u64\tirq_delay_min;\n++\n++\t/*v17: delay max timestamp record*/\n++\tstruct __kernel_timespec cpu_delay_max_ts;\n++\tstruct __kernel_timespec blkio_delay_max_ts;\n++\tstruct __kernel_timespec swapin_delay_max_ts;\n++\tstruct __kernel_timespec freepages_delay_max_ts;\n++\tstruct __kernel_timespec thrashing_delay_max_ts;\n++\tstruct __kernel_timespec compact_delay_max_ts;\n++\tstruct __kernel_timespec wpcopy_delay_max_ts;\n++\tstruct __kernel_timespec irq_delay_max_ts;\n+ };\n+ \n+ \n+diff --git a/bundled/linux/include/uapi/linux/tcp.h b/bundled/linux/include/uapi/linux/tcp.h\n+index e35d416b4..bac6e83f9 100644\n+--- a/bundled/linux/include/uapi/linux/tcp.h\n++++ b/bundled/linux/include/uapi/linux/tcp.h\n+@@ -226,6 +226,24 @@ enum tcp_ca_state {\n+ #define TCPF_CA_Loss\t(1<<TCP_CA_Loss)\n+ };\n+ \n++/* Values for tcpi_ecn_mode after negotiation */\n++#define TCPI_ECN_MODE_DISABLED\t\t0x0\n++#define TCPI_ECN_MODE_RFC3168\t\t0x1\n++#define TCPI_ECN_MODE_ACCECN\t\t0x2\n++#define TCPI_ECN_MODE_PENDING\t\t0x3\n++\n++/* Values for accecn_opt_seen */\n++#define TCP_ACCECN_OPT_NOT_SEEN\t\t0x0\n++#define TCP_ACCECN_OPT_EMPTY_SEEN\t0x1\n++#define TCP_ACCECN_OPT_COUNTER_SEEN\t0x2\n++#define TCP_ACCECN_OPT_FAIL_SEEN\t0x3\n++\n++/* Values for accecn_fail_mode */\n++#define TCP_ACCECN_ACE_FAIL_SEND\tBIT(0)\n++#define TCP_ACCECN_ACE_FAIL_RECV\tBIT(1)\n++#define TCP_ACCECN_OPT_FAIL_SEND\tBIT(2)\n++#define TCP_ACCECN_OPT_FAIL_RECV\tBIT(3)\n++\n+ struct tcp_info {\n+ \t__u8\ttcpi_state;\n+ \t__u8\ttcpi_ca_state;\n+@@ -316,15 +334,17 @@ struct tcp_info {\n+ \t\t\t\t\t * in milliseconds, including any\n+ \t\t\t\t\t * unfinished recovery.\n+ \t\t\t\t\t */\n+-\t__u32\ttcpi_received_ce;    /* # of CE marks received */\n++\t__u32\ttcpi_received_ce;    /* # of CE marked segments received */\n+ \t__u32\ttcpi_delivered_e1_bytes;  /* Accurate ECN byte counters */\n+ \t__u32\ttcpi_delivered_e0_bytes;\n+ \t__u32\ttcpi_delivered_ce_bytes;\n+ \t__u32\ttcpi_received_e1_bytes;\n+ \t__u32\ttcpi_received_e0_bytes;\n+ \t__u32\ttcpi_received_ce_bytes;\n+-\t__u16\ttcpi_accecn_fail_mode;\n+-\t__u16\ttcpi_accecn_opt_seen;\n++\t__u32\ttcpi_ecn_mode:2,\n++\t\ttcpi_accecn_opt_seen:2,\n++\t\ttcpi_accecn_fail_mode:4,\n++\t\ttcpi_options2:24;\n+ };\n+ \n+ /* netlink attributes types for SCM_TIMESTAMPING_OPT_STATS */\n+diff --git a/bundled/linux/include/uapi/linux/typelimits.h b/bundled/linux/include/uapi/linux/typelimits.h\n+new file mode 100644\n+index 000000000..8166c639b\n+--- /dev/null\n++++ b/bundled/linux/include/uapi/linux/typelimits.h\n+@@ -0,0 +1,8 @@\n++/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */\n++#ifndef _UAPI_LINUX_TYPELIMITS_H\n++#define _UAPI_LINUX_TYPELIMITS_H\n++\n++#define __KERNEL_INT_MAX ((int)(~0U >> 1))\n++#define __KERNEL_INT_MIN (-__KERNEL_INT_MAX - 1)\n++\n++#endif /* _UAPI_LINUX_TYPELIMITS_H */\n+diff --git a/bundled/linux/include/uapi/linux/v4l2-controls.h b/bundled/linux/include/uapi/linux/v4l2-controls.h\n+index 26c9e3255..52d87b330 100644\n+--- a/bundled/linux/include/uapi/linux/v4l2-controls.h\n++++ b/bundled/linux/include/uapi/linux/v4l2-controls.h\n+@@ -1188,6 +1188,8 @@ enum v4l2_flash_strobe_source {\n+ \n+ #define V4L2_CID_FLASH_CHARGE\t\t\t(V4L2_CID_FLASH_CLASS_BASE + 11)\n+ #define V4L2_CID_FLASH_READY\t\t\t(V4L2_CID_FLASH_CLASS_BASE + 12)\n++#define V4L2_CID_FLASH_DURATION\t\t\t(V4L2_CID_FLASH_CLASS_BASE + 13)\n++#define V4L2_CID_FLASH_STROBE_OE\t\t(V4L2_CID_FLASH_CLASS_BASE + 14)\n+ \n+ \n+ /* JPEG-class control IDs */\n+@@ -2095,6 +2097,8 @@ struct v4l2_ctrl_mpeg2_quantisation {\n+ #define V4L2_CID_STATELESS_HEVC_DECODE_MODE\t(V4L2_CID_CODEC_STATELESS_BASE + 405)\n+ #define V4L2_CID_STATELESS_HEVC_START_CODE\t(V4L2_CID_CODEC_STATELESS_BASE + 406)\n+ #define V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS (V4L2_CID_CODEC_STATELESS_BASE + 407)\n++#define V4L2_CID_STATELESS_HEVC_EXT_SPS_ST_RPS  (V4L2_CID_CODEC_STATELESS_BASE + 408)\n++#define V4L2_CID_STATELESS_HEVC_EXT_SPS_LT_RPS  (V4L2_CID_CODEC_STATELESS_BASE + 409)\n+ \n+ enum v4l2_stateless_hevc_decode_mode {\n+ \tV4L2_STATELESS_HEVC_DECODE_MODE_SLICE_BASED,\n+@@ -2550,6 +2554,65 @@ struct v4l2_ctrl_hevc_scaling_matrix {\n+ \t__u8\tscaling_list_dc_coef_32x32[2];\n+ };\n+ \n++#define V4L2_HEVC_EXT_SPS_ST_RPS_FLAG_INTER_REF_PIC_SET_PRED\t0x1\n++\n++/*\n++ * struct v4l2_ctrl_hevc_ext_sps_st_rps - HEVC short term RPS parameters\n++ *\n++ * Dynamic size 1-dimension array for short term RPS. The number of elements\n++ * is v4l2_ctrl_hevc_sps::num_short_term_ref_pic_sets. It can contain up to 65 elements.\n++ *\n++ * @delta_idx_minus1: Specifies the delta compare to the index. See details in section 7.4.8\n++ *                    \"Short-term reference picture set semantics\" of the specification.\n++ * @delta_rps_sign: Sign of the delta as specified in section 7.4.8 \"Short-term reference picture\n++ *                  set semantics\" of the specification.\n++ * @abs_delta_rps_minus1: Absolute delta RPS as specified in section 7.4.8 \"Short-term reference\n++ *                        picture set semantics\" of the specification.\n++ * @num_negative_pics: Number of short-term RPS entries that have picture order count values less\n++ *                     than the picture order count value of the current picture.\n++ * @num_positive_pics: Number of short-term RPS entries that have picture order count values\n++ *                     greater than the picture order count value of the current picture.\n++ * @used_by_curr_pic: Bit j specifies if short-term RPS j is used by the current picture.\n++ * @use_delta_flag: Bit j equals to 1 specifies that the j-th entry in the source candidate\n++ *                  short-term RPS is included in this candidate short-term RPS.\n++ * @delta_poc_s0_minus1: Specifies the negative picture order count delta for the i-th entry in\n++ *                       the short-term RPS. See details in section 7.4.8 \"Short-term reference\n++ *                       picture set semantics\" of the specification.\n++ * @delta_poc_s1_minus1: Specifies the positive picture order count delta for the i-th entry in\n++ *                       the short-term RPS. See details in section 7.4.8 \"Short-term reference\n++ *                       picture set semantics\" of the specification.\n++ * @flags: See V4L2_HEVC_EXT_SPS_ST_RPS_FLAG_{}\n++ */\n++struct v4l2_ctrl_hevc_ext_sps_st_rps {\n++\t__u8\tdelta_idx_minus1;\n++\t__u8\tdelta_rps_sign;\n++\t__u8\tnum_negative_pics;\n++\t__u8\tnum_positive_pics;\n++\t__u32\tused_by_curr_pic;\n++\t__u32\tuse_delta_flag;\n++\t__u16\tabs_delta_rps_minus1;\n++\t__u16\tdelta_poc_s0_minus1[16];\n++\t__u16\tdelta_poc_s1_minus1[16];\n++\t__u16\tflags;\n++};\n++\n++#define V4L2_HEVC_EXT_SPS_LT_RPS_FLAG_USED_LT\t\t0x1\n++\n++/*\n++ * struct v4l2_ctrl_hevc_ext_sps_lt_rps - HEVC long term RPS parameters\n++ *\n++ * Dynamic size 1-dimension array for long term RPS. The number of elements\n++ * is v4l2_ctrl_hevc_sps::num_long_term_ref_pics_sps. It can contain up to 65 elements.\n++ *\n++ * @lt_ref_pic_poc_lsb_sps: picture order count modulo MaxPicOrderCntLsb of the i-th candidate\n++ *                          long-term reference picture.\n++ * @flags: See V4L2_HEVC_EXT_SPS_LT_RPS_FLAG_{}\n++ */\n++struct v4l2_ctrl_hevc_ext_sps_lt_rps {\n++\t__u16\tlt_ref_pic_poc_lsb_sps;\n++\t__u16\tflags;\n++};\n++\n+ /* Stateless VP9 controls */\n+ \n+ #define V4L2_VP9_LOOP_FILTER_FLAG_DELTA_ENABLED\t0x1\n+diff --git a/bundled/linux/include/uapi/linux/version.h b/bundled/linux/include/uapi/linux/version.h\n+index 28ccfa734..42c0b30f5 100644\n+--- a/bundled/linux/include/uapi/linux/version.h\n++++ b/bundled/linux/include/uapi/linux/version.h\n+@@ -1,5 +1,5 @@\n+-#define LINUX_VERSION_CODE 398080\n++#define LINUX_VERSION_CODE 458752\n+ #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + ((c) > 255 ? 255 : (c)))\n+-#define LINUX_VERSION_MAJOR 6\n+-#define LINUX_VERSION_PATCHLEVEL 19\n++#define LINUX_VERSION_MAJOR 7\n++#define LINUX_VERSION_PATCHLEVEL 0\n+ #define LINUX_VERSION_SUBLEVEL 0\n+diff --git a/bundled/linux/include/uapi/linux/videodev2.h b/bundled/linux/include/uapi/linux/videodev2.h\n+index 0708d6683..feb326686 100644\n+--- a/bundled/linux/include/uapi/linux/videodev2.h\n++++ b/bundled/linux/include/uapi/linux/videodev2.h\n+@@ -748,6 +748,7 @@ struct v4l2_pix_format {\n+ #define V4L2_PIX_FMT_H264_SLICE v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */\n+ #define V4L2_PIX_FMT_HEVC_SLICE v4l2_fourcc('S', '2', '6', '5') /* HEVC parsed slices */\n+ #define V4L2_PIX_FMT_AV1_FRAME v4l2_fourcc('A', 'V', '1', 'F') /* AV1 parsed frame */\n++#define V4L2_PIX_FMT_AV1      v4l2_fourcc('A', 'V', '0', '1') /* AV1 */\n+ #define V4L2_PIX_FMT_SPK      v4l2_fourcc('S', 'P', 'K', '0') /* Sorenson Spark */\n+ #define V4L2_PIX_FMT_RV30     v4l2_fourcc('R', 'V', '3', '0') /* RealVideo 8 */\n+ #define V4L2_PIX_FMT_RV40     v4l2_fourcc('R', 'V', '4', '0') /* RealVideo 9 & 10 */\n+@@ -1916,6 +1917,8 @@ enum v4l2_ctrl_type {\n+ \tV4L2_CTRL_TYPE_HEVC_SLICE_PARAMS\t= 0x0272,\n+ \tV4L2_CTRL_TYPE_HEVC_SCALING_MATRIX\t= 0x0273,\n+ \tV4L2_CTRL_TYPE_HEVC_DECODE_PARAMS\t= 0x0274,\n++\tV4L2_CTRL_TYPE_HEVC_EXT_SPS_ST_RPS\t= 0x0275,\n++\tV4L2_CTRL_TYPE_HEVC_EXT_SPS_LT_RPS\t= 0x0276,\n+ \n+ \tV4L2_CTRL_TYPE_AV1_SEQUENCE\t    = 0x280,\n+ \tV4L2_CTRL_TYPE_AV1_TILE_GROUP_ENTRY = 0x281,\n+-- \n+2.47.3\n+\ndiff --git a/package/strace/0002-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch b/package/strace/0002-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch\nnew file mode 100644\nindex 0000000000..e0917c7b7e\n--- /dev/null\n+++ b/package/strace/0002-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch\n@@ -0,0 +1,165 @@\n+From 619b1e60da171d573481d2fbfea7645c8a80d1ae Mon Sep 17 00:00:00 2001\n+From: \"Dmitry V. Levin\" <ldv@strace.io>\n+Date: Tue, 10 Mar 2026 08:00:00 +0000\n+Subject: [PATCH] bundled: update linux/io_uring.h to v7.0-rc3\n+\n+* bundled/linux/include/uapi/linux/io_uring.h: Update to\n+headers_install'ed Linux kernel v7.0-rc3.\n+* src/io_uring.c (print_io_uring_zcrx_ifq_reg): Follow the rename\n+of __resv2 field of struct io_uring_zcrx_ifq_reg to rx_buf_len.\n+* tests/io_uring_register.c (test_IORING_REGISTER_ZCRX_IFQ): Update\n+expected output.\n+\n+Upstream: https://github.com/strace/strace/commit/619b1e60da171d573481d2fbfea7645c8a80d1ae\n+\n+Signed-off-by: Bernd Kuhls <bernd@kuhls.net>\n+---\n+ bundled/linux/include/uapi/linux/io_uring.h | 35 +++++++++++++++++++--\n+ src/io_uring.c                              |  7 ++---\n+ tests/io_uring_register.c                   |  8 ++---\n+ 3 files changed, 39 insertions(+), 11 deletions(-)\n+\n+diff --git a/bundled/linux/include/uapi/linux/io_uring.h b/bundled/linux/include/uapi/linux/io_uring.h\n+index b5b23c0d5..1ff16141c 100644\n+--- a/bundled/linux/include/uapi/linux/io_uring.h\n++++ b/bundled/linux/include/uapi/linux/io_uring.h\n+@@ -188,7 +188,8 @@ enum io_uring_sqe_flags_bit {\n+ /*\n+  * If COOP_TASKRUN is set, get notified if task work is available for\n+  * running and a kernel transition would be needed to run it. This sets\n+- * IORING_SQ_TASKRUN in the sq ring flags. Not valid with COOP_TASKRUN.\n++ * IORING_SQ_TASKRUN in the sq ring flags. Not valid without COOP_TASKRUN\n++ * or DEFER_TASKRUN.\n+  */\n+ #define IORING_SETUP_TASKRUN_FLAG\t(1U << 9)\n+ #define IORING_SETUP_SQE128\t\t(1U << 10) /* SQEs are 128 byte */\n+@@ -237,6 +238,18 @@ enum io_uring_sqe_flags_bit {\n+  */\n+ #define IORING_SETUP_SQE_MIXED\t\t(1U << 19)\n+ \n++/*\n++ * When set, io_uring ignores SQ head and tail and fetches SQEs to submit\n++ * starting from index 0 instead from the index stored in the head pointer.\n++ * IOW, the user should place all SQE at the beginning of the SQ memory\n++ * before issuing a submission syscall.\n++ *\n++ * It requires IORING_SETUP_NO_SQARRAY and is incompatible with\n++ * IORING_SETUP_SQPOLL. The user must also never change the SQ head and tail\n++ * values and keep it set to 0. Any other value is undefined behaviour.\n++ */\n++#define IORING_SETUP_SQ_REWIND\t\t(1U << 20)\n++\n+ enum io_uring_op {\n+ \tIORING_OP_NOP,\n+ \tIORING_OP_READV,\n+@@ -700,6 +713,9 @@ enum io_uring_register_op {\n+ \t/* auxiliary zcrx configuration, see enum zcrx_ctrl_op */\n+ \tIORING_REGISTER_ZCRX_CTRL\t\t= 36,\n+ \n++\t/* register bpf filtering programs */\n++\tIORING_REGISTER_BPF_FILTER\t\t= 37,\n++\n+ \t/* this goes last */\n+ \tIORING_REGISTER_LAST,\n+ \n+@@ -805,6 +821,13 @@ struct io_uring_restriction {\n+ \t__u32 resv2[3];\n+ };\n+ \n++struct io_uring_task_restriction {\n++\t__u16 flags;\n++\t__u16 nr_res;\n++\t__u32 resv[3];\n++\t__DECLARE_FLEX_ARRAY(struct io_uring_restriction, restrictions);\n++};\n++\n+ struct io_uring_clock_register {\n+ \t__u32\tclockid;\n+ \t__u32\t__resv[3];\n+@@ -1068,6 +1091,14 @@ enum zcrx_reg_flags {\n+ \tZCRX_REG_IMPORT\t= 1,\n+ };\n+ \n++enum zcrx_features {\n++\t/*\n++\t * The user can ask for the desired rx page size by passing the\n++\t * value in struct io_uring_zcrx_ifq_reg::rx_buf_len.\n++\t */\n++\tZCRX_FEATURE_RX_PAGE_SIZE\t= 1 << 0,\n++};\n++\n+ /*\n+  * Argument for IORING_REGISTER_ZCRX_IFQ\n+  */\n+@@ -1082,7 +1113,7 @@ struct io_uring_zcrx_ifq_reg {\n+ \n+ \tstruct io_uring_zcrx_offsets offsets;\n+ \t__u32\tzcrx_id;\n+-\t__u32\t__resv2;\n++\t__u32\trx_buf_len;\n+ \t__u64\t__resv[3];\n+ };\n+ \n+diff --git a/src/io_uring.c b/src/io_uring.c\n+index a479c9570..04de31651 100644\n+--- a/src/io_uring.c\n++++ b/src/io_uring.c\n+@@ -1254,11 +1254,8 @@ print_io_uring_zcrx_ifq_reg(struct tcb *tcp, const kernel_ulong_t addr)\n+ \tprint_io_uring_zcrx_offsets(tcp, &arg.offsets);\n+ \ttprint_struct_next();\n+ \tPRINT_FIELD_U(arg, zcrx_id);\n+-\n+-\tif (arg.__resv2) {\n+-\t\ttprint_struct_next();\n+-\t\tPRINT_FIELD_X(arg, __resv2);\n+-\t}\n++\ttprint_struct_next();\n++\tPRINT_FIELD_U(arg, rx_buf_len);\n+ \n+ \tif (!IS_ARRAY_ZERO(arg.__resv)) {\n+ \t\ttprint_struct_next();\n+diff --git a/tests/io_uring_register.c b/tests/io_uring_register.c\n+index cfaa93d20..9952f0370 100644\n+--- a/tests/io_uring_register.c\n++++ b/tests/io_uring_register.c\n+@@ -2058,7 +2058,7 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null)\n+ \t       \", flags=\" XLAT_FMT\n+ \t       \", area_ptr=%#llx, region_ptr=%#llx\"\n+ \t       \", offsets={head=%u, tail=%u, rqes=%u}\"\n+-\t       \", zcrx_id=%u}, 1) = %s\\n\",\n++\t       \", zcrx_id=%u, rx_buf_len=0}, 1) = %s\\n\",\n+ \t       fd_null, path_null,\n+ \t       XLAT_SEL(zcrx_ifq_ops.val, zcrx_ifq_ops.str),\n+ \t       zcrx_ifq->if_idx, zcrx_ifq->if_rxq, zcrx_ifq->rq_entries,\n+@@ -2073,9 +2073,9 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null)\n+ \tmemset(zcrx_ifq, 0, sizeof(*zcrx_ifq));\n+ \tzcrx_ifq->if_idx = 0xaaaa;\n+ \tzcrx_ifq->offsets.__resv2 = 0xbbbb;\n+-\tzcrx_ifq->__resv2 = 0xcccc;\n+ \tzcrx_ifq->offsets.__resv[0] = 0xddddddddddddddddULL;\n+ \tzcrx_ifq->offsets.__resv[1] = 0xeeeeeeeeeeeeeeeeULL;\n++\tzcrx_ifq->rx_buf_len = 0xcccc;\n+ \tzcrx_ifq->__resv[0] = 0x1111111111111111ULL;\n+ \tzcrx_ifq->__resv[1] = 0x2222222222222222ULL;\n+ \tzcrx_ifq->__resv[2] = 0x3333333333333333ULL;\n+@@ -2086,7 +2086,7 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null)\n+ \t       \", area_ptr=NULL, region_ptr=NULL\"\n+ \t       \", offsets={head=0, tail=0, rqes=0, __resv2=%#x\"\n+ \t       \", __resv=[%#llx, %#llx]}\"\n+-\t       \", zcrx_id=0, __resv2=%#x\"\n++\t       \", zcrx_id=0, rx_buf_len=%u\"\n+ \t       \", __resv=[%#llx, %#llx, %#llx]}, 1) = %s\\n\",\n+ \t       fd_null, path_null,\n+ \t       XLAT_SEL(zcrx_ifq_ops.val, zcrx_ifq_ops.str),\n+@@ -2094,7 +2094,7 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null)\n+ \t       zcrx_ifq->offsets.__resv2,\n+ \t       (unsigned long long) zcrx_ifq->offsets.__resv[0],\n+ \t       (unsigned long long) zcrx_ifq->offsets.__resv[1],\n+-\t       zcrx_ifq->__resv2,\n++\t       zcrx_ifq->rx_buf_len,\n+ \t       (unsigned long long) zcrx_ifq->__resv[0],\n+ \t       (unsigned long long) zcrx_ifq->__resv[1],\n+ \t       (unsigned long long) zcrx_ifq->__resv[2],\n+-- \n+2.47.3\n+\ndiff --git a/package/strace/0003-bundled-update-linux-io_uring-query.h-to-v7.0-rc3.patch b/package/strace/0003-bundled-update-linux-io_uring-query.h-to-v7.0-rc3.patch\nnew file mode 100644\nindex 0000000000..d7de2e55a6\n--- /dev/null\n+++ b/package/strace/0003-bundled-update-linux-io_uring-query.h-to-v7.0-rc3.patch\n@@ -0,0 +1,123 @@\n+From 81fb4e6cd8b22acc51b8f7226a60a75825087d7b Mon Sep 17 00:00:00 2001\n+From: \"Dmitry V. Levin\" <ldv@strace.io>\n+Date: Wed, 11 Mar 2026 08:00:00 +0000\n+Subject: [PATCH] bundled: update linux/io_uring/query.h to v7.0-rc3\n+\n+* bundled/linux/include/uapi/linux/io_uring/query.h: Update to\n+headers_install'ed Linux kernel v7.0-rc3.\n+* src/io_uring.c (print_io_uring_query_zcrx): Follow the rename\n+of \"__resv1\" field of struct io_uring_query_zcrx to \"features\".\n+* tests/io_uring_register.c (test_IORING_REGISTER_QUERY): Update\n+expected output.\n+\n+Upstream: https://github.com/strace/strace/commit/81fb4e6cd8b22acc51b8f7226a60a75825087d7b\n+\n+Signed-off-by: Bernd Kuhls <bernd@kuhls.net>\n+---\n+ .../linux/include/uapi/linux/io_uring/query.h    |  6 +++++-\n+ src/io_uring.c                                   |  7 ++-----\n+ tests/io_uring_register.c                        | 16 ++++++++--------\n+ 3 files changed, 15 insertions(+), 14 deletions(-)\n+\n+diff --git a/bundled/linux/include/uapi/linux/io_uring/query.h b/bundled/linux/include/uapi/linux/io_uring/query.h\n+index 2456e6c5e..95500759c 100644\n+--- a/bundled/linux/include/uapi/linux/io_uring/query.h\n++++ b/bundled/linux/include/uapi/linux/io_uring/query.h\n+@@ -1,6 +1,9 @@\n+ /* SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT */\n+ /*\n+  * Header file for the io_uring query interface.\n++ *\n++ * Copyright (C) 2026 Pavel Begunkov <asml.silence@gmail.com>\n++ * Copyright (C) Meta Platforms, Inc.\n+  */\n+ #ifndef LINUX_IO_URING_QUERY_H\n+ #define LINUX_IO_URING_QUERY_H\n+@@ -50,7 +53,8 @@ struct io_uring_query_zcrx {\n+ \t__u64 area_flags;\n+ \t/* The number of supported ZCRX_CTRL_* opcodes */\n+ \t__u32 nr_ctrl_opcodes;\n+-\t__u32 __resv1;\n++\t/* Bitmask of ZCRX_FEATURE_* indicating which features are available */\n++\t__u32 features;\n+ \t/* The refill ring header size */\n+ \t__u32 rq_hdr_size;\n+ \t/* The alignment for the header */\n+diff --git a/src/io_uring.c b/src/io_uring.c\n+index 04de31651..d6eb63ffe 100644\n+--- a/src/io_uring.c\n++++ b/src/io_uring.c\n+@@ -1538,15 +1538,12 @@ print_io_uring_query_zcrx(struct tcb *tcp, const kernel_ulong_t addr)\n+ \ttprint_struct_next();\n+ \tPRINT_FIELD_U(zcrx, nr_ctrl_opcodes);\n+ \ttprint_struct_next();\n++\tPRINT_FIELD_X(zcrx, features);\n++\ttprint_struct_next();\n+ \tPRINT_FIELD_U(zcrx, rq_hdr_size);\n+ \ttprint_struct_next();\n+ \tPRINT_FIELD_U(zcrx, rq_hdr_alignment);\n+ \n+-\tif (zcrx.__resv1) {\n+-\t\ttprint_struct_next();\n+-\t\tPRINT_FIELD_X(zcrx, __resv1);\n+-\t}\n+-\n+ \tif (zcrx.__resv2) {\n+ \t\ttprint_struct_next();\n+ \t\tPRINT_FIELD_X(zcrx, __resv2);\n+diff --git a/tests/io_uring_register.c b/tests/io_uring_register.c\n+index 9952f0370..158c714a0 100644\n+--- a/tests/io_uring_register.c\n++++ b/tests/io_uring_register.c\n+@@ -2373,8 +2373,8 @@ test_IORING_REGISTER_QUERY(int fd_null)\n+ \tprintf(\"io_uring_register(%u<%s>, \" XLAT_FMT\n+ \t       \", {query_data=%p, query_op=\" XLAT_FMT \", size=%u, result=0\"\n+ \t       \", query_data={register_flags=\" XLAT_FMT \", area_flags=\" XLAT_FMT\n+-\t       \", nr_ctrl_opcodes=%u, rq_hdr_size=%u, rq_hdr_alignment=%u}\"\n+-\t       \", next_entry=NULL}, 0) = %s\\n\",\n++\t       \", nr_ctrl_opcodes=%u, features=0, rq_hdr_size=%u\"\n++\t       \", rq_hdr_alignment=%u}, next_entry=NULL}, 0) = %s\\n\",\n+ \t       fd_null, path_null,\n+ \t       XLAT_SEL(query_ops.val, query_ops.str),\n+ \t       zcrx_data,\n+@@ -2490,8 +2490,8 @@ test_IORING_REGISTER_QUERY(int fd_null)\n+ \t       \", sqe_flags=0, nr_query_opcodes=0}, next_entry=\"\n+ \t       \"{query_data=%p, query_op=\" XLAT_FMT \", size=%u, result=0\"\n+ \t       \", query_data={register_flags=0, area_flags=0\"\n+-\t       \", nr_ctrl_opcodes=%u, rq_hdr_size=0, rq_hdr_alignment=0}\"\n+-\t       \", next_entry=NULL}}, 0) = %s\\n\",\n++\t       \", nr_ctrl_opcodes=%u, features=0, rq_hdr_size=0\"\n++\t       \", rq_hdr_alignment=0}, next_entry=NULL}}, 0) = %s\\n\",\n+ \t       fd_null, path_null,\n+ \t       XLAT_SEL(query_ops.val, query_ops.str),\n+ \t       opcode_data2,\n+@@ -2570,22 +2570,22 @@ test_IORING_REGISTER_QUERY(int fd_null)\n+ \thdr->result = 0;\n+ \n+ \tmemset(zcrx_data, 0, sizeof(*zcrx_data));\n+-\tzcrx_data->__resv1 = 0xdeadbeef;\n++\tzcrx_data->features = 0xdeadbeef;\n+ \tzcrx_data->__resv2 = 0xcafebabe12345678ULL;\n+ \n+ \tsys_io_uring_register(fd_null, query_ops.val, hdr, 0);\n+ \tprintf(\"io_uring_register(%u<%s>, \" XLAT_FMT\n+ \t       \", {query_data=%p, query_op=\" XLAT_FMT \", size=%u, result=0\"\n+ \t       \", query_data={register_flags=0, area_flags=0\"\n+-\t       \", nr_ctrl_opcodes=0, rq_hdr_size=0\"\n+-\t       \", rq_hdr_alignment=0, __resv1=%#x, __resv2=%#llx}\"\n++\t       \", nr_ctrl_opcodes=0, features=%#x, rq_hdr_size=0\"\n++\t       \", rq_hdr_alignment=0, __resv2=%#llx}\"\n+ \t       \", next_entry=NULL}, 0) = %s\\n\",\n+ \t       fd_null, path_null,\n+ \t       XLAT_SEL(query_ops.val, query_ops.str),\n+ \t       zcrx_data,\n+ \t       XLAT_ARGS(IO_URING_QUERY_ZCRX),\n+ \t       (unsigned int) sizeof(*zcrx_data),\n+-\t       zcrx_data->__resv1,\n++\t       zcrx_data->features,\n+ \t       (unsigned long long) zcrx_data->__resv2,\n+ \t       errstr);\n+ \n+-- \n+2.47.3\n+\n",
    "prefixes": [
        "2/4"
    ]
}