On Wed, Jun 08, 2022 at 02:16:45PM -0400, Waiman Long <longman@xxxxxxxxxx> wrote: > I have thought about that. It can be done as a follow-up patch to add a > sentinel version into llist and use that instead. Of course, I can also > update this patchset to include that. Nothing against the current form, really just an idea for a followup or prequel. > Your change may not be enough since there could be update after the flush > which will pin the blkg and hence blkcg. Wouldn't that mean submitting a bio from offlined blkcg? blkg_tryget_closest() should prevent that. > I guess one possible solution may be to abandon the llist and revert > back to list iteration when offline. I need to think a bit more about > that. > > Maybe bundle the lhead list maintenace with cgroup_rstat_updated() under > > cgroup_subsys_on_dfl()? The stats can be read on v1 anyway. > > I don't quite understand here. The change is not specific to v1 or v2. What > do you mean by the stat is readable on v1? Apologies, the critical "not" fell out. ...can not be read on v1... IOW, the rstat data are only kept when attached to v2 hierarchy, so the list of active devices needn't be maintained on v1. Michal