• Linus Torvalds's avatar
    Merge tag 'for-5.16/io_uring-2021-10-29' of git://git.kernel.dk/linux-block · 8d1f0177
    Linus Torvalds authored
    Pull io_uring updates from Jens Axboe:
     "Light on new features - basically just the hybrid mode support.
    
      Outside of that it's just fixes, cleanups, and performance
      improvements.
    
      In detail:
    
       - Add ring related information to the fdinfo output (Hao)
    
       - Hybrid async mode (Hao)
    
       - Support for batched issue on block (me)
    
       - sqe error trace improvement (me)
    
       - IOPOLL efficiency improvements (Pavel)
    
       - submit state cleanups and improvements (Pavel)
    
       - Completion side improvements (Pavel)
    
       - Drain improvements (Pavel)
    
       - Buffer selection cleanups (Pavel)
    
       - Fixed file node improvements (Pavel)
    
       - io-wq setup cancelation fix (Pavel)
    
       - Various other performance improvements and cleanups (Pavel)
    
       - Misc fixes (Arnd, Bixuan, Changcheng, Hao, me, Noah)"
    
    * tag 'for-5.16/io_uring-2021-10-29' of git://git.kernel.dk/linux-block: (97 commits)
      io-wq: remove worker to owner tw dependency
      io_uring: harder fdinfo sq/cq ring iterating
      io_uring: don't assign write hint in the read path
      io_uring: clusterise ki_flags access in rw_prep
      io_uring: kill unused param from io_file_supports_nowait
      io_uring: clean up timeout async_data allocation
      io_uring: don't try io-wq polling if not supported
      io_uring: check if opcode needs poll first on arming
      io_uring: clean iowq submit work cancellation
      io_uring: clean io_wq_submit_work()'s main loop
      io-wq: use helper for worker refcounting
      io_uring: implement async hybrid mode for pollable requests
      io_uring: Use ERR_CAST() instead of ERR_PTR(PTR_ERR())
      io_uring: split logic of force_nonblock
      io_uring: warning about unused-but-set parameter
      io_uring: inform block layer of how many requests we are submitting
      io_uring: simplify io_file_supports_nowait()
      io_uring: combine REQ_F_NOWAIT_{READ,WRITE} flags
      io_uring: arm poll for non-nowait files
      fs/io_uring: Prioritise checking faster conditions first in io_write
      ...
    8d1f0177
io_uring.c 274 KB