opkg

statically linked package installer
git clone anongit@rnpnr.xyz:opkg.git
Log | Files | Refs | Feed | Submodules | README | LICENSE

Commit: 1bff71c7c19a470144eea53457494cadf3240e5d
Parent: e69b128e3f405750a6fe9b867ef8d222f3c3b42e
Author: Michael Forney
Date:   Wed, 29 Apr 2026 17:33:11 -0700

linux-headers: Update to 7.0

Diffstat:
Mdist/.gitignore | 2+-
Mpkg/linux-headers/base.lua | 2++
Mpkg/linux-headers/sha256 | 2+-
Mpkg/linux-headers/url | 2+-
Mpkg/linux-headers/ver | 2+-
Mpkg/strace/config.h | 26+++++++++++++-------------
Apkg/strace/patch/0010-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch | 161+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mpkg/strace/ver | 2+-
8 files changed, 181 insertions(+), 18 deletions(-)

diff --git a/dist/.gitignore b/dist/.gitignore @@ -2,7 +2,7 @@ /git-manpages-2.49.0.tar.gz /hyx-2026.01.11.tar.xz /less-643.tar.gz -/linux-6.19.tar.xz +/linux-7.0.tar.xz /lpeg-1.1.0.tar.gz /lua-5.2.4.tar.gz /man-pages-posix-2017-a.tar.gz diff --git a/pkg/linux-headers/base.lua b/pkg/linux-headers/base.lua @@ -323,6 +323,7 @@ return { 'linux/input-event-codes.h', 'linux/input.h', 'linux/io_uring.h', + 'linux/io_uring/bpf_filter.h', 'linux/io_uring/mock_file.h', 'linux/io_uring/query.h', 'linux/ioam6.h', @@ -779,6 +780,7 @@ return { 'linux/trace_mmap.h', 'linux/tty.h', 'linux/tty_flags.h', + 'linux/typelimits.h', 'linux/types.h', 'linux/ublk_cmd.h', 'linux/udf_fs_i.h', diff --git a/pkg/linux-headers/sha256 b/pkg/linux-headers/sha256 @@ -1 +1 @@ -303079a8250b8f381f82b03f90463d12ac98d4f6b149b761ea75af1323521357 linux-6.19.tar.xz +bb7f6d80b387c757b7d14bb93028fcb90f793c5c0d367736ee815a100b3891f0 linux-7.0.tar.xz diff --git a/pkg/linux-headers/url b/pkg/linux-headers/url @@ -1 +1 @@ -url = "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.19.tar.xz" +url = "https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.0.tar.xz" diff --git a/pkg/linux-headers/ver b/pkg/linux-headers/ver @@ -1 +1 @@ -6.19 +7.0 diff --git a/pkg/strace/config.h b/pkg/strace/config.h @@ -174,8 +174,8 @@ #define HAVE_STRUCT_BPF_MAP_INFO_BTF_VALUE_TYPE_ID 1 #define HAVE_STRUCT_BPF_MAP_INFO_BTF_VMLINUX_ID 1 #define HAVE_STRUCT_BPF_MAP_INFO_BTF_VMLINUX_VALUE_TYPE_ID 1 -/* #undef HAVE_STRUCT_BPF_MAP_INFO_HASH */ -/* #undef HAVE_STRUCT_BPF_MAP_INFO_HASH_SIZE */ +#define HAVE_STRUCT_BPF_MAP_INFO_HASH 1 +#define HAVE_STRUCT_BPF_MAP_INFO_HASH_SIZE 1 #define HAVE_STRUCT_BPF_MAP_INFO_ID 1 #define HAVE_STRUCT_BPF_MAP_INFO_IFINDEX 1 #define HAVE_STRUCT_BPF_MAP_INFO_KEY_SIZE 1 @@ -312,13 +312,13 @@ #define HAVE_UNION_BPF_ATTR_CORE_RELO_REC_SIZE 1 /* #undef HAVE_UNION_BPF_ATTR_DUMMY */ #define HAVE_UNION_BPF_ATTR_ENABLE_STATS_TYPE 1 -/* #undef HAVE_UNION_BPF_ATTR_EXCL_PROG_HASH */ -/* #undef HAVE_UNION_BPF_ATTR_EXCL_PROG_HASH_SIZE */ +#define HAVE_UNION_BPF_ATTR_EXCL_PROG_HASH 1 +#define HAVE_UNION_BPF_ATTR_EXCL_PROG_HASH_SIZE 1 #define HAVE_UNION_BPF_ATTR_EXPECTED_ATTACH_TYPE 1 #define HAVE_UNION_BPF_ATTR_EXPECTED_REVISION 1 #define HAVE_UNION_BPF_ATTR_FD_ARRAY 1 -/* #undef HAVE_UNION_BPF_ATTR_FD_ARRAY_CNT */ -/* #undef HAVE_UNION_BPF_ATTR_FD_BY_ID_TOKEN_FD */ +#define HAVE_UNION_BPF_ATTR_FD_ARRAY_CNT 1 +#define HAVE_UNION_BPF_ATTR_FD_BY_ID_TOKEN_FD 1 #define HAVE_UNION_BPF_ATTR_FILE_FLAGS 1 #define HAVE_UNION_BPF_ATTR_FLAGS 1 #define HAVE_UNION_BPF_ATTR_FUNC_INFO 1 @@ -334,7 +334,7 @@ #define HAVE_UNION_BPF_ATTR_ITER_CREATE_LINK_FD 1 #define HAVE_UNION_BPF_ATTR_KERN_VERSION 1 #define HAVE_UNION_BPF_ATTR_KEY 1 -/* #undef HAVE_UNION_BPF_ATTR_KEYRING_ID */ +#define HAVE_UNION_BPF_ATTR_KEYRING_ID 1 #define HAVE_UNION_BPF_ATTR_KEY_SIZE 1 #define HAVE_UNION_BPF_ATTR_LICENSE 1 #define HAVE_UNION_BPF_ATTR_LINE_INFO 1 @@ -400,10 +400,10 @@ #define HAVE_UNION_BPF_ATTR_PROG_ID 1 #define HAVE_UNION_BPF_ATTR_PROG_IFINDEX 1 #define HAVE_UNION_BPF_ATTR_PROG_NAME 1 -/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_PROG_FD */ -/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_BUF */ -/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_BUF_LEN */ -/* #undef HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_ID */ +#define HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_PROG_FD 1 +#define HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_BUF 1 +#define HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_BUF_LEN 1 +#define HAVE_UNION_BPF_ATTR_PROG_STREAM_READ_STREAM_ID 1 #define HAVE_UNION_BPF_ATTR_PROG_TOKEN_FD 1 #define HAVE_UNION_BPF_ATTR_PROG_TYPE 1 #define HAVE_UNION_BPF_ATTR_QUERY_ATTACH_FLAGS 1 @@ -425,8 +425,8 @@ #define HAVE_UNION_BPF_ATTR_RELATIVE_FD 1 #define HAVE_UNION_BPF_ATTR_RELATIVE_ID 1 #define HAVE_UNION_BPF_ATTR_REPLACE_BPF_FD 1 -/* #undef HAVE_UNION_BPF_ATTR_SIGNATURE */ -/* #undef HAVE_UNION_BPF_ATTR_SIGNATURE_SIZE */ +#define HAVE_UNION_BPF_ATTR_SIGNATURE 1 +#define HAVE_UNION_BPF_ATTR_SIGNATURE_SIZE 1 #define HAVE_UNION_BPF_ATTR_START_ID 1 #define HAVE_UNION_BPF_ATTR_TARGET_FD 1 #define HAVE_UNION_BPF_ATTR_TARGET_IFINDEX 1 diff --git a/pkg/strace/patch/0010-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch b/pkg/strace/patch/0010-bundled-update-linux-io_uring.h-to-v7.0-rc3.patch @@ -0,0 +1,161 @@ +From 1dbddb172f6ab21504d462347c8fc8958a7590d2 Mon Sep 17 00:00:00 2001 +From: "Dmitry V. Levin" <ldv@strace.io> +Date: Tue, 10 Mar 2026 08:00:00 +0000 +Subject: [PATCH] bundled: update linux/io_uring.h to v7.0-rc3 + +* bundled/linux/include/uapi/linux/io_uring.h: Update to +headers_install'ed Linux kernel v7.0-rc3. +* src/io_uring.c (print_io_uring_zcrx_ifq_reg): Follow the rename +of __resv2 field of struct io_uring_zcrx_ifq_reg to rx_buf_len. +* tests/io_uring_register.c (test_IORING_REGISTER_ZCRX_IFQ): Update +expected output. +--- + bundled/linux/include/uapi/linux/io_uring.h | 35 +++++++++++++++++++-- + src/io_uring.c | 7 ++--- + tests/io_uring_register.c | 8 ++--- + 3 files changed, 39 insertions(+), 11 deletions(-) + +diff --git a/bundled/linux/include/uapi/linux/io_uring.h b/bundled/linux/include/uapi/linux/io_uring.h +index b5b23c0d5..1ff16141c 100644 +--- a/bundled/linux/include/uapi/linux/io_uring.h ++++ b/bundled/linux/include/uapi/linux/io_uring.h +@@ -188,7 +188,8 @@ enum io_uring_sqe_flags_bit { + /* + * If COOP_TASKRUN is set, get notified if task work is available for + * running and a kernel transition would be needed to run it. This sets +- * IORING_SQ_TASKRUN in the sq ring flags. Not valid with COOP_TASKRUN. ++ * IORING_SQ_TASKRUN in the sq ring flags. Not valid without COOP_TASKRUN ++ * or DEFER_TASKRUN. + */ + #define IORING_SETUP_TASKRUN_FLAG (1U << 9) + #define IORING_SETUP_SQE128 (1U << 10) /* SQEs are 128 byte */ +@@ -237,6 +238,18 @@ enum io_uring_sqe_flags_bit { + */ + #define IORING_SETUP_SQE_MIXED (1U << 19) + ++/* ++ * When set, io_uring ignores SQ head and tail and fetches SQEs to submit ++ * starting from index 0 instead from the index stored in the head pointer. ++ * IOW, the user should place all SQE at the beginning of the SQ memory ++ * before issuing a submission syscall. ++ * ++ * It requires IORING_SETUP_NO_SQARRAY and is incompatible with ++ * IORING_SETUP_SQPOLL. The user must also never change the SQ head and tail ++ * values and keep it set to 0. Any other value is undefined behaviour. ++ */ ++#define IORING_SETUP_SQ_REWIND (1U << 20) ++ + enum io_uring_op { + IORING_OP_NOP, + IORING_OP_READV, +@@ -700,6 +713,9 @@ enum io_uring_register_op { + /* auxiliary zcrx configuration, see enum zcrx_ctrl_op */ + IORING_REGISTER_ZCRX_CTRL = 36, + ++ /* register bpf filtering programs */ ++ IORING_REGISTER_BPF_FILTER = 37, ++ + /* this goes last */ + IORING_REGISTER_LAST, + +@@ -805,6 +821,13 @@ struct io_uring_restriction { + __u32 resv2[3]; + }; + ++struct io_uring_task_restriction { ++ __u16 flags; ++ __u16 nr_res; ++ __u32 resv[3]; ++ __DECLARE_FLEX_ARRAY(struct io_uring_restriction, restrictions); ++}; ++ + struct io_uring_clock_register { + __u32 clockid; + __u32 __resv[3]; +@@ -1068,6 +1091,14 @@ enum zcrx_reg_flags { + ZCRX_REG_IMPORT = 1, + }; + ++enum zcrx_features { ++ /* ++ * The user can ask for the desired rx page size by passing the ++ * value in struct io_uring_zcrx_ifq_reg::rx_buf_len. ++ */ ++ ZCRX_FEATURE_RX_PAGE_SIZE = 1 << 0, ++}; ++ + /* + * Argument for IORING_REGISTER_ZCRX_IFQ + */ +@@ -1082,7 +1113,7 @@ struct io_uring_zcrx_ifq_reg { + + struct io_uring_zcrx_offsets offsets; + __u32 zcrx_id; +- __u32 __resv2; ++ __u32 rx_buf_len; + __u64 __resv[3]; + }; + +diff --git a/src/io_uring.c b/src/io_uring.c +index a479c9570..04de31651 100644 +--- a/src/io_uring.c ++++ b/src/io_uring.c +@@ -1254,11 +1254,8 @@ print_io_uring_zcrx_ifq_reg(struct tcb *tcp, const kernel_ulong_t addr) + print_io_uring_zcrx_offsets(tcp, &arg.offsets); + tprint_struct_next(); + PRINT_FIELD_U(arg, zcrx_id); +- +- if (arg.__resv2) { +- tprint_struct_next(); +- PRINT_FIELD_X(arg, __resv2); +- } ++ tprint_struct_next(); ++ PRINT_FIELD_U(arg, rx_buf_len); + + if (!IS_ARRAY_ZERO(arg.__resv)) { + tprint_struct_next(); +diff --git a/tests/io_uring_register.c b/tests/io_uring_register.c +index cfaa93d20..9952f0370 100644 +--- a/tests/io_uring_register.c ++++ b/tests/io_uring_register.c +@@ -2058,7 +2058,7 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null) + ", flags=" XLAT_FMT + ", area_ptr=%#llx, region_ptr=%#llx" + ", offsets={head=%u, tail=%u, rqes=%u}" +- ", zcrx_id=%u}, 1) = %s\n", ++ ", zcrx_id=%u, rx_buf_len=0}, 1) = %s\n", + fd_null, path_null, + XLAT_SEL(zcrx_ifq_ops.val, zcrx_ifq_ops.str), + zcrx_ifq->if_idx, zcrx_ifq->if_rxq, zcrx_ifq->rq_entries, +@@ -2073,9 +2073,9 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null) + memset(zcrx_ifq, 0, sizeof(*zcrx_ifq)); + zcrx_ifq->if_idx = 0xaaaa; + zcrx_ifq->offsets.__resv2 = 0xbbbb; +- zcrx_ifq->__resv2 = 0xcccc; + zcrx_ifq->offsets.__resv[0] = 0xddddddddddddddddULL; + zcrx_ifq->offsets.__resv[1] = 0xeeeeeeeeeeeeeeeeULL; ++ zcrx_ifq->rx_buf_len = 0xcccc; + zcrx_ifq->__resv[0] = 0x1111111111111111ULL; + zcrx_ifq->__resv[1] = 0x2222222222222222ULL; + zcrx_ifq->__resv[2] = 0x3333333333333333ULL; +@@ -2086,7 +2086,7 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null) + ", area_ptr=NULL, region_ptr=NULL" + ", offsets={head=0, tail=0, rqes=0, __resv2=%#x" + ", __resv=[%#llx, %#llx]}" +- ", zcrx_id=0, __resv2=%#x" ++ ", zcrx_id=0, rx_buf_len=%u" + ", __resv=[%#llx, %#llx, %#llx]}, 1) = %s\n", + fd_null, path_null, + XLAT_SEL(zcrx_ifq_ops.val, zcrx_ifq_ops.str), +@@ -2094,7 +2094,7 @@ test_IORING_REGISTER_ZCRX_IFQ(int fd_null) + zcrx_ifq->offsets.__resv2, + (unsigned long long) zcrx_ifq->offsets.__resv[0], + (unsigned long long) zcrx_ifq->offsets.__resv[1], +- zcrx_ifq->__resv2, ++ zcrx_ifq->rx_buf_len, + (unsigned long long) zcrx_ifq->__resv[0], + (unsigned long long) zcrx_ifq->__resv[1], + (unsigned long long) zcrx_ifq->__resv[2], +-- +2.49.0 + diff --git a/pkg/strace/ver b/pkg/strace/ver @@ -1 +1 @@ -6.19 +6.19 r1