|
|
|
|
Changelog for liburing-ffi2-2.6-3.1.x86_64.rpm :
* Thu Aug 08 2024 Valentin Lefebvre - Skip test buf-ring-nommap.t if ENOMEM appears (happens in ppc64le arch). * test-buf-ring-nommap-skip-the-test-on-queue-init-ENO.patch * Fri Jul 12 2024 David Disseldorp - Fix buf-ring-nommap.t test failure * test-buf-ring-nommap-zero-the-ringbuf-memory.patch * Fri Jun 28 2024 Jiri Slaby - Update to 2.6: * Add getsockopt and setsockopt socket commands * Add test cases to test/hardlink * Man page fixes * Add futex support, and test cases * Add waitid support, and test cases * Add read multishot, and test cases * Add support for IORING_SETUP_NO_SQARRAY * Use IORING_SETUP_NO_SQARRAY as the default * Add support for IORING_OP_FIXED_FD_INSTALL * Add io_uring_prep_fixed_fd_install() helper * Support for napi busy polling * Improve/add test cases * Man page fixes * Add sample \'proxy\' example- Remove (they are upstream) * test-no-mmap-inval-0-return-is-fine-too.patch * test-recv-multishot-wait-for-the-right-amount-of-CQE.patch- exclude buf-ring-nommap.t test (crashes) * Wed Apr 03 2024 Jiri Slaby - Update to 2.5: * Add support for io_uring_prep_cmd_sock() * Add support for application allocated ring memory, for placing rings in huge mem. Available through io_uring_queue_init_mem(). * Add support for registered ring fds * Various documentation updates * Various fixes- Remove (they are upstream) * test-io_uring_register-fix-errno-confusion-and-new-e.patch * tests-don-t-expect-multishot-recv-overflow-backloggi.patch- Add * test-recv-multishot-wait-for-the-right-amount-of-CQE.patch (to fix test errors on the 6.8.2 kernel) * test-no-mmap-inval-0-return-is-fine-too.patch (fix the test) * Mon Dec 04 2023 Guillaume GARDET - Fix build on 32-bit x86 * Thu Nov 30 2023 Guillaume GARDET - Make use of openSUSE build flags * Fri Sep 15 2023 Jiri Slaby - tests-don-t-expect-multishot-recv-overflow-backloggi.patch (bsc#1215332) * Thu Sep 14 2023 Jiri Slaby - build tests in parallel (using %{?_smp_mflags}) * Thu Aug 31 2023 Jiri Slaby - add test-io_uring_register-fix-errno-confusion-and-new-e.patch to fix test errors on the 6.5 kernel * Mon Jun 12 2023 David Disseldorp - Update to 2.4: * Add io_uring_{major,minor,check}_version() functions. * Add IO_URING_{MAJOR,MINOR,CHECK}_VERSION() macros. * FFI support (for non-C/C++ languages integration). * Add io_uring_prep_msg_ring_cqe_flags() function. * Deprecate --nolibc configure option. * CONFIG_NOLIBC is always enabled on x86-64, x86, and aarch64. * Add support for IORING_REGISTER_USE_REGISTERED_RING and use if available. * Add io_uring_close_ring_fd() function. * Add io_uring_prep_msg_ring_fd_alloc function. * Add io_uring_free_buf_ring() and io_uring_setup_buf_ring() functions. * Ensure that io_uring_prep_accept_direct(), io_uring_prep_openat_direct(), io_uring_prep_openat2_direct(), io_uring_prep_msg_ring_fd(), and io_uring_prep_socket_direct() factor in being called with IORING_FILE_INDEX_ALLOC for allocating a direct descriptor. * Add io_uring_prep_sendto() function.- Add liburing-ffi2 package for corresponding FFI library, given that dependents will normally require either that or the base library (not both).- Drop upstream patches: * 0001-Do-not-always-expect-multishot-recv-to-stop-posting-.patch * 0001-test-file-verify.t-Don-t-run-over-mlock-limit-when-r.patch * 0001-test-helpers-fix-socket-length-type.patch * Thu Apr 20 2023 Gabriel Krisman Bertazi - Add 0001-test-file-verify.t-Don-t-run-over-mlock-limit-when-r.patch fixes test with kernel <= 5.16 (bsc#1209723) * Tue Feb 21 2023 Jiri Slaby - add 0001-Do-not-always-expect-multishot-recv-to-stop-posting-.patch fixes tests with kernel 6.2 * Sat Jan 21 2023 Dirk Müller - add 0001-test-helpers-fix-socket-length-type.patch fixes tests on big endian * Fri Nov 18 2022 Dirk Müller - update to 2.3: * Support non-libc build for aarch64. * Add io_uring_{enter,enter2,register,setup} syscall functions. * Add sync cancel interface, io_uring_register_sync_cancel(). * Fix return value of io_uring_submit_and_wait_timeout() to match the man page. * Improvements to the regression tests * Add support and test case for passthrough IO * Add recv and recvmsg multishot helpers and support * Add documentation and support for IORING_SETUP_DEFER_TASKRUN * Fix potential missing kernel entry with IORING_SETUP_IOPOLL * Add support and documentation for zero-copy network transmit * Various optimizations * Many cleanups * Many man page additions and updates- drop handle-eintr.patch, test-xattr-don-t-rely-on-NUL-termination.patch: upstream * Sun Sep 25 2022 Dirk Müller - skip checks on qemu_linux_user builds * Tue Aug 16 2022 Jiri Slaby - add test-xattr-don-t-rely-on-NUL-termination.patch (bsc#1202413) * Fri Jul 08 2022 Dirk Müller - add handle-eintr.patch, enable tests everywhere * Wed Jun 29 2022 Dirk Müller - enable tests for != ppc64le * Tue Jun 28 2022 Dirk Müller - update to 2.2: * Support non-libc builds. * Optimized syscall handling for x86-64/x86/aarch64. * Enable non-lib function calls for fast path functions. * Add support for multishot accept. * io_uring_register_files() will set RLIMIT_NOFILE if necessary. * Add support for registered ring fds, io_uring_register_ring_fd(), reducingthe overhead of an io_uring_enter() system call. * Add support for the message ring opcode. * Add support for newer request cancelation features. * Add support for IORING_SETUP_COOP_TASKRUN, which can help reduce the overhead of io_uring in general. Most applications should set this flag, see the io_uring_setup.2 man page for details. * Add support for registering a sparse buffer and file set. * Add support for a new buffer provide scheme, see io_uring_register_buf_ring.3 for details. * Add io_uring_submit_and_wait_timeout() for submitting IO and waiting for completions with a timeout. * Add io_uring_prep_{read,write}v2 prep helpers. * Add io_uring_prep_close_direct() helper. * Add support for SQE128 and CQE32, which are doubly sized SQE and CQE rings. This is needed for some cases of the new IORING_OP_URING_CMD, notably for NVMe passthrough. * ~5500 lines of man page additions, including adding ~90 new man pages. * Synced with the 5.19 kernel release, supporting all the features of 5.19 and earlier. * 24 new regression test cases, and ~7000 lines of new tests in general. * General optimizations and fixes. * Fri Apr 29 2022 Dirk Müller - avoid requiring kernel-default (bsc#1193522) * Thu Feb 10 2022 David Disseldorp - add explicit liburing2-devel alias to reflect SLE/LEAP 15.4+ naming (bsc#1193522) * Wed Oct 13 2021 David Disseldorp - update to 2.1 (bsc#1193522): * Ignore spurious fadvise/madvise failures * build: add -D_GNU_SOURCE to all CPPFLAGS/CFLAGS. * man: clean up spelling * man/io_uring_enter.2: add notes about direct open/accept * io_uring.h: sync with 5.15 kernel * Fix IORING_REGISTER_IOWQ_MAX_WORKERS name * man: document new register/update API * liburing: add helpers for direct open/accept * liburing.h: correct max_worker name * Change IORING_REGISTER_IOWQ_MAX_UNBOUND_WORKERS * src/syscall.h: get rid of useless externs * man/io_uring_enter.2: document IORING_ENTER_EXT_ARG * Add io_uring_register_iowq_max_unbound() helper * Get rid of useless \'extern\' on function declarations in liburing.h * Add (UN)REGISTER_IOWQ_AFF helpers * man/io_uring_register.2: note when MAX_UNBOUND became available * man/io_uring_register.2: add missing punctuation * man/io_uring_register.2: document IORING_REGISTER_IOWQ_MAX_UNBOUND * man/io_uring_enter.2: add IORING_OP_TIMEOUT clock sources * man/io_uring_enter.2: improve timeout entry * man/io_uring_enter.2: update SQE * man/io_uring_enter.2: note that not all requests support fixed files * man/io_uring_enter.2: add new 5.15 opcodes * man/io_uring_enter.2: note that cqe->flags is indeed used * man/io_uring_enter.2: add poll update and multishot mode * man/io_uring_register.2: add IORING_(UN)REGISTER_IOWQ * man: update notes on register quiesce * man: fix io_uring_sqe alignment * register: add tagging and buf update helpers * liburing.h: make header clean for implicit sign and size conversions * configure: document --cc and --cxx options * io_uring: update buffer update feature testing * liburing.h: dedup poll mask conversion * liburing.h: add a multipoll helper * Update io_uring.h * examples: disable ucontext-cp for elbrus (e2k) architecture * Update io_uring_setup.2 * man/io_uring_setup.2: document the two most recent FEAT flags * man/io_uring_setup.2: make sure FEAT flags are kernel versioned * correct syscall NR in mips * Fix 32-bit compile warnings * liburing.h: make all file/IO offset __u64 * src/queue: don\'t flush SQ ring for new wait interface * man/io_uring_enter.2: further clarify what cqe->res holds * Clarify information about error results * Refer to the accept_flags in io_uring_enter manual * Fix a bug due to the unreleased lock before function returns * debian/rules: add missing slash for relativelibdir * man/io_uring_enter.2: clarify io_uring_enter(2) SQPOLL return value * liburing.h: add linkat prep helper * io_uring.h: add linkat opcode * liburing.h: add symlinkat prep helper * io_uring.h: add symlinkat opcode * liburing.h: add mkdirat prep helper * update rsrc register/update ABI and tests * queue: clean up SQ flushing * io_uring_enter(2): Clarify how to read from and write to non-seekable files * clarify an edge case of IORING_SETUP_SQ_AFF * io_uring_enter(2): clarify OP_READ and OP_WRITE * sync io_uring.h API file with Linux 5.13 * man: Fix typo in man io_uring_queue_exit * examples/link-cp: fix a couple of strerror negations * src/setup: don\'t treat dummy ring init as failure * src/setup: add some documentation to the memlock helpers * examples/ucontext-cp.c: cope with variable SIGSTKSZ * setup: provide helpers to inquire about necessary mlock sizes * examples/io_uring-cp: wait for pending writes before exit copy loop * spec: add explicit build dependency on make * spec: bump version to 2.0 * man/io_uring_enter.2: note that -EBUSY can also happen for getevents * Sat Mar 13 2021 Dirk Müller - skip building the tests that are neither installed nor run as they fail to build on 32bit platforms (like e.g. armv7l) (bsc#1181571) * Sat Mar 13 2021 Dirk Müller - update to 2.0: * Sync io_uring.h API file with Linux 5.12 * helpers: prefix any helper with t_ instead of io_uring_ * helpers: add io_uring_create_buffers() helper * helpers: add io_uring_create_file() helper * helpers: add io_uring_calloc helper * helpers: add io_uring_posix_memalign helper * setup: cleanup probe code * setup: check whether malloc succ before using it * io_uring_prep_sync_file_range: cleanups * .gitignore: add sendmsg_fs_cve * Added prep function for sync_file_range op * Install man7 pages * src/queue: never clear data->wait_nr * src/queue: control kernel enter with a var * src/queue: don\'t re-wait for CQEs * src/queue: don\'t loop when don\'t enter * src/queue: clean _io_uring_get_cqe() err handling * src/queue: don\'t wait for less than expected * Add inline doc in the comments for io_uring_prep_splice * Fix sigset_t not found in liburing.h * src/queue: update comment on io_uring_wait_cqes() with timeouts * io_uring.h: 5.12 pending kernel sync * man/io_uring_register.2: fix spelling error * man/io_uring_register.2: Add documentation on IORING_REGISTER_FILES_SKIP * Add two ring deadlock case * Fix IORING_OP_FALLOCATE args in io_uring_enter(2) man page * src/queue: Fix a typo in `__io_uring_flush_sq()` * src/queue: fix `sq_ring_needs_enter()` indentation * src/queue: refactor io_uring_get_sqe() * man/io_uring_setup.2: correct 5.10 -> 5.11 for non-fixed files and SQPOLL * man/io_uring_enter.2: document new opcodes * man/io_uring_enter.2: ensure all IORING_ENTER_ * flags are documented * src/queue: add comment on why reading SQ->head for flush isn\'t atomic * liburing.h: fix 32-bit compile warning * man/io_uring.7: Fix typo * man/io_uring_enter.2: describe timeout updates * Don\'t enter the kernel to wait on cqes if they are already available. * Add timeout update * remove zero-size array in io_uring.h * Rename SIG_IS_DATA -> EXT_ARG * Update SIG_IS_DATA to modified kernel API * Use IORING_ENTER_GETEVENTS_TIMEOUT if available * Add wrapper for __io_uring_get_cqe() * Add __sys_io_uring_enter2() * Include \'features\' in struct io_uring * io_uring.h: update with 5.11-pending copy * Fix compilation with iso C standard (c89, c99 and c11) * examples: disable ucontext-cp if ucontext.h is not available * Moves function calls out of assert(). * liburing.h: add renameat/unlinkat prep helpers * io_uring.h: add renameat and unlinkat opcodes * configure: Fix unsafe temporary file creation * Add const modifier to functions that do not change the state of the ring * man/io_uring_enter.2: clarify POLL_ADD return value * Add get_sqe manpage to debian package * Add man page for io_uring_get_sqe * man/io_uring_enter.2: add EACCES and EBADFD errors * man/io_uring_register.2: add description of restrictions * man/io_uring_setup.2: add IORING_SETUP_R_DISABLED description * Makefile: add .PHONY dependency * man/io_uring_enter.2: split ERRORS section in two sections * liburing.h: add `io_uring_prep_tee` * Fix build flag settings * .gitignore: Add sq-poll-dup * man/io_uring_enter.2: clarify PROVIDE_BUFFERS requirements * Update packaging/installation for new man pages * man/io_uring.7: clarify submission/completion ordering * man/io_uring.7: style and barrier updates * Add man page for io_uring_queue_exit * Add man page for io_uring_queue_init * Adding section 7 man page for io_uring * probes: provide our own free function * .gitignore: add pipe-reuse * Fold versioned symbols into LIBURING_2.0 version node * Remove versioned symbols not provided by the shared library anymore * man/io_uring_setup.2: improve SQPOLL wakeup example * Fix io_uring_sq_ready() to use load acquire to read khead. * io_uring.h: fix missing tab * Bump major version to 2 * Add IORING_OP_SHUTDOWN and prep helper * Add a few function comments in liburing.h * Add io_uring_sqring_wait() * io_uring.h: add new definitions from 5.10 * man/io_uring_setup.2: document missing IORING_FEAT_ * feature flags * man/io_uring_enter.2: add description of buffer selections * build: Output CXX on quiet output when using a C++ compiler * Fix missing \'c\' in sigfd-deadlock addition * Add helper to enable rings * Add helper to register restrictions * io_uring.h: add register restrictions and enable ring defines * io_uring.h: use an enumeration for io_uring_register(2) opcodes * io_uring_prep_splice(): fix type (again) * Use the right type for io_uring_prep_splice() * syscall: make syscall.h independently includeable * sq_ring_needs_enter: revert change to only enter if submit != 0 * man/io_uring_setup.2: document IORING_SETUP_ATTACH_WQ * update debian/changelog * update debian/liburing1.symbols * debian/rules: pass down relativelibdir in order to get an absolute path * man/io_uring_setup.2: document IORING_SETUP_CLAMP * man/io_uring_enter: fix openat sqe doc * Sat Mar 13 2021 Dirk Müller - update to 0.7: * io_uring.h: sync with kernel * io_uring_peek_batch_cqe should also check cq ring overflow * Check cq ring overflow status * configure: fix typos in help/error messages * src/setup: clarify that we always return -errno on error * man/io_uring_enter.2: updated io_uring_sqe and fixed incorrect flag references. * Removed misplaced periods from io_uring_enter(2). * Merge branch \'readme\' of https://github.com/jobs-git/liburing * Make readme sensible * man/io_uring_enter: update connect to note use of const * Merge branch \'master\' of https://github.com/KayEss/liburing * Take `sockaddr` immutably in io_uring_prep_connect * Merge branch \'dev\' of https://github.com/CarterLi/liburing * Merge branch \'fix-splice-docs\' of https://github.com/gerow/liburing * man: fix description of splice offsets * .travis.yml: Change the language from C to C++ * configure: Use $CC and $CXX as default compilers if set * Make the liburing header files again compatible with C++ * src/include/liburing/barrier.h: Restore clang compatibility * src/Makefile: Only specify -shared at link time * Merge branch \'openat_o_path\' of https://github.com/MaxKellermann/liburing * Convert __io_uring_get_sqe() from a macro into an inline function * src/include/liburing/barrier.h: Use C11 atomics * Makefiles: Enable -Wextra * Bump version to 1.0.7 * change poll_events to 32 bits to cover EPOLLEXCLUSIVE * examples/ucontext-cp.c: use IORING_OP_TIMEOUT * man/io_uring_enter: correct the description of * man/io_uring_register.2: add IORING_CQ_EVENTFD_DISABLED description * Add helpers to set and get eventfd notification status * man/io_uring_setup.2: add \'flags\' field in the struct io_cqring_offsets * Add CQ ring \'flags\' field * remove duplicate call to __io_uring_peek_cqe() * update wait_nr to account for completed event * preseve wait_nr if SETUP_IOPOLL is set * man/io_uring_enter.2: add IORING_OP_TEE entry * update io_uring.h with tee() * Merge branch \'master\' of https://github.com/shuveb/liburing * Adding section to describe IORING_OP_EPOLL_CTL * fix missing \'#include \' in \'src/include/liburing.h * fix build on musl libc * Use uint64_t for splice offsets * Use __off64_t for offsets * Merge branch \'master\' of https://github.com/shuveb/liburing * Adding description for the IORING_OP_SPLICE operation * Merge branch \'master\' of https://github.com/shuveb/liburing * Adding section describing IORING_OP_OPENAT2 * Fix 32-bit warnings on compile * __io_uring_get_cqe: silence signed vs unsigned comparison warning * io_uring_get_sqe: always use khead
|
|
|