Re: [PATCH UPDATED 11/11] blkcg: unify blkg's for blkcg policies

From: Vivek Goyal
Date: Fri Feb 03 2012 - 17:24:04 EST


On Fri, Feb 03, 2012 at 02:14:09PM -0800, Tejun Heo wrote:
> On Fri, Feb 03, 2012 at 04:53:49PM -0500, Vivek Goyal wrote:
> > Hmm... then blkiocg_reset_stats() will run into lock ordering issue. Can't
> > hold queue lock inside blkcg lock. I guess you will do some kind of
> > locking trick again as you did for io context logic.
>
> Ummm... I don't know the details yet but decisions like making
> policies per-queue are much higher level than locking details. There
> are cases where implementation details become problematic enough and
> high level decisions are affected but I don't really think that would
> be the case here. It's not like reset stats is a hot path. In fact,
> I don't even understand why the hell we have it. I guess it's another
> blkcg braindamage.

git commit of when it was added.

commit 84c124da9ff50bd71fab9c939ee5b7cd8bef2bd9
Author: Divyesh Shah <dpshah@xxxxxxxxxx>
Date: Fri Apr 9 08:31:19 2010 +0200

..
o add a separate reset_stats interface
..

>
> If userland is interested in delta between certain periods, it's
> supposed to read values at the start and end of the period and
> subtract. Allowing reset might make sense if there's single bearded
> admin looking at the raw numbers, but it breaks as soon as tools and
> automation are involved. How would you decide who owns those
> counters?
>

Personally I consider it to be a debugging aid. User space applications
should do what you suggested and that is take delta between certain
periods.

Frankly speaking I have found it useful though. If I am debugging something,
I don't have to reboot the system to reset the stats and calculating the
difference from zero is easier for humans.

Thanks
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/