On Tue, 2009-04-28 at 16:56 -0700, Yinghai Lu wrote: > James Bottomley wrote: > > On Mon, 2009-04-27 at 19:18 -0700, Yinghai Lu wrote: > >> dev_set_name will use sprintf to copy the name. > >> need to check if the name does valid. > >> > >> otherwise will error from device_add later. > > > > I think what you mean to say is that empty names aren't allowed in the > > device model. > > > >> Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx> > >> > >> diff --git a/drivers/misc/enclosure.c b/drivers/misc/enclosure.c > >> index 3cf61ec..68743a9 100644 > >> --- a/drivers/misc/enclosure.c > >> +++ b/drivers/misc/enclosure.c > >> @@ -255,7 +255,7 @@ enclosure_component_register(struct enclosure_device *edev, > >> ecomp->number = number; > >> cdev = &ecomp->cdev; > >> cdev->parent = get_device(&edev->edev); > >> - if (name) > >> + if (name && name[0]) > >> dev_set_name(cdev, name); > > > > Actually, I think this should become > > > > dev_set_name(cdev, "%s", name); > > > > as well, otherwise any name with a percent in it will get interpreted in > > ways we're not expecting at all. > > i tried that it still failed. I didn't say it was the fix to your problem. I said on looking at the code it's another potential problem source. Your problem is that filesystems don't support empty file names. James -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html