]> git.karo-electronics.de Git - karo-tx-linux.git/commit
cgroups: pull up res counter charge failure interpretation to caller
authorFrederic Weisbecker <fweisbec@gmail.com>
Wed, 30 Nov 2011 04:11:51 +0000 (15:11 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Wed, 30 Nov 2011 04:14:01 +0000 (15:14 +1100)
commit4f5d9aa078553bd4ca3a6408582dfd828773d177
treeec2f0d2e7e787c4dd5f461a6bfc962fbc9e194c3
parentaa5ea2db68dc5bbe569436a583669a5eed89f18a
cgroups: pull up res counter charge failure interpretation to caller

res_counter_charge() always returns -ENOMEM when the limit is reached and
the charge thus can't happen.

However it's up to the caller to interpret this failure and return the
appropriate error value.  The task counter subsystem will need to report
the user that a fork() has been cancelled because of some limit reached,
not because we are too short on memory.

Fix this by returning -1 when res_counter_charge() fails.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Paul Menage <paul@paulmenage.org>
Cc: Li Zefan <lizf@cn.fujitsu.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Aditya Kali <adityakali@google.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Tim Hockin <thockin@hockin.org>
Cc: Tejun Heo <htejun@gmail.com>
Acked-by: Kirill A. Shutemov <kirill@shutemov.name>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Documentation/cgroups/resource_counter.txt
kernel/res_counter.c