Recent Releases of liburing

liburing - liburing 2.12

What's Changed

  • [GIT PULL] src/sanitize.c: Add compile assertion if IORINGOPLAST increments by @grooverdan in https://github.com/axboe/liburing/pull/1424
  • [GIT PULL] general clang undefined behaviour safe code with --sanitizer by @grooverdan in https://github.com/axboe/liburing/pull/1425
  • [GIT PULL] configure: fix compile error of _kerneltimespec by @kexianda in https://github.com/axboe/liburing/pull/1429
  • [GIT PULL] smploadacquire(ring->cq.khead) in _iouringpeekcqe() for consistent dereferencing by @sohambagchi in https://github.com/axboe/liburing/pull/1437
  • man: Fix grammar errors by @vpx in https://github.com/axboe/liburing/pull/1438
  • liburing.h: Add noexcept specifiers for C++ by @rohanlean in https://github.com/axboe/liburing/pull/1439
  • test: Add CPUs count check in wq-aff by @schlad in https://github.com/axboe/liburing/pull/1440
  • [GIT PULL] man/wait_cqe*: Describe -ETIME return value by @mbr0wn in https://github.com/axboe/liburing/pull/1443
  • Add support for pipe operations, as supported by newer kernels
  • Various man page updates
  • Various test case additions and existing test improvements

New Contributors

  • @grooverdan made their first contribution in https://github.com/axboe/liburing/pull/1424
  • @kexianda made their first contribution in https://github.com/axboe/liburing/pull/1429
  • @sohambagchi made their first contribution in https://github.com/axboe/liburing/pull/1437
  • @vpx made their first contribution in https://github.com/axboe/liburing/pull/1438
  • @rohanlean made their first contribution in https://github.com/axboe/liburing/pull/1439
  • @schlad made their first contribution in https://github.com/axboe/liburing/pull/1440
  • @mbr0wn made their first contribution in https://github.com/axboe/liburing/pull/1443

Full Changelog: https://github.com/axboe/liburing/compare/liburing-2.11...liburing-2.12

- C
Published by axboe 7 months ago

liburing - liburing-2.11

What's Changed

  • Fix potential compilation error due to iouringforeachcqe macro by @Flowdalic in https://github.com/axboe/liburing/pull/1414
  • Fixes for musl
  • Fixes for iouringqueueinitmem()
  • Add helpers for ring sizes required
  • Fix futex test case compilation on old system headers
  • Rename internal alignedalloc() helper to taligned_alloc()

New Contributors

  • @Flowdalic made their first contribution in https://github.com/axboe/liburing/pull/1414

Full Changelog: https://github.com/axboe/liburing/compare/liburing-2.10...liburing-2.11

- C
Published by axboe 9 months ago

liburing - liburing 2.11-rc1

What's Changed

  • Fix potential compilation error due to iouringforeachcqe macro by @Flowdalic in https://github.com/axboe/liburing/pull/1414
  • Add helpers for returning memory requirements for iouringqueueinitmem

New Contributors

  • @Flowdalic made their first contribution in https://github.com/axboe/liburing/pull/1414

Full Changelog: https://github.com/axboe/liburing/compare/liburing-2.10...liburing-2.11-rc1

- C
Published by axboe 9 months ago

liburing - liburing-2.10

Full Changelog: https://github.com/axboe/liburing/compare/liburing-2.9...liburing-2.10

What's Changed

  • test: Including missing string.h for memcpy by @kraj in https://github.com/axboe/liburing/pull/1351
  • [GIT PULL] examples/proxy: Fix for BIDI by @SidongYang in https://github.com/axboe/liburing/pull/1350
  • [GIT PULL] workflows/build.yml: fix sanitizer typo by @cmazakas in https://github.com/axboe/liburing/pull/1344
  • [GIT PULL] workflows/build.yml: install default ubuntu-24.04 clang by @cmazakas in https://github.com/axboe/liburing/pull/1343
  • [GIT PULL] github: Build all newly pushed commits by @ammarfaizi2 in https://github.com/axboe/liburing/pull/1352
  • [GIT PULL] Test fixes and compatibility with older kernels by @calebsander in https://github.com/axboe/liburing/pull/1354
  • [GIT PULL] SQ and CQ code cleanup by @calebsander in https://github.com/axboe/liburing/pull/1355
  • man: fix iouringsetup() parameter name mismatch by @crimilo in https://github.com/axboe/liburing/pull/1369
  • [GIT PULL] Add notes about parallel send/receive to the manual. by @fbrosseau in https://github.com/axboe/liburing/pull/1373
  • man/io_uring.7: Fix a typo in the comment of the example by @Sberm in https://github.com/axboe/liburing/pull/1394
  • [GIT PULL] register: use iouringrsrcupdate instead of iouringfilesupdate by @calebsander in https://github.com/axboe/liburing/pull/1400
  • [GIT PULL] syscall: update iouringenter2() signature by @calebsander in https://github.com/axboe/liburing/pull/1401
  • [GIT PULL] src/sanitize: add missing op entries by @cmazakas in https://github.com/axboe/liburing/pull/1403
  • [GIT PULL] test/sendmsgiovclean: fix stack use-after-free by @cmazakas in https://github.com/axboe/liburing/pull/1410

