From: Tejun Heo <tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: Yu Kuai <yukuai1-XF6JlduFytWkHkcT6e4Xnw@public.gmane.org>
Cc: hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org,
josef-DigfWCa+lFGyeJad7bwFQA@public.gmane.org,
axboe-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org,
cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-block-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
yukuai3-hv44wF8Li93QT0dZR+AlfA@public.gmane.org,
yi.zhang-hv44wF8Li93QT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH -next 3/4] blk-iocost: dispatch all throttled bio in ioc_pd_offline
Date: Mon, 19 Dec 2022 11:31:41 -1000 [thread overview]
Message-ID: <Y6DYPRWtEAfUrH4Q@slm.duckdns.org> (raw)
In-Reply-To: <20221217030527.1250083-4-yukuai1-XF6JlduFytWkHkcT6e4Xnw@public.gmane.org>
On Sat, Dec 17, 2022 at 11:05:26AM +0800, Yu Kuai wrote:
> From: Yu Kuai <yukuai3-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
>
> Currently, if cgroup is removed while some bio is still throttled, such
> bio will still wait for timer to dispatch. On the one hand, it
> doesn't make sense to throttle bio while cgroup is removed, on the other
> hand, this behaviour makes it hard to guarantee the exit order for
> iocg(in ioc_pd_free() currently).
Yeah, idk about this. So, now if you're in a cgroup with IO restriction, you
can create a sub-cgroup shove all the IOs in there and then kill the cgroup
and escape control and do so repeatedly.
The refcnting is rather complicated in blkcg world because it gets pulled
from several different directions but the problem you're trying to address
likely should be addressed through refcnting.
Thanks.
--
tejun
next prev parent reply other threads:[~2022-12-19 21:31 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-17 3:05 [PATCH -next 0/4] blk-iocost: make sure parent iocg is exited before child Yu Kuai
[not found] ` <20221217030527.1250083-1-yukuai1-XF6JlduFytWkHkcT6e4Xnw@public.gmane.org>
2022-12-17 3:05 ` [PATCH -next 1/4] blk-iocost: track whether iocg is still online Yu Kuai
2022-12-21 10:33 ` Christoph Hellwig
[not found] ` <Y6LhD8CEkcgLUJoQ-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2022-12-26 1:10 ` Yu Kuai
2022-12-17 3:05 ` [PATCH -next 2/4] blk-iocost: don't throttle bio if iocg is offlined Yu Kuai
2022-12-19 21:28 ` Tejun Heo
[not found] ` <Y6DXkLeOmu7VWovz-NiLfg/pYEd1N0TnZuCh8vA@public.gmane.org>
2022-12-20 9:38 ` Yu Kuai
2022-12-17 3:05 ` [PATCH -next 3/4] blk-iocost: dispatch all throttled bio in ioc_pd_offline Yu Kuai
[not found] ` <20221217030527.1250083-4-yukuai1-XF6JlduFytWkHkcT6e4Xnw@public.gmane.org>
2022-12-19 21:31 ` Tejun Heo [this message]
2022-12-17 3:05 ` [PATCH -next 4/4] blk-iocost: guarantee the exit order of iocg Yu Kuai
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=Y6DYPRWtEAfUrH4Q@slm.duckdns.org \
--to=tj-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
--cc=axboe-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org \
--cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=hch-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=josef-DigfWCa+lFGyeJad7bwFQA@public.gmane.org \
--cc=linux-block-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=yi.zhang-hv44wF8Li93QT0dZR+AlfA@public.gmane.org \
--cc=yukuai1-XF6JlduFytWkHkcT6e4Xnw@public.gmane.org \
--cc=yukuai3-hv44wF8Li93QT0dZR+AlfA@public.gmane.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