From: Greg Kroah-Hartman Date: Thu, 7 Feb 2008 16:58:54 +0000 (-0500) Subject: sysfs: remove BUG_ON() from sysfs_remove_group() X-Git-Tag: v2.6.25-rc1~293^2 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=969affd276dec81a35a5ad10d4e05e62e93b380b;p=linux-2.6 sysfs: remove BUG_ON() from sysfs_remove_group() It's possible that the caller of sysfs_remove_group messed up and passed in an attribute group that was not really registered to this kobject. But don't panic for such a foolish error, spit out a warning about what happened, and continue on our way safely. Cc: Roland Dreier Cc: Tejun Heo Signed-off-by: Greg Kroah-Hartman --- diff --git a/fs/sysfs/group.c b/fs/sysfs/group.c index 0871c3dadc..4779049150 100644 --- a/fs/sysfs/group.c +++ b/fs/sysfs/group.c @@ -77,7 +77,12 @@ void sysfs_remove_group(struct kobject * kobj, if (grp->name) { sd = sysfs_get_dirent(dir_sd, grp->name); - BUG_ON(!sd); + if (!sd) { + printk(KERN_WARNING "sysfs group %p not found for " + "kobject '%s'\n", grp, kobject_name(kobj)); + WARN_ON(!sd); + return; + } } else sd = sysfs_get(dir_sd);