Bug 2182163

Summary: update liburing to the latest upstream version
Product: Red Hat Enterprise Linux 9 Reporter: Jeff Moyer <jmoyer>
Component: liburingAssignee: Jeff Moyer <jmoyer>
Status: CLOSED ERRATA QA Contact: guazhang <guazhang>
Severity: unspecified Docs Contact:
Priority: high    
Version: 9.0CC: asn, dkarpele, guazhang
Target Milestone: rcKeywords: Triaged
Target Release: ---Flags: pm-rhel: mirror+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: liburing-2.3-2.el9 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-11-07 08:33:23 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jeff Moyer 2023-03-27 18:04:36 UTC
Description of problem:
We will enable io_uring kernel support in 9.3.  Let's also update liburing, and make sure the devel package is present in product listings.

Comment 1 guazhang@redhat.com 2023-05-04 07:29:31 UTC
Hi,

in compose RHEL-9.3.0-20230503.0 AppStream repo just have liburing-0.7-7.el9.

Comment 6 guazhang@redhat.com 2023-05-21 08:30:22 UTC
Hi,

Please have a look the error if expected ?

[root@storageqe-66 liburing-2.3]# lsblk
NAME                        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                           8:0    0 558.9G  0 disk 
├─sda1                        8:1    0   600M  0 part /boot/efi
├─sda2                        8:2    0     1G  0 part /boot
└─sda3                        8:3    0 557.3G  0 part 
  ├─rhel_storageqe--66-root 253:0    0    70G  0 lvm  /
  ├─rhel_storageqe--66-swap 253:1    0  15.6G  0 lvm  [SWAP]
  └─rhel_storageqe--66-home 253:2    0 471.7G  0 lvm  /home
sdb                           8:16   1     0B  0 disk 
nvme0n1                     259:1    0   1.5T  0 disk /home/nvme
[root@storageqe-66 liburing-2.3]# uname -a
Linux storageqe-66.rhts.eng.pek2.redhat.com 5.14.0-315.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 17 22:54:11 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux
[root@storageqe-66 liburing-2.3]# cat /proc/cmdline 
BOOT_IMAGE=(hd0,gpt2)/vmlinuz-5.14.0-315.el9.x86_64 root=/dev/mapper/rhel_storageqe--66-root ro loglevel=5 resume=/dev/mapper/rhel_storageqe--66-swap rd.lvm.lv=rhel_storageqe-66/root rd.lvm.lv=rhel_storageqe-66/swap selinux=0 ipv6.disable=1 console=ttyS0,115200n81 crashkernel=1G-4G:384M,4G-16G:512M,16G-64G:1G,64G-128G:2G,128G-:4G io_uring.enable=y
[root@storageqe-66 liburing-2.3]# 
[root@storageqe-66 liburing-2.3]# make runtests
make[1]: Entering directory '/home/nvme/liburing-2.3/src'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/nvme/liburing-2.3/src'
make[1]: Entering directory '/home/nvme/liburing-2.3/test'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/nvme/liburing-2.3/test'
make[1]: Entering directory '/home/nvme/liburing-2.3/examples'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/nvme/liburing-2.3/examples'
make[1]: Entering directory '/home/nvme/liburing-2.3/test'
Running test 232c93d07b74.t                                         5 sec
Running test 35fa71a030ca.t                                         5 sec
Running test 500f9fbadef8.t                                         0 sec
Running test 7ad0e4b2f83c.t                                         1 sec
Running test 8a9973408177.t                                         0 sec
Running test 917257daa0fe.t                                         0 sec
Running test a0908ae19763.t                                         0 sec
Running test a4c0b3decb33.t                                         9 sec
Running test accept.t                                               1 sec
Running test accept-link.t                                          0 sec
Running test accept-reuse.t                                         0 sec
Running test accept-test.t                                          0 sec
Running test across-fork.t                                          0 sec
Running test b19062a56726.t                                         0 sec
Running test b5837bd5311d.t                                         0 sec
Running test buf-ring.t                                             1 sec
Running test ce593a6c480a.t                                         1 sec
Running test close-opath.t                                          0 sec
Running test connect.t                                              0 sec
Running test cq-full.t                                              0 sec
Running test cq-overflow.t                                          10 sec
Running test cq-peek-batch.t                                        0 sec
Running test cq-ready.t                                             0 sec
Running test cq-size.t                                              0 sec
Running test d4ae271dfaae.t                                         0 sec
Running test d77a67ed5f27.t                                         0 sec
Running test defer.t                                                3 sec
Running test defer-taskrun.t                                        0 sec
Running test double-poll-crash.t                                    0 sec
Running test drop-submit.t                                          0 sec
Running test eeed8b54e0df.t                                         0 sec
Running test empty-eownerdead.t                                     0 sec
Running test eventfd.t                                              0 sec
Running test eventfd-disable.t                                      0 sec
Running test eventfd-reg.t                                          0 sec
Running test eventfd-ring.t                                         0 sec
Running test exec-target.t                                          0 sec
Running test exit-no-cleanup.t                                      0 sec
Running test fadvise.t                                              0 sec
Running test fallocate.t                                            0 sec
Running test fc2a85cb02ef.t                                         Test needs failslab/fail_futex/fail_page_alloc enabled, skipped
Skipped
Running test fd-pass.t                                              0 sec
Running test file-register.t                                        3 sec
Running test files-exit-hang-poll.t                                 1 sec
Running test files-exit-hang-timeout.t                              1 sec
Running test file-update.t                                          0 sec
Running test file-verify.t                                          1 sec
Running test fixed-buf-iter.t                                       0 sec
Running test fixed-link.t                                           0 sec
Running test fixed-reuse.t                                          0 sec
Running test fpos.t                                                 0 sec
Running test fsync.t                                                0 sec
Running test hardlink.t                                             0 sec
Running test io-cancel.t                                            2 sec
Running test iopoll.t                                               1 sec
Running test iopoll-leak.t                                          0 sec
Running test io_uring_enter.t                                       0 sec
Running test io_uring_passthrough.t                                 Skipped
Running test io_uring_register.t                                    Unable to map a huge page.  Try increasing /proc/sys/vm/nr_hugepages by at least 1.
Skipping the hugepage test
0 sec
Running test io_uring_setup.t                                       0 sec
Running test lfs-openat.t                                           0 sec
Running test lfs-openat-write.t                                     0 sec
Running test link.t                                                 0 sec
Running test link_drain.t                                           0 sec
Running test link-timeout.t                                         2 sec
Running test madvise.t                                              0 sec
Running test mkdir.t                                                0 sec
Running test msg-ring.t                                             0 sec
Running test multicqes_drain.t                                      20 sec
Running test nolibc.t                                               0 sec
Running test nop-all-sizes.t                                        0 sec
Running test nop.t                                                  0 sec
Running test openat2.t                                              0 sec
Running test open-close.t                                           0 sec
Running test open-direct-link.t                                     0 sec
Running test open-direct-pick.t                                     0 sec
Running test personality.t                                          0 sec
Running test pipe-eof.t                                             0 sec
Running test pipe-reuse.t                                           0 sec
Running test poll.t                                                 0 sec
Running test poll-cancel.t                                          0 sec
Running test poll-cancel-all.t                                      0 sec
Running test poll-cancel-ton.t                                      0 sec
Running test poll-link.t                                            1 sec
Running test poll-many.t                                            1 sec
Running test poll-mshot-update.t                                    3 sec
Running test poll-mshot-overflow.t                                  0 sec
Running test poll-ring.t                                            0 sec
Running test poll-v-poll.t                                          0 sec
Running test pollfree.t                                             9 sec
Running test probe.t                                                0 sec
Running test read-before-exit.t                                     0 sec
Running test read-write.t                                           1 sec
Running test recv-msgall.t                                          0 sec
Running test recv-msgall-stream.t                                   1 sec
Running test recv-multishot.t                                       not last cqe had error 4
test stream=0 wait_each=0 recvmsg=0 early_error=4  defer=0 failed
Test recv-multishot.t failed with ret 1
Running test register-restrictions.t                                0 sec
Running test rename.t                                               0 sec
Running test ringbuf-read.t                                         0 sec
Running test ring-leak2.t                                           1 sec
Running test ring-leak.t                                            0 sec
Running test rsrc_tags.t                                            14 sec
Running test rw_merge_test.t                                        0 sec
Running test self.t                                                 0 sec
Running test sendmsg_fs_cve.t                                       0 sec
Running test send_recv.t                                            0 sec
Running test send_recvmsg.t                                         0 sec
Running test shared-wq.t                                            0 sec
Running test short-read.t                                           0 sec
Running test shutdown.t                                             0 sec
Running test sigfd-deadlock.t                                       0 sec
Running test skip-cqe.t                                             0 sec
Running test socket.t                                               1 sec
Running test socket-rw.t                                            0 sec
Running test socket-rw-eagain.t                                     0 sec
Running test socket-rw-offset.t                                     0 sec
Running test splice.t                                               0 sec
Running test sq-full.t                                              0 sec
Running test sq-full-cpp.t                                          0 sec
Running test sqpoll-cancel-hang.t                                   1 sec
Running test sqpoll-disable-exit.t                                  0 sec
Running test sq-poll-dup.t                                          1 sec
Running test sqpoll-exit-hang.t                                     1 sec
Running test sq-poll-kthread.t                                      2 sec
Running test sq-poll-share.t                                        0 sec
Running test sqpoll-sleep.t                                         0 sec
Running test sq-space_left.t                                        0 sec
Running test stdout.t                                               This is a pipe test
This is a fixed pipe test
0 sec
Running test submit-and-wait.t                                      1 sec
Running test submit-link-fail.t                                     0 sec
Running test submit-reuse.t                                         1 sec
Running test sync-cancel.t                                          0 sec
Running test symlink.t                                              0 sec
Running test teardowns.t                                            0 sec
Running test thread-exit.t                                          0 sec
Running test timeout.t                                              6 sec
Running test timeout-new.t                                          3 sec
Running test timeout-overflow.t                                     Skipped
Running test tty-write-dpoll.t                                      0 sec
Running test unlink.t                                               0 sec
Running test wakeup-hang.t                                          2 sec
Running test xattr.t                                                0 sec
Running test skip-cqe.t                                             0 sec [0]
Running test single-issuer.t                                        0 sec
Running test send-zerocopy.t                                        socket: Address family not supported by protocol
sock prep failed 1
Test send-zerocopy.t failed with ret 1
Running test statx.t                                                0 sec
Running test sq-full-cpp.t                                          0 sec [0]
Tests failed (2): <recv-multishot.t> <send-zerocopy.t>
make[1]: *** [Makefile:231: runtests] Error 1
make[1]: Leaving directory '/home/nvme/liburing-2.3/test'
make: *** [Makefile:21: runtests] Error 2
[root@storageqe-66 liburing-2.3]#

Comment 7 Jeff Moyer 2023-05-23 18:13:47 UTC
Note that the liburing test harness tests the io_uring kernel support, not (just) the liburing library.

The "socket: Address family not supported by protocol" errors are because you disabled ipv6 on the kernel command line (ipv6.disable=1).

The recv-multishot.t should be diagnosed.  Please open a bug against the kernel for that one.

I think this bug can be set to verified, though.

Thanks!

Comment 8 guazhang@redhat.com 2023-05-24 02:26:47 UTC
 
> The recv-multishot.t should be diagnosed.  Please open a bug against the
> kernel for that one.
opened a new bug for the error.
https://bugzilla.redhat.com/show_bug.cgi?id=2209464

> I think this bug can be set to verified, though.

OK, thanks

Comment 13 guazhang@redhat.com 2023-06-13 09:10:01 UTC
move to verified since no regression found.

Comment 15 errata-xmlrpc 2023-11-07 08:33:23 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (liburing bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2023:6451