search for: io_issue_sqe

Displaying 5 results from an estimated 5 matches for "io_issue_sqe".

2023 Feb 27
2
report BUG: io_uring triggers umount error
...f->f_path.mnt)); >> //printf("%s\n", kstack); >> } >> } >> ``` >> > > I am not familiar with io_uring, and can't make sure my analysis is correct. > Because ocfs2_file_read_iter() returns -EOPNOTSUPP, then fails > io_iter_do_read(), the io_issue_sqe missing fput() which causes umount failure > issue. > > io_issue_sqe > + io_assign_file //call fget(), but missing fput() > + def->issue() > | io_read > | + io_iter_do_read > | | ocfs2_file_read_iter > | | return: -EOPNOTSUPP //iocb->ki_flags:0x8 &g...
2023 Feb 26
1
report BUG: io_uring triggers umount error
...me.name), $cnt.counter, kptr($f), kptr($f->f_path.mnt)); > //printf("%s\n", kstack); > } > } > ``` > I am not familiar with io_uring, and can't make sure my analysis is correct. Because ocfs2_file_read_iter() returns -EOPNOTSUPP, then fails io_iter_do_read(), the io_issue_sqe missing fput() which causes umount failure issue. io_issue_sqe + io_assign_file //call fget(), but missing fput() + def->issue() | io_read | + io_iter_do_read | | ocfs2_file_read_iter | | return: -EOPNOTSUPP //iocb->ki_flags:0x8 | + kiocb_done | + io_rw_done(&rw-...
2023 Mar 01
1
report BUG: io_uring triggers umount error
...//printf("%s\n", kstack); >>> } >>> } >>> ``` >>> >> >> I am not familiar with io_uring, and can't make sure my analysis is correct. >> Because ocfs2_file_read_iter() returns -EOPNOTSUPP, then fails >> io_iter_do_read(), the io_issue_sqe missing fput() which causes umount failure >> issue. >> >> io_issue_sqe >> + io_assign_file //call fget(), but missing fput() >> + def->issue() >> | io_read >> | + io_iter_do_read >> | | ocfs2_file_read_iter >> | | return: -EO...
2023 Feb 26
1
report BUG: io_uring triggers umount error
On Fri, Feb 24, 2023 at 06:59:47PM +0800, Joseph Qi wrote: > > > On 2/24/23 4:03 PM, Heming Zhao wrote: > > On 2/24/23 3:52 PM, Joseph Qi wrote: > >> > >> > >> On 2/24/23 3:48 PM, Heming Zhao via Ocfs2-devel wrote: > >>> On 2/24/23 2:54 PM, Joseph Qi wrote: > >>>> I can reproduce this in my local VM. > >>>>
2023 Feb 28
1
[PATCH] io_uring: fix fget leak when fs don't support nowait buffered read
...unt will fail, and it outputs: umount: /mnt/ocfs2: target is busy. While tracing umount, it blames mnt_get_count() not return as expected. Do a deep investigation for fget()/fput() on related code flow, I've finally found that fget() leaks since ocfs2 doesn't support nowait buffered read. io_issue_sqe |-io_assign_file // do fget() first |-io_read |-io_iter_do_read |-ocfs2_file_read_iter // return -EOPNOTSUPP |-kiocb_done |-io_rw_done |-__io_complete_rw_common // set REQ_F_REISSUE |-io_resubmit_prep |-io_req_prep_async // override req->file, leak happens This...