Lines Matching refs:groups

211 				  const struct attribute_group **groups)
216 if (!groups)
219 for (i = 0; groups[i]; i++) {
220 error = internal_create_group(kobj, update, groups[i]);
223 sysfs_remove_group(kobj, groups[i]);
231 * sysfs_create_groups - given a directory kobject, create a bunch of attribute groups
233 * @groups: The attribute groups to create, NULL terminated
235 * This function creates a bunch of attribute groups. If an error occurs when
236 * creating a group, all previously created groups will be removed, unwinding
244 const struct attribute_group **groups)
246 return internal_create_groups(kobj, 0, groups);
251 * sysfs_update_groups - given a directory kobject, create a bunch of attribute groups
253 * @groups: The attribute groups to update, NULL terminated
255 * This function update a bunch of attribute groups. If an error occurs when
256 * updating a group, all previously updated groups will be removed together
262 const struct attribute_group **groups)
264 return internal_create_groups(kobj, 1, groups);
328 * sysfs_remove_groups - remove a list of groups
330 * @kobj: The kobject for the groups to be removed from
331 * @groups: NULL terminated list of groups to be removed
333 * If groups is not NULL, remove the specified groups from the kobject.
336 const struct attribute_group **groups)
340 if (!groups)
342 for (i = 0; groups[i]; i++)
343 sysfs_remove_group(kobj, groups[i]);
582 * sysfs_groups_change_owner - change owner of a set of attribute groups.
583 * @kobj: The kobject containing the groups.
584 * @groups: The attribute groups.
591 const struct attribute_group **groups,
599 if (!groups)
602 for (i = 0; groups[i]; i++) {
603 error = sysfs_group_change_owner(kobj, groups[i], kuid, kgid);