New Contributors

  • @SidongYang made their first contribution in https://github.com/axboe/liburing/pull/1350
  • @crimilo made their first contribution in https://github.com/axboe/liburing/pull/1369
  • @fbrosseau made their first contribution in https://github.com/axboe/liburing/pull/1373
  • @Sberm made their first contribution in https://github.com/axboe/liburing/pull/1394

Full Changelog: https://github.com/axboe/liburing/compare/liburing-2.9...liburing-2.10

- C
Published by axboe 9 months ago

liburing - liburing 2.9

  • Add support for ring resizing
  • Add support for registered waits
  • Test additions and improvements
  • Fix bug with certain ring setups with SQE128 set not fully closing the ring after iouringqueue_exit(3) had been called.
  • Various man page fixes and updates

- C
Published by axboe about 1 year ago

liburing - liburing 2.9-rc1

- C
Published by axboe about 1 year ago

liburing - Liburing 2.8

liburing-2.8 release

  • Add support for incrementally/partially consumed provided buffers, usable with the provided buffer ring support.
  • Add support for fooandwaitmintimeout(), where it's possible to define a minimum timeout for waiting to get batches of completions, but if that fails, extend for a longer timeout without having any extra context switches.
  • Add support for using different clock sources for completion waiting.
  • Great increase coverage of test cases, test case improvements and fixes.
  • Man page updates
  • Don't leak GNUSOURCE via pkb-config --cflags
  • Support for address sanitizer
  • Add examples/kdigest sample program
  • Add discard helper, test, and man page

Full Changelog: https://github.com/axboe/liburing/compare/liburing-2.8-rc1...liburing-2.8

- C
Published by axboe over 1 year ago

liburing - Liburing 2.8-rc1 pre-release

liburing-2.8 pre-release - Add support for incrementally/partially consumed provided buffers, usable with the provided buffer ring support. - Add support for fooandwaitmintimeout(), where it's possible to define a minimum timeout for waiting to get batches of completions, but if that fails, extend for a longer timeout without having any extra context switches. - Add support for using different clock sources for completion waiting. - Great increase coverage of test cases, test case improvements and fixes. - Man page updates - Don't leak GNUSOURCE via pkb-config --cflags - Support for address sanitizer - Add examples/kdigest sample program

- C
Published by axboe over 1 year ago

liburing - Liburing 2.7

liburing-2.7 release

  • Man page updates
  • Sync with kernel 6.10
    • send/recv bundle support
    • accept nowait and CQEFMORE
  • Add and update test cases
  • Fix iouringqueueinitmem() returning a value that was too small, potentially causing memory corruption in userspace by overwriting 64 bytes beyond the returned value. Also add test case for that.
  • Add 64-bit length variants of iouringprep_{m,f}advise()
  • Add BIND/LISTEN support and helpers / man pages
  • Add iouringenable_rings.3 man page
  • Fix bug in iouringprepreadmultishot()
  • Fixup bundle test cases
  • Add fixed-hugepage test case
  • Fix iouringprepfixedfd_install.3 man page
  • Note 'len' == 0 requirement in iouringprep_send.3 man page
  • Fix some test cases for skipping on older kernels

- C
Published by axboe over 1 year ago

liburing - Liburing 2.6

liburing-2.6 release

  • 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 IORINGSETUPNO_SQARRAY
  • Use IORINGSETUPNO_SQARRAY as the default
  • Add support for IORINGOPFIXEDFDINSTALL
  • Add iouringprepfixedfd_install() helper
  • Support for napi busy polling
  • Improve/add test cases
  • Man page fixes
  • Add sample 'proxy' example

- C
Published by axboe almost 2 years ago

liburing - Liburing 2.5

  • Add support for iouringprepcmdsock()
  • Add support for application allocated ring memory, for placing rings in huge mem. Available through iouringqueueinitmem().
  • Add support for registered ring fds
  • Various documentation updates
  • Various fixes

- C
Published by axboe over 2 years ago

liburing - Liburing 2.4

liburing-2.4 release

  • Add iouring{major,minor,check}_version() functions.
  • Add IOURING{MAJOR,MINOR,CHECK}_VERSION() macros.
  • FFI support (for non-C/C++ languages integration).
  • Add iouringprepmsgringcqeflags() function.
  • Deprecate --nolibc configure option.
  • CONFIG_NOLIBC is always enabled on x86-64, x86, and aarch64.
  • Add support for IORINGREGISTERUSEREGISTEREDRING and use if available.
  • Add iouringcloseringfd() function.
  • Add iouringprepmsgringfdalloc function.
  • Add iouringfreebufring() and iouringsetupbufring() functions.
  • Ensure that iouringprepacceptdirect(), iouringprepopenatdirect(), iouringprepopenat2direct(), iouringprepmsgringfd(), and iouringprepsocketdirect() factor in being called with IORINGFILEINDEXALLOC for allocating a direct descriptor.
  • Add iouringprep_sendto() function.

- C
Published by axboe over 2 years ago