[PATCH] SRCU: report out-of-memory errors
authorAlan Stern <stern@rowland.harvard.edu>
Wed, 4 Oct 2006 09:17:05 +0000 (02:17 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 4 Oct 2006 14:55:30 +0000 (07:55 -0700)
commite6a92013ba458804161c0c5b6d134d82204dc233
treeecee5fdcef80d1dba0ac6ea87370931ea39ffecd
parenteabc069401bcf45bcc3f19e643017bf761780aa8
[PATCH] SRCU: report out-of-memory errors

Currently the init_srcu_struct() routine has no way to report out-of-memory
errors.  This patch (as761) makes it return -ENOMEM when the per-cpu data
allocation fails.

The patch also makes srcu_init_notifier_head() report a BUG if a notifier
head can't be initialized.  Perhaps it should return -ENOMEM instead, but
in the most likely cases where this might occur I don't think any recovery
is possible.  Notifier chains generally are not created dynamically.

[akpm@osdl.org: avoid statement-with-side-effect in macro]
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: Paul E. McKenney <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
include/linux/srcu.h
kernel/srcu.c
kernel/sys.c