Re: [PATCH] bcache: fix uninitialized closure object
"Coly Li" <[email protected]> Tue, 7 Apr 2026 22:09:56 +0800
| Newsgroups | org.kernel.vger.linux-bcache |
|---|---|
| Message-ID | <[email protected]> |
> 2026=E5=B9=B44=E6=9C=887=E6=97=A5 21:24=EF=BC=8CJens Axboe <axboe@kernel.= dk> =E5=86=99=E9=81=93=EF=BC=9A >=20 > On 4/7/26 7:19 AM, Coly Li wrote: >>> 2026?4?7? 20:44?Jens Axboe <[email protected]> ??? >>>=20 >>> On 4/7/26 3:28 AM, Coly Li wrote: >>>>> 2026?4?3? 19:11?Jens Axboe <[email protected]> ??? >>>>>=20 >>>>> On 4/2/26 10:21 PM, [email protected] wrote: >>>>>> From: Mingzhe Zou <[email protected]> >>>>>>=20 >>>>>> In the previous patch ("bcache: fix cached_dev.sb_bio use-after-free= and >>>>>> crash"), we adopted a simple modification suggestion from AI to fix = the >>>>>> use-after-free. >>>>>>=20 >>>>>> But in actual testing, we found an extreme case where the device is >>>>>> stopped before calling bch_write_bdev_super(). >>>>>>=20 >>>>>> At this point, struct closure sb_write has not been initialized yet. >>>>>> For this patch, we ensure that sb_bio has been completed via >>>>>> sb_write_mutex. >>>>>=20 >>>>> Presumably this should have a: >>>>>=20 >>>>> Fixes: fec114a98b87 ("bcache: fix cached_dev.sb_bio use-after-free an= d crash") >>>>>=20 >>>>> but for some reason it does not. I'll add it. >>>>=20 >>>> I did it on purpose. Because this patch is in Linux-stable and not in = mainline, >>>> I am not sure whether it is proper to reference the linux-block tree c= ommit id. >>>>=20 >>>> This is why the patch title is mentioned in commit log, but commit id = skipped. >>>=20 >>> Why is the patch in stable and not in mainline?! That should generally >>> never happen. >>=20 >> Oops, My fingers movement diverged from my brain. I thought >> linux-block, but typed linux-stable?. >>=20 >> I meant, when the patch merged from linux-block to Linus tree, maybe >> the commit id changes for some unexpected reason. So I didn?t >> reference the Fixes tag with linux-block tree commit id. >=20 > It'll never change going into Linus's tree, that's how git works. If I > have a rare rebase for whatever reason, I fixup the Fixes shas. So > always put them in there, there's never a reason NOT to do so. This is a clear hint. Thanks. Coly Li