Re: [RFC 06/12] bio: don't check target->bi_status on error
Andreas Gruenbacher <[email protected]>
| Newsgroups | gmane.linux.kernel.device-mapper.devel,gmane.linux.block,gmane.comp.file-systems.btrfs,gmane.linux.raid,gmane.linux.kernel |
|---|---|
| Message-ID | <CAHc6FU4OeAYgvXGE+QZrAJPqERLS3v7q64uSoVtxJjG0AdZvCA@mail.gmail.com> |
On Tue, Dec 16, 2025 at 11:44 AM Christoph Hellwig <[email protected]> wrote: > On Tue, Dec 16, 2025 at 09:41:49AM +0100, Andreas Gruenbacher wrote: > > On Tue, Dec 16, 2025 at 8:59 AM Christoph Hellwig <[email protected]> wrote: > > > On Mon, Dec 08, 2025 at 12:10:13PM +0000, Andreas Gruenbacher wrote: > > > > In a few places, target->bi_status is set to source->bi_status only if > > > > source->bi_status is not 0 and target->bi_status is (still) 0. Here, > > > > checking the value of target->bi_status before setting it is an > > > > unnecessary micro optimization because we are already on an error path. > > > > > > What is source and target here? I have a hard time trying to follow > > > what this is trying to do. > > > > Not sure, what would you suggest instead? > > I still don't understand what you're saying here at all, or what this is > trying to fix or optimize. When we have this construct in the code and we know that status is not 0: if (!bio->bi_status) bio->bi_status = status; we can just do this instead: bio>bi_status = status; Andreas