configfs: Allow ->make_item() and ->make_group() to return detailed errors.
authorJoel Becker <joel.becker@oracle.com>
Thu, 17 Jul 2008 22:21:29 +0000 (15:21 -0700)
committerJoel Becker <joel.becker@oracle.com>
Thu, 17 Jul 2008 22:21:29 +0000 (15:21 -0700)
commita6795e9ebb420d87af43789174689af0d66d1d35
treefb2a86ad010015fdd311f3b7f6ef30f60c14b8f7
parentf89ab8619e5320cc9c2576f5f8dcbaf6c0ba3950
configfs: Allow ->make_item() and ->make_group() to return detailed errors.

The configfs operations ->make_item() and ->make_group() currently
return a new item/group.  A return of NULL signifies an error.  Because
of this, -ENOMEM is the only return code bubbled up the stack.

Multiple folks have requested the ability to return specific error codes
when these operations fail.  This patch adds that ability by changing the
->make_item/group() ops to return ERR_PTR() values.  These errors are
bubbled up appropriately.  NULL returns are changed to -ENOMEM for
compatibility.

Also updated are the in-kernel users of configfs.

This is a rework of reverted commit 11c3b79218390a139f2d474ee1e983a672d5839a.

Signed-off-by: Joel Becker <joel.becker@oracle.com>
Documentation/filesystems/configfs/configfs_example.c
drivers/net/netconsole.c
fs/configfs/dir.c
fs/dlm/config.c
fs/ocfs2/cluster/heartbeat.c
fs/ocfs2/cluster/nodemanager.c
include/linux/configfs.h