On Thu, Sep 11, 2008 at 01:58:49AM -0700, Nicholas A. Bellinger wrote: > *) $CONFIGFS/target is created with configfs_register_subsystem() > > *) $CONFIGFS/target/core is created as a default group under struct > configfs_subsystem->su_group to interact with generic target mode > engine's storage objects (eg: SCSI HCTL referenced devices, LVM UUID, MD > UUID). > > ........... > > # Load LIO-Target using function symbols from target_core_configfs > modprobe iscsi_target_mod > > module_init() from iscsi_target_mod (eg: the fabric module) calls > target_fabric_configfs_register() in target_core_configfs.ko, which is a > small wrapper for calling sys_mkdir($CONFIGFS/target/$FABRIC) to kick > off the struct config_group_operations->make_group() to create a struct > config_item for /sys/kernel/config/target/iscsi (or whatever the fabric > is called). No, you don't do this. Like I said, configfs clients let userspace create and destroy items. Not kernelspace. Do not call sys_mkdir()/sys_rmdir() from your modules. If you don't do this, you also don't need your lookup_hash() export. Your code should be behaving as if it didn't know the filesystem view existed. I'm trying to understand what you're actually doing. Not the "I want iscsi_target_mod to appear under target/iscsi" part, but why it needs to be there in the first place. how it all connects together. Joel -- "Every new beginning comes from some other beginning's end." Joel Becker Principal Software Developer Oracle E-mail: joel.becker@xxxxxxxxxx Phone: (650) 506-8127 -- 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