• Home
  • Raw
  • Download

Lines Matching refs:item

282 static int configfs_create_dir(struct config_item *item, struct dentry *dentry,  in configfs_create_dir()  argument
290 BUG_ON(!item); in configfs_create_dir()
296 error = configfs_make_dirent(p->d_fsdata, dentry, item, mode, in configfs_create_dir()
315 item->ci_dentry = dentry; in configfs_create_dir()
416 static void configfs_remove_dir(struct config_item * item) in configfs_remove_dir() argument
418 struct dentry * dentry = dget(item->ci_dentry); in configfs_remove_dir()
551 static void detach_attrs(struct config_item * item) in detach_attrs() argument
553 struct dentry * dentry = dget(item->ci_dentry); in detach_attrs()
580 static int populate_attrs(struct config_item *item) in populate_attrs() argument
582 const struct config_item_type *t = item->ci_type; in populate_attrs()
592 if ((error = configfs_create_file(item, attr))) in populate_attrs()
598 error = configfs_create_bin_file(item, bin_attr); in populate_attrs()
605 detach_attrs(item); in populate_attrs()
611 struct config_item *item,
614 static void configfs_detach_group(struct config_item *item);
725 static void unlink_obj(struct config_item *item) in unlink_obj() argument
729 group = item->ci_group; in unlink_obj()
731 list_del_init(&item->ci_entry); in unlink_obj()
733 item->ci_group = NULL; in unlink_obj()
734 item->ci_parent = NULL; in unlink_obj()
737 config_item_put(item); in unlink_obj()
744 static void link_obj(struct config_item *parent_item, struct config_item *item) in link_obj() argument
750 item->ci_parent = parent_item; in link_obj()
756 item->ci_group = config_group_get(to_config_group(parent_item)); in link_obj()
757 list_add_tail(&item->ci_entry, &item->ci_group->cg_children); in link_obj()
763 config_item_get(item); in link_obj()
812 struct config_item *item, in configfs_attach_item() argument
818 ret = configfs_create_dir(item, dentry, frag); in configfs_attach_item()
820 ret = populate_attrs(item); in configfs_attach_item()
828 configfs_remove_dir(item); in configfs_attach_item()
840 static void configfs_detach_item(struct config_item *item) in configfs_detach_item() argument
842 detach_attrs(item); in configfs_detach_item()
843 configfs_remove_dir(item); in configfs_detach_item()
847 struct config_item *item, in configfs_attach_group() argument
854 ret = configfs_attach_item(parent_item, item, dentry, frag); in configfs_attach_group()
870 ret = populate_groups(to_config_group(item), frag); in configfs_attach_group()
872 configfs_detach_item(item); in configfs_attach_group()
886 static void configfs_detach_group(struct config_item *item) in configfs_detach_group() argument
888 detach_groups(to_config_group(item)); in configfs_detach_group()
889 configfs_detach_item(item); in configfs_detach_group()
902 struct config_item *item) in client_disconnect_notify() argument
911 item); in client_disconnect_notify()
921 struct config_item *item) in client_drop_item() argument
934 item); in client_drop_item()
936 config_item_put(item); in client_drop_item()
1260 struct config_item *item = NULL; in configfs_mkdir() local
1334 item = &group->cg_item; in configfs_mkdir()
1338 item = type->ct_group_ops->make_item(to_config_group(parent_item), name); in configfs_mkdir()
1339 if (!item) in configfs_mkdir()
1340 item = ERR_PTR(-ENOMEM); in configfs_mkdir()
1341 if (!IS_ERR(item)) in configfs_mkdir()
1342 link_obj(parent_item, item); in configfs_mkdir()
1344 ret = PTR_ERR(item); in configfs_mkdir()
1362 type = item->ci_type; in configfs_mkdir()
1393 ret = configfs_attach_group(parent_item, item, dentry, frag); in configfs_mkdir()
1395 ret = configfs_attach_item(parent_item, item, dentry, frag); in configfs_mkdir()
1408 client_disconnect_notify(parent_item, item); in configfs_mkdir()
1412 unlink_obj(item); in configfs_mkdir()
1413 client_drop_item(parent_item, item); in configfs_mkdir()
1441 struct config_item *item; in configfs_rmdir() local
1514 item = configfs_get_config_item(dentry); in configfs_rmdir()
1519 if (item->ci_type) in configfs_rmdir()
1520 dead_item_owner = item->ci_type->ct_owner; in configfs_rmdir()
1523 configfs_detach_group(item); in configfs_rmdir()
1526 client_disconnect_notify(parent_item, item); in configfs_rmdir()
1527 unlink_group(to_config_group(item)); in configfs_rmdir()
1529 configfs_detach_item(item); in configfs_rmdir()
1532 client_disconnect_notify(parent_item, item); in configfs_rmdir()
1533 unlink_obj(item); in configfs_rmdir()
1536 client_drop_item(parent_item, item); in configfs_rmdir()
1540 config_item_put(item); in configfs_rmdir()