axboe / fio

Flexible I/O Tester
GNU General Public License v2.0
5.01k stars 1.23k forks source link

fio: pid=2146, err=9/file:engines/io_uring.c:1032, func=ioring_register_files, error=Bad file descriptor #1773

Closed abhinavg97 closed 3 weeks ago

abhinavg97 commented 3 weeks ago

Please acknowledge the following before creating a ticket

Description of the bug:

I get the following error for sqthread_poll=1 flag.

The following command is run which produces the error. sudo fio iou_s.conf.

iou_s.conf

[global]
direct=1
size=100%
time_based=1
runtime=10
ramp_time=10
allow_file_create=0
rw=randread
bs=4k
norandommap=1
ioengine=io_uring
thread=1
sqthread_poll=1

[job1]
filename=/dev/nvme0n1

Environment:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.6 LTS
Release:        20.04
Codename:       focal

$ lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0     7:0    0    64M  1 loop /snap/core20/2318
loop1     7:1    0 353.2M  1 loop /snap/google-cloud-cli/239
loop2     7:2    0  91.9M  1 loop /snap/lxd/24061
loop3     7:3    0  38.8M  1 loop /snap/snapd/21465
loop4     7:4    0  38.8M  1 loop /snap/snapd/21759
sda       8:0    0    32G  0 disk 
├─sda1    8:1    0  31.9G  0 part /
├─sda14   8:14   0     4M  0 part 
└─sda15   8:15   0   106M  0 part /boot/efi
nvme0n1 259:0    0   375G  0 disk 
nvme0n2 259:1    0   375G  0 disk 
nvme0n3 259:2    0   375G  0 disk 
nvme0n4 259:3    0   375G  0 disk 

fio version: fio-3.33-55-g77c75

Reproduction steps

sudo apt -y update
sudo apt -y install software-properties-common
sudo apt -y install build-essential
sudo apt-get -y install libaio1
sudo apt-get install -y pkg-config
sudo apt -y install libfdt-dev
sudo apt -y install libarchive-dev
sudo apt -y install libpcap-dev
sudo apt-get -y install python3-sphinx
sudo apt -y install  linux-image-extra-virtual
sudo apt-get -y install -y libjansson-dev
sudo apt -y install libbsd-dev
sudo apt-get -y install -y build-essential libaio-dev libnuma-dev libncurses5-dev uuid-dev libssl-dev
sudo apt-get -y install -y linux-image-extra-$(uname -r)
sudo apt-get -y install linux-modules-extra-5.4.0-182-generic
sudo apt -y install linux-modules-extra-$(uname -r) linux-image-extra-virtual
  1. git clone https://github.com/axboe/fio.git
  2. git checkout 77c758db876d93022e8f2bb4fd4c1acbbf7e76ac
  3. cd fio
  4. ./configure
  5. make
  6. sudo make install
  7. git clone https://github.com/spdk/spdk.git
  8. cd spdk
  9. git checkout aed4ece93c659195d4b56399a181f41e00a7a25e
  10. git submodule update --init
  11. sudo scripts/pkgdep.sh --all
  12. ./configure --with-fio=/path/to/fio/repo
  13. make
  14. sudo make install
  15. Run sudo fio iou_s.conf and you get the error: fio: pid=xxxx, err=9/file:engines/io_uring.c:1032, func=ioring_register_files, error=Bad file descriptor
axboe commented 3 weeks ago

Your kernel is too old to support registered files for SQPOLL. Run a 6.x kernel. Closing as this isn't a fio issue.