Re: [PATCH 09/10] blkcg: move io_service_bytes and io_serviced stats into blkcg_gq

Tejun Heo
2015-07-15T16:04:29Z

Hello, Vivek.

On Tue, Jul 14, 2015 at 12:09:08PM -0400, Vivek Goyal wrote:
> So now blkio.io_serviced will switch to accounting number of bios
> instead of number of requests? I feel given other stats, things
> are still confusing as other stats will similar name give stats
> about requests and not bios.
>
> IMHO, for a policy, either all the stats should be in bio or in terms
> of requests. Having a mix of these is even more confusing.

Well, the actual problem is that we have so many stats which are
hardly useful except for debugging blkcg itself. Most of these stats
aren't meaningful to userland.

> For example, IIUC, now blkio.io_serviced will keep count in terms of
> bios while blkio.io_queued will keep count in terms of number of
> requests.

Why does that matter tho? io_queued tracks the number of requests
currently queued. It's not an accumulative stat. It isn't possible
to meaningfully correlate that stat with anything else there.

> If we are keeping common stats at block layer (instead of per policy),
> I am wondering if it will make sense to reflect that in new cgroup
> files which are common to all policies in that cgroup, instead of being per
> policy. And deperecate respective per policy stat files over a period of time.

So, that's the plan for unified hierarchy and this is the groundwork
for that. There's no point in disturbing interface for the
traditional hierarchies at this point. We can simply add the new
stats and use the new ones only on the unified hierarchy but frankly
how many identical stats should we keep? What we're doing is already
pretty silly and I don't really want to add more on top.

Thanks.

--
tejun