From: Dmitry Dolgov <email@example.com> To: Jens Axboe <firstname.lastname@example.org> Cc: Pavel Begunkov <email@example.com>, firstname.lastname@example.org Subject: Re: [RFC] Check if file_data is initialized Date: Thu, 9 Jan 2020 17:04:49 +0100 Message-ID: <20200109160449.jmhetf3p6f2lkp3d@localhost> (raw) In-Reply-To: <email@example.com> > On Thu, Jan 09, 2020 at 07:51:28AM -0700, Jens Axboe wrote: > On 1/9/20 7:26 AM, Pavel Begunkov wrote: > > On 1/9/2020 4:17 PM, Dmitrii Dolgov wrote: > >> With combination of --fixedbufs and an old version of fio I've managed > >> to get a strange situation, when doing io_iopoll_complete NULL pointer > >> dereference on file_data was caused in io_free_req_many. Interesting > >> enough, the very same configuration doesn't fail on a newest version of > >> fio (the old one is fc220349e4514, the new one is 2198a6b5a9f4), but I > >> guess it still makes sense to have this check if it's possible to craft > >> such request to io_uring. > > > > I didn't looked up why it could become NULL in the first place, but the > > problem is probably deeper. > > > > 1. I don't see why it puts @rb->to_free @file_data->refs, even though > > there could be non-fixed reqs. It needs to count REQ_F_FIXED_FILE reqs > > and put only as much. > > Agree on the fixed file refs, there's a bug there where it assumes they > are all still fixed. See below - Dmitrii, use this patch for testing > instead of the other one! Yes, the patch from this email also fixes the issue.
next prev parent reply index Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-01-09 13:17 Dmitrii Dolgov 2020-01-09 14:26 ` Pavel Begunkov 2020-01-09 14:51 ` Jens Axboe 2020-01-09 15:17 ` Pavel Begunkov 2020-01-09 15:23 ` Jens Axboe 2020-01-09 15:32 ` Pavel Begunkov 2020-01-09 15:34 ` Jens Axboe 2020-01-09 16:04 ` Dmitry Dolgov [this message] 2020-01-09 16:19 ` Jens Axboe 2020-01-09 14:45 ` Jens Axboe
Reply instructions: You may reply publically to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200109160449.jmhetf3p6f2lkp3d@localhost \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
IO-Uring Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/io-uring/0 io-uring/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 io-uring io-uring/ https://lore.kernel.org/io-uring \ firstname.lastname@example.org public-inbox-index io-uring Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.io-uring AGPL code for this site: git clone https://public-inbox.org/public-inbox.git