On Wed, Feb 1, 2023 at 4:46 AM Xiao Ni <xni@xxxxxxxxxx> wrote: > > It has added io_acct_set for raid0/raid5 io accounting and it needs to > alloc md_io_acct in the i/o path. They are free when the bios come back > from member disks. Now we don't have a method to monitor if those bios > are all come back. In the takeover process, it needs to free the raid0 > memory resource including the memory pool for md_io_acct. But maybe some > bios are still not returned. When those bios are returned, it can cause > panic bcause of introducing NULL pointer or invalid address. Something > like this: Can we use mddev->active_io for this? If not, please explain the reason in the comments (in the code). [...] > + } else Please add { } for the else clause. Thanks, Song > + if (percpu_ref_is_dying(&mddev->io_acct_cnt)) > + percpu_ref_resurrect(&mddev->io_acct_cnt); > } > > static struct md_personality raid0_personality= > -- > 2.32.0 (Apple Git-132) >