[ ... ]
On Fri, 31 Oct 2008, Jeroen Roovers wrote:
[ ... ]
What architecture is this, please?
If I understand the dump correctly, it bugs because strcmp() in
sysfs_find_dirent() got somehow NULL pointer.
I am not able to reproduce this locally and I can't see what is going
wrong here. Could you please try the patch below and send the dmesg
output? (beware, it will produce quite some output volume). This might
help us understand a little bit better what string goes NULL where, or
what exactly is happening.
Thanks.
diff --git a/fs/sysfs/dir.c b/fs/sysfs/dir.c
index 82d3b79..e14fb5f 100644
--- a/fs/sysfs/dir.c
+++ b/fs/sysfs/dir.c
@@ -418,6 +418,9 @@ void sysfs_addrm_start(struct sysfs_addrm_cxt *acxt,
*/
int __sysfs_add_one(struct sysfs_addrm_cxt *acxt, struct sysfs_dirent *sd)
{
+ printk(KERN_DEBUG "__sysfs_add_one\n");
+ printk(KERN_DEBUG "%s\n", acxt->parent_sd->s_name);
+ printk(KERN_DEBUG "%s\n", sd->s_name);
if (sysfs_find_dirent(acxt->parent_sd, sd->s_name))
return -EEXIST;
--
Jiri Kosina
--