Re: [PATCH] More Driver Core patches for 2.6.10-rc1

From: Greg KH
Date: Fri Nov 12 2004 - 18:12:21 EST


ChangeSet 1.2094, 2004/11/12 11:42:03-08:00, miltonm@xxxxxxx

[PATCH] fix sysfs backing store error path confusion

On Nov 3, 2004, at 3:42 PM, Greg KH wrote:

|On Tue, Nov 02, 2004 at 10:03:34AM -0600, Maneesh Soni wrote:
||On Tue, Nov 02, 2004 at 02:46:58AM -0600, Milton Miller wrote:
|||sysfs_new_dirent returns ERR_PTR(-ENOMEM) if kmalloc fails but the callers
|||were expecting NULL.
||
||Thanks for spotting this. But as you said, I will prefer to change the callee.
||How about this patch?
..
||- return -ENOMEM;
||+ return NULL;
|
|Actually, this needs to be a 0, not NULL, otherwise the compiler
|complains with a warning. I've fixed it up and applied it.
|
|thanks,
|
|greg k-h

I wondered why greg thought the type was wrong. After it was merged I
realized that the wrong function was changed. Here's an attempt to fix
both errors.


Signed-off-by: Greg Kroah-Hartman <greg@xxxxxxxxx>


fs/sysfs/dir.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)


diff -Nru a/fs/sysfs/dir.c b/fs/sysfs/dir.c
--- a/fs/sysfs/dir.c 2004-11-12 14:53:33 -08:00
+++ b/fs/sysfs/dir.c 2004-11-12 14:53:33 -08:00
@@ -38,7 +38,7 @@

sd = kmalloc(sizeof(*sd), GFP_KERNEL);
if (!sd)
- return ERR_PTR(-ENOMEM);
+ return NULL;

memset(sd, 0, sizeof(*sd));
atomic_set(&sd->s_count, 1);
@@ -56,7 +56,7 @@

sd = sysfs_new_dirent(parent_sd, element);
if (!sd)
- return 0;
+ return -ENOMEMurn -ENOMEM;

sd->s_mode = mode;
sd->s_type = type;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/