From: Andrea Righi <righi.andrea@gmail.com>
To: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Balbir Singh <balbir@linux.vnet.ibm.com>,
Paul Menage <menage@google.com>,
agk@sourceware.org, akpm@linux-foundation.org, axboe@kernel.dk,
baramsori72@gmail.com, Carl Henrik Lunde <chlunde@ping.uio.no>,
dave@linux.vnet.ibm.com, Divyesh Shah <dpshah@google.com>,
eric.rannaud@gmail.com, fernando@oss.ntt.co.jp,
Hirokazu Takahashi <taka@valinux.co.jp>,
Li Zefan <lizf@cn.fujitsu.com>,
Marco Innocenti <m.innocenti@cineca.it>,
matt@bluehost.com, ngupta@google.com, roberto@unbit.it,
Ryo Tsuruta <ryov@valinux.co.jp>,
Satoshi UCHIDA <s-uchida@ap.jp.nec.com>,
subrata@linux.vnet.ibm.com, yoshikawa.takuya@oss.ntt.co.jp,
containers@lists.linux-foundation.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH -mm 2/6] introduce struct res_counter_ratelimit
Date: Fri, 19 Sep 2008 22:32:41 +0200 [thread overview]
Message-ID: <48D40C69.8040207@gmail.com> (raw)
In-Reply-To: <20080919100832.e188460a.randy.dunlap@oracle.com>
Randy Dunlap wrote:
> On Wed, 17 Sep 2008 13:05:24 +0200 Andrea Righi wrote:
>
>> Introduce res_counter_ratelimit as a generic structure to implement
>> throttling-based cgroup subsystems.
>>
>> [ Only the interfaces needed by the IO controller are implemented right now ]
>>
>> Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
>> ---
>> include/linux/res_counter.h | 70 +++++++++++++++++++++++++
>> kernel/res_counter.c | 118 ++++++++++++++++++++++++++++++++++++++++++-
>> 2 files changed, 187 insertions(+), 1 deletions(-)
>>
>> diff --git a/include/linux/res_counter.h b/include/linux/res_counter.h
>> index 0ab55c4..ff677d9 100644
>> --- a/include/linux/res_counter.h
>> +++ b/include/linux/res_counter.h
>> @@ -45,6 +46,38 @@ struct res_counter {
>> spinlock_t lock;
>> };
>>
>> +/* The various policies that can be used for throttling */
>> +#define RATELIMIT_LEAKY_BUCKET 0
>> +#define RATELIMIT_TOKEN_BUCKET 1
>> +
>> +struct res_counter_ratelimit {
>> + /*
>> + * the current resource consumption level
>> + */
>> + unsigned long long usage;
>> + /*
>> + * the maximal value of the usage from the counter creation
>> + */
>> + unsigned long long max_usage;
>> + /*
>> + * the rate limit that cannot be exceeded
>> + */
>> + unsigned long long limit;
>> + /*
>> + * the limiting policy / algorithm
>> + */
>> + unsigned long long policy;
>> + /*
>> + * timestamp of the last accounted resource request
>> + */
>> + unsigned long long timestamp;
>> + /*
>> + * the lock to protect all of the above.
>> + * the routines below consider this to be IRQ-safe
>> + */
>> + spinlock_t lock;
>> +};
>
> With such nice struct comments, it looks like you should convert them
> to kernel-doc for structs. See Documentation/kernel-doc-nano-HOWTO.txt
> for into, or ask me if you need some help with it.
>
Sure! I will do for the next version. Actually, I'm already using the kernel-doc
style in other parts of this patchset (i.e. to document iothrottle structures).
Thanks!
-Andrea
next prev parent reply other threads:[~2008-09-19 20:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-17 11:05 [PATCH -mm 2/6] introduce struct res_counter_ratelimit Andrea Righi
2008-09-17 11:05 ` Andrea Righi
[not found] ` <1221649528-8519-3-git-send-email-righi.andrea-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-09-19 17:08 ` Randy Dunlap
2008-09-19 17:08 ` Randy Dunlap
[not found] ` <20080919100832.e188460a.randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-09-19 20:32 ` Andrea Righi
2008-09-19 20:32 ` Andrea Righi [this message]
2008-10-05 18:03 ` Paul Menage
2008-10-05 18:03 ` Paul Menage
2008-10-06 8:03 ` Andrea Righi
[not found] ` <48E9C637.8030507-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-10-06 17:14 ` Paul Menage
2008-10-06 17:14 ` Paul Menage
2008-10-06 17:20 ` Balbir Singh
2008-10-06 19:38 ` Andrea Righi
[not found] ` <48EA48C2.40803-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2008-10-06 19:38 ` Andrea Righi
[not found] ` <6599ad830810061014q5535b5b6kfb53182b3fcc60c8-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-10-06 17:20 ` Balbir Singh
[not found] ` <6599ad830810051103v1bd6e8d4xd2fcf622558fc7d9-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-10-06 8:03 ` Andrea Righi
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=48D40C69.8040207@gmail.com \
--to=righi.andrea@gmail.com \
--cc=agk@sourceware.org \
--cc=akpm@linux-foundation.org \
--cc=axboe@kernel.dk \
--cc=balbir@linux.vnet.ibm.com \
--cc=baramsori72@gmail.com \
--cc=chlunde@ping.uio.no \
--cc=containers@lists.linux-foundation.org \
--cc=dave@linux.vnet.ibm.com \
--cc=dpshah@google.com \
--cc=eric.rannaud@gmail.com \
--cc=fernando@oss.ntt.co.jp \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=m.innocenti@cineca.it \
--cc=matt@bluehost.com \
--cc=menage@google.com \
--cc=ngupta@google.com \
--cc=randy.dunlap@oracle.com \
--cc=roberto@unbit.it \
--cc=ryov@valinux.co.jp \
--cc=s-uchida@ap.jp.nec.com \
--cc=subrata@linux.vnet.ibm.com \
--cc=taka@valinux.co.jp \
--cc=yoshikawa.takuya@oss.ntt.co.jp \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.