From: "Michal Koutný" <mkoutny@suse.com>
To: Waiman Long <longman@redhat.com>
Cc: Tejun Heo <tj@kernel.org>, Jens Axboe <axboe@kernel.dk>,
cgroups@vger.kernel.org, linux-block@vger.kernel.org,
linux-kernel@vger.kernel.org, Ming Lei <ming.lei@redhat.com>
Subject: Re: [PATCH v6 3/3] blk-cgroup: Optimize blkcg_rstat_flush()
Date: Wed, 8 Jun 2022 23:12:53 +0200 [thread overview]
Message-ID: <YqEQ1cudjZmUU7rs@blackbook> (raw)
In-Reply-To: <506eaa3d-be84-c51e-3252-2979847054fe@redhat.com>
On Wed, Jun 08, 2022 at 02:16:45PM -0400, Waiman Long <longman@redhat.com> 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
next prev parent reply other threads:[~2022-06-08 21:12 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-02 19:20 [PATCH v6 0/3] blk-cgroup: Optimize blkcg_rstat_flush() Waiman Long
[not found] ` <20220602192020.166940-1-longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2022-06-02 19:20 ` [PATCH v6 1/3] blk-cgroup: Correctly free percpu iostat_cpu in blkg on error exit Waiman Long
[not found] ` <20220602192020.166940-2-longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2022-06-04 2:08 ` Ming Lei
2022-06-04 2:47 ` Waiman Long
2022-06-02 19:20 ` [PATCH v6 2/3] blk-cgroup: Return -ENOMEM directly in blkcg_css_alloc() error path Waiman Long
2022-06-02 20:39 ` Tejun Heo
[not found] ` <20220602192020.166940-3-longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2022-06-04 2:16 ` Ming Lei
2022-06-02 19:20 ` [PATCH v6 3/3] blk-cgroup: Optimize blkcg_rstat_flush() Waiman Long
2022-06-04 3:58 ` Ming Lei
2022-06-05 23:15 ` Waiman Long
2022-06-06 1:39 ` Ming Lei
2022-06-06 1:59 ` Waiman Long
2022-06-06 2:23 ` Ming Lei
2022-06-06 2:58 ` Waiman Long
2022-06-06 3:15 ` Ming Lei
[not found] ` <20220602192020.166940-4-longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2022-06-06 3:16 ` Ming Lei
2022-06-08 16:57 ` Michal Koutný
2022-06-08 18:16 ` Waiman Long
2022-06-08 21:12 ` Michal Koutný [this message]
2022-06-08 22:14 ` Michal Koutný
2022-09-30 18:34 ` Waiman Long
Reply instructions:
You may reply publicly 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=YqEQ1cudjZmUU7rs@blackbook \
--to=mkoutny@suse.com \
--cc=axboe@kernel.dk \
--cc=cgroups@vger.kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=ming.lei@redhat.com \
--cc=tj@kernel.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox