So that callers of res_counter_charge() don't have to create and pass this
pointer even if they aren't interested in it.
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@google.com>
unsigned long flags;
struct res_counter *c, *u;
- *limit_fail_at = NULL;
+ if (limit_fail_at)
+ *limit_fail_at = NULL;
local_irq_save(flags);
for (c = counter; c != limit; c = c->parent) {
spin_lock(&c->lock);
ret = res_counter_charge_locked(c, val);
spin_unlock(&c->lock);
if (ret < 0) {
- *limit_fail_at = c;
+ if (limit_fail_at)
+ *limit_fail_at = c;
goto undo;
}
}