aboutsummaryrefslogtreecommitdiffstats
path: root/io_uring/rw.c
AgeCommit message (Expand)AuthorFilesLines
8 daysblock: enable per-cpu bio cache by defaultFengnan Chang1-1/+0
8 daysMerge tag 'for-6.19/io_uring-20251201' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-5/+7
11 daysMerge tag 'vfs-6.19-rc1.iomap' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-14/+2
2025-11-25fs, iomap: remove IOCB_DIO_CALLER_COMPChristoph Hellwig1-14/+2
2025-11-13Merge branch 'io_uring-6.18' into for-6.19/io_uringJens Axboe1-0/+3
2025-11-10io_uring/rw: ensure allocated iovec gets cleared for early failureJens Axboe1-0/+3
2025-11-05io_uring: fix typos and comment wordingAlok Tiwari1-3/+3
2025-11-03io_uring: add wrapper type for io_req_tw_func_t argCaleb Sander Mateos1-2/+3
2025-10-15io_uring/rw: check for NULL io_br_sel when putting a bufferJens Axboe1-1/+5
2025-10-13Revert "io_uring/rw: drop -EOPNOTSUPP check in __io_complete_rw_common()"Jens Axboe1-1/+1
2025-10-02Merge tag 'for-6.18/io_uring-20250929' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-28/+35
2025-09-08io_uring: don't include filetable.h in io_uring.hCaleb Sander Mateos1-0/+1
2025-08-27io_uring: add async data clear/free helpersJens Axboe1-4/+2
2025-08-24io_uring/kbuf: switch to storing struct io_buffer_list locallyJens Axboe1-11/+11
2025-08-24io_uring/rw: recycle buffers manually for non-mshot readsJens Axboe1-0/+2
2025-08-24io_uring/kbuf: introduce struct io_br_selJens Axboe1-14/+20
2025-08-24io_uring/kbuf: pass in struct io_buffer_list to commit/recycle helpersJens Axboe1-7/+7
2025-08-24io_uring/kbuf: drop 'issue_flags' from io_put_kbuf(s)() argumentsJens Axboe1-5/+5
2025-08-20fs: add a FMODE_ flag to indicate IOCB_HAS_METADATA availabilityChristoph Hellwig1-0/+3
2025-07-07io_uring/rw: cast rw->flags assignment to rwf_tJens Axboe1-1/+1
2025-05-26Merge tag 'for-6.16/io_uring-20250523' of git://git.kernel.dk/linuxLinus Torvalds1-2/+5
2025-05-21io_uring: finish IOU_OK -> IOU_COMPLETE transitionJens Axboe1-1/+1
2025-05-06io_uring: enable per-io write streamsKeith Busch1-0/+1
2025-04-21io_uring/kbuf: pass bgid to io_buffer_select()Pavel Begunkov1-1/+4
2025-03-28Merge tag 'for-6.15/io_uring-reg-vec-20250327' of git://git.kernel.dk/linuxLinus Torvalds1-21/+73
2025-03-26Merge tag 'for-6.15/io_uring-20250322' of git://git.kernel.dk/linuxLinus Torvalds1-92/+108
2025-03-10io_uring: rely on io_prep_reg_vec for iovec placementPavel Begunkov1-2/+1
2025-03-10io_uring: introduce io_prep_reg_iovec()Pavel Begunkov1-20/+1
2025-03-10io_uring: unify STOP_MULTISHOT with IOU_OKPavel Begunkov1-3/+1
2025-03-10io_uring: return -EAGAIN to continue multishotPavel Begunkov1-7/+4
2025-03-07io_uring: cap cached iovec/bvec sizePavel Begunkov1-0/+3
2025-03-07io_uring/rw: defer reg buf vec importPavel Begunkov1-8/+34
2025-03-07io_uring/rw: implement vectored registered rwPavel Begunkov1-0/+51
2025-03-07io_uring: introduce struct iou_vecPavel Begunkov1-10/+7
2025-03-05io_uring/rw: ensure reissue path is correctly handled for IOPOLLJens Axboe1-4/+3
2025-02-28io_uring: add support for kernel registered bvecsKeith Busch1-0/+3
2025-02-28io_uring/rw: move fixed buffer import to issue pathKeith Busch1-9/+30
2025-02-28io_uring/rw: move buffer_select outside generic prepKeith Busch1-17/+28
2025-02-27Merge branch 'io_uring-6.14' into for-6.15/io_uringJens Axboe1-9/+21
2025-02-27io_uring: combine buffer lookup and importPavel Begunkov1-8/+1
2025-02-27io_uring/rw: open code io_prep_rw_setup()Pavel Begunkov1-16/+9
2025-02-25io_uring/rw: extract helper for iovec importPavel Begunkov1-26/+31
2025-02-25io_uring/rw: rename io_import_iovec()Pavel Begunkov1-7/+7
2025-02-25io_uring/rw: allocate async data in io_prep_rw()Pavel Begunkov1-3/+3
2025-02-24io_uring/rw: shrink io_iov_compat_buffer_select_prepPavel Begunkov1-10/+4
2025-02-24io_uring/rw: compile out compat param passingPavel Begunkov1-6/+2
2025-02-19io_uring/rw: clean up mshot forced sync modePavel Begunkov1-9/+3
2025-02-19io_uring/rw: move ki_complete init into prepPavel Begunkov1-3/+8
2025-02-19io_uring/rw: don't directly use ki_completePavel Begunkov1-5/+9
2025-02-19io_uring/rw: forbid multishot async readsPavel Begunkov1-2/+11
2025-02-17io_uring: introduce type alias for io_tw_stateCaleb Sander Mateos1-2/+2
2025-01-28io_uring/rw: simplify io_rw_recycle()Pavel Begunkov1-13/+3
2025-01-28io_uring: remove !KASAN guards from cache freePavel Begunkov1-2/+0
2025-01-23io_uring: get rid of alloc cache init_once handlingJens Axboe1-21/+6
2025-01-20Merge tag 'for-6.14/io_uring-20250119' of git://git.kernel.dk/linuxLinus Torvalds1-89/+123
2025-01-10io_uring/rw: don't gate retry on completion contextJens Axboe1-6/+0
2025-01-10io_uring/rw: handle -EAGAIN retry at IO completion timeJens Axboe1-55/+25
2025-01-10io_uring/rw: use io_rw_recycle() from cleanup pathJens Axboe1-1/+2
2024-12-28io_uring/rw: fix downgraded mshot readPavel Begunkov1-0/+2
2024-12-27io_uring/rw: always clear ->bytes_done on io_async_rw setupJens Axboe1-1/+1
2024-12-27io_uring/rw: use NULL for rw->free_iovec assigmentJens Axboe1-1/+1
2024-12-27io_uring/rw: don't mask in f_iocb_flagsJens Axboe1-9/+9
2024-12-27io_uring/rw: Allocate async data through helperGabriel Krisman Bertazi1-20/+16
2024-12-23io_uring: clean up io_prep_rw_setup()David Wei1-7/+1
2024-12-23io_uring: introduce attributes for read/write and PI supportAnuj Gupta1-2/+81
2024-11-19Merge tag 'timers-core-2024-11-18' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-1/+1
2024-11-18Merge tag 'for-6.13/io_uring-20241118' of git://git.kernel.dk/linuxLinus Torvalds1-18/+87
2024-11-18Merge tag 'for-6.13/block-20241118' of git://git.kernel.dk/linuxLinus Torvalds1-2/+2
2024-11-13block: add a rq_list typeChristoph Hellwig1-2/+2
2024-11-07io_uring/rsrc: add & apply io_req_assign_buf_node()Ming Lei1-2/+1
2024-11-06io_uring: move struct io_kiocb from task_struct to io_uring_taskJens Axboe1-1/+1
2024-11-06io_uring/rsrc: split io_kiocb node type assignmentsJens Axboe1-1/+2
2024-11-02io_uring: add support for hybrid IOPOLLhexue1-11/+81
2024-11-02io_uring/rsrc: add io_rsrc_node_lookup() helperJens Axboe1-4/+2
2024-11-02io_uring/rsrc: unify file and buffer resource tablesJens Axboe1-3/+3
2024-11-02io_uring/rsrc: get rid of per-ring io_rsrc_node listJens Axboe1-4/+4
2024-10-31io_uring/rw: fix missing NOWAIT check for O_DIRECT start writeJens Axboe1-2/+21
2024-10-29io_uring: remove 'issue_flags' argument for io_req_set_rsrc_node()Jens Axboe1-1/+1
2024-10-29io_uring/rw: get rid of using req->imuJens Axboe1-2/+3
2024-10-19io_uring/rw: fix wrong NOWAIT check in io_rw_init_file()Jens Axboe1-1/+1
2024-10-06io_uring/rw: allow pollable non-blocking attempts for !FMODE_NOWAITJens Axboe1-17/+16
2024-10-06io_uring/rw: fix cflags posting for single issue multishot readJens Axboe1-7/+12
2024-09-10io_uring/rw: drop -EOPNOTSUPP check in __io_complete_rw_common()Jens Axboe1-2/+1
2024-09-10io_uring/rw: treat -EOPNOTSUPP for IOCB_NOWAIT like -EAGAINJens Axboe1-0/+8
2024-08-29io_uring/kbuf: pass in 'len' argument for buffer commitJens Axboe1-4/+4
2024-06-20fs: Initial atomic write supportPrasad Singamsetty1-5/+4
2024-05-21Merge tag 'pull-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-2/+2
2024-05-13Merge tag 'for-6.10/io_uring-20240511' of git://git.kernel.dk/linuxLinus Torvalds1-297/+288
2024-05-13Merge tag 'vfs-6.10.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vf...Linus Torvalds1-4/+5
2024-04-25io_uring/rw: reinstate thread check for retriesJens Axboe1-11/+29
2024-04-17io_uring/rw: ensure retry condition isn't lostJens Axboe1-7/+6
2024-04-15remove call_{read,write}_iter() functionsMiklos Szeredi1-2/+2
2024-04-15io_uring/alloc_cache: switch to array based cachingJens Axboe1-8/+6
2024-04-15io_uring/rw: add iovec recyclingJens Axboe1-5/+37
2024-04-15io_uring/rw: cleanup retry pathJens Axboe1-27/+8
2024-04-15io_uring: get rid of struct io_rw_stateJens Axboe1-22/+23
2024-04-15io_uring/rw: always setup io_async_rw for read/write requestsJens Axboe1-283/+255
2024-04-15io_uring: refactor io_fill_cqe_req_auxPavel Begunkov1-3/+1
2024-04-15io_uring: remove struct io_tw_state::lockedPavel Begunkov1-4/+2
2024-04-15io_uring/rw: avoid punting to io-wq directlyPavel Begunkov1-7/+1
2024-04-07fs: claw back a few FMODE_* bitsChristian Brauner1-4/+5
2024-04-01io_uring/rw: don't allow multishot reads without NOWAIT supportJens Axboe1-1/+8
2024-03-12io_uring/rw: return IOU_ISSUE_SKIP_COMPLETE for multishot retryJens Axboe1-0/+2
2024-03-08io_uring: refactor DEFER_TASKRUN multishot checksPavel Begunkov1-2/+0
2024-03-08io_uring/kbuf: rename REQ_F_PARTIAL_IO to REQ_F_BL_NO_RECYCLEJens Axboe1-2/+2
2024-03-07io_uring: fix mshot read defer taskrun cqe postingPavel Begunkov1-0/+2
2024-02-12io_uring: Don't include af_unix.h.Kuniyuki Iwashima1-0/+1
2024-02-08io_uring/rw: remove dead file == NULL checkJens Axboe1-1/+1
2024-02-08io_uring: add io_file_can_poll() helperJens Axboe1-3/+3
2024-01-28io_uring/rw: ensure poll based multishot read retries appropriatelyJens Axboe1-1/+9
2024-01-10io_uring/rw: cleanup io_rw_done()Jens Axboe1-21/+27
2023-12-21io_uring/rw: ensure io->bytes_done is always initializedJens Axboe1-3/+7
2023-12-12io_uring: split out cmd api into a separate headerPavel Begunkov1-1/+1
2023-11-06io_uring: do not clamp read length for multishot readDylan Yudaken1-1/+8
2023-11-06io_uring: do not allow multishot read to set addr or lenDylan Yudaken1-0/+4
2023-11-06io_uring/rw: add separate prep handler for fixed read/writeJens Axboe1-12/+18
2023-11-06io_uring/rw: add separate prep handler for readv/writevJens Axboe1-7/+15
2023-11-03io_uring/rw: don't attempt to allocate async data if opcode doesn't need itJens Axboe1-0/+7
2023-11-01Merge tag 'for-6.7/io_uring-2023-10-30' of git://git.kernel.dk/linuxLinus Torvalds1-6/+86
2023-10-27Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfsLinus Torvalds1-1/+1
2023-10-27io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() f...Al Viro1-1/+1
2023-10-25io_uring/rw: disable IOCB_DIO_CALLER_COMPJens Axboe1-9/+0
2023-09-21io_uring/rw: add support for IORING_OP_READ_MULTISHOTJens Axboe1-0/+67
2023-09-21io_uring/rw: mark readv/writev as vectored in the opcode definitionJens Axboe1-4/+6
2023-09-21io_uring/rw: split io_read() into a helperJens Axboe1-2/+13
2023-08-29Merge tag 'for-6.6/io_uring-2023-08-28' of git://git.kernel.dk/linuxLinus Torvalds1-19/+5
2023-08-28Merge tag 'iomap-6.6-merge-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linuxLinus Torvalds1-3/+24
2023-08-24io_uring: merge iopoll and normal completion pathsPavel Begunkov1-19/+5
2023-08-24io_uring: reorder cqring_flush and wakeupsPavel Begunkov1-1/+1
2023-08-21io_uring: use kiocb_{start,end}_write() helpersAmir Goldstein1-19/+4
2023-08-21io_uring: rename kiocb_end_write() local helperAmir Goldstein1-5/+5
2023-08-11io_uring: open code io_fill_cqe_req()Pavel Begunkov1-1/+1
2023-08-01io_uring/rw: add write support for IOCB_DIO_CALLER_COMPJens Axboe1-3/+24
2023-06-20io_uring: return REQ_F_ flags from io_file_get_flagsChristoph Hellwig1-1/+1
2023-06-20io_uring: remove io_req_ffs_setChristoph Hellwig1-1/+1
2023-06-02io_uring: avoid indirect function calls for the hottest task_workJens Axboe1-1/+1
2023-04-26Merge tag 'for-6.4/block-2023-04-21' of git://git.kernel.dk/linuxLinus Torvalds1-1/+1
2023-04-26Merge tag 'for-6.4/io_uring-2023-04-21' of git://git.kernel.dk/linuxLinus Torvalds1-4/+4
2023-04-06io_uring: reduce scheduling due to twPavel Begunkov1-1/+1
2023-04-03io_uring: encapsulate task_work statePavel Begunkov1-3/+3
2023-03-30iov_iter: add iter_iov_addr() and iter_iov_len() helpersJens Axboe1-14/+13
2023-03-30iov_iter: add iter_iovec() helperJens Axboe1-4/+4
2023-03-20blk-mq: remove hybrid pollingKeith Busch1-1/+1
2023-02-20Merge tag 'for-6.3/iter-ubuf-2023-02-16' of git://git.kernel.dk/linuxLinus Torvalds1-3/+6
2023-01-29io_uring: Split io_issue_def structBreno Leitao1-1/+1
2023-01-29io_uring: Rename struct io_op_defBreno Leitao1-1/+1
2023-01-29io_uring: remove excessive unlikely on IS_ERRDmitrii Bundin1-1/+1
2023-01-13io_uring: lock overflowing for IOPOLLPavel Begunkov1-1/+5
2023-01-08io_uring: use iter_ubuf for single range importsJens Axboe1-3/+6
2022-12-15io_uring: fix overflow handling regressionPavel Begunkov1-1/+1
2022-12-13Merge tag 'for-6.2/block-2022-12-08' of git://git.kernel.dk/linuxLinus Torvalds1-1/+2
2022-12-13Merge tag 'for-6.2/io_uring-2022-12-08' of git://git.kernel.dk/linuxLinus Torvalds1-0/+6
2022-11-25use less confusing names for iov_iter direction initializersAl Viro1-5/+5
2022-11-23io_uring: remove iopoll spinlockPavel Begunkov1-3/+2
2022-11-23io_uring: add completion locking for iopollPavel Begunkov1-2/+3
2022-11-21io_uring: move kbuf put out of generic tw completePavel Begunkov1-0/+6
2022-11-16io_uring/rw: enable bio caches for IRQ rwPavel Begunkov1-1/+2
2022-10-16io_uring/rw: remove leftover debug statementJens Axboe1-2/+0
2022-10-12io_uring/rw: ensure kiocb_end_write() is always calledJens Axboe1-9/+29
2022-10-12io_uring: local variable rw shadows outer variable in io_writeStefan Roesch1-4/+4
2022-09-29io_uring/rw: defer fsnotify calls to task contextJens Axboe1-9/+15
2022-09-26io_uring/rw: don't lose short results on io_setup_async_rw()Pavel Begunkov1-3/+5
2022-09-26io_uring/rw: fix unexpected link breakagePavel Begunkov1-0/+1
2022-09-21io_uring/rw: don't lose partial IO result on failPavel Begunkov1-0/+8
2022-09-21io_uring: allow buffer recycling in READVDylan Yudaken1-82/+52
2022-09-21fs: add batch and poll flags to the uring_cmd_iopoll() handlerJens Axboe1-1/+2
2022-09-21io_uring: cleanly separate request types for iopollJens Axboe1-6/+9
2022-09-21io_uring: add iopoll infrastructure for io_uring_cmdKanchan Joshi1-1/+7
2022-09-13io_uring/rw: fix error'ed retry return valuesPavel Begunkov1-1/+1
2022-09-09io_uring/rw: fix short rw error handlingPavel Begunkov1-12/+18
2022-08-13Merge tag 'io_uring-6.0-2022-08-13' of git://git.kernel.dk/linux-blockLinus Torvalds1-14/+14
2022-08-12io_uring: make io_kiocb_to_cmd() typesafeStefan Metzmacher1-14/+14
2022-08-03Merge tag 'pull-work.iov_iter-base' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-1/+1
2022-07-24io_uring: Add tracepoint for short writesStefan Roesch1-0/+3
2022-07-24io_uring: fix issue with io_write() not always undoing sb_start_write()Jens Axboe1-1/+8
2022-07-24io_uring: Add support for async buffered writesStefan Roesch1-5/+24
2022-07-24io_uring: ensure REQ_F_ISREG is set async offloadJens Axboe1-5/+0
2022-07-24io_uring: remove priority tw list optimisationDylan Yudaken1-1/+1
2022-07-24io_uring: move io_import_fixed()Pavel Begunkov1-60/+0
2022-07-24io_uring: opcode independent fixed buf importPavel Begunkov1-14/+7
2022-07-24io_uring: add io_commit_cqring_flush()Pavel Begunkov1-4/+1
2022-07-24io_uring: kill extra io_uring_types.h includesPavel Begunkov1-1/+0
2022-07-24io_uring: rw: delegate sync completions to core io_uringPavel Begunkov1-22/+19
2022-07-24io_uring: move read/write related opcodes to its own fileJens Axboe1-0/+1099