Lines Matching full:volume
9 * This file contains implementation of volume creation, deletion, updating and
53 * A. process 1 opens a sysfs file related to volume Y, say
55 * B. process 2 removes volume Y;
59 * out that the volume was removed from the @ubi->volumes array.
78 /* Take a reference to prevent volume removal */ in vol_attribute_show()
108 /* We've done the operation, drop volume and UBI device references */ in vol_attribute_show()
131 /* Release method for volume devices */
141 * ubi_create_volume - create volume.
143 * @req: volume creation request
145 * This function creates volume described by @req. If @req->vol_id id
146 * %UBI_VOL_NUM_AUTO, this function automatically assign ID to the new volume
167 /* Find unused volume ID */ in ubi_create_volume()
168 dbg_gen("search for vacant volume ID"); in ubi_create_volume()
176 ubi_err(ubi, "out of volume IDs"); in ubi_create_volume()
183 dbg_gen("create device %d, volume %d, %llu bytes, type %d, name %s", in ubi_create_volume()
187 /* Ensure that this volume does not exist */ in ubi_create_volume()
190 ubi_err(ubi, "volume %d already exists", vol_id); in ubi_create_volume()
199 ubi_err(ubi, "volume \"%s\" exists (ID %d)", in ubi_create_volume()
233 * to the same volume ID. in ubi_create_volume()
263 /* Register character device for the volume */ in ubi_create_volume()
288 /* Fill volume table record */ in ubi_create_volume()
315 * We have registered our device, we should not free the volume in ubi_create_volume()
340 ubi_err(ubi, "cannot create volume %d, error %d", vol_id, err); in ubi_create_volume()
345 * ubi_remove_volume - remove volume.
346 * @desc: volume descriptor
347 * @no_vtbl: do not change volume table if not zero
349 * This function removes volume described by @desc. The volume has to be opened
360 dbg_gen("remove device %d, volume %d", ubi->ubi_num, vol_id); in ubi_remove_volume()
370 * The volume is busy, probably someone is reading one of its in ubi_remove_volume()
408 ubi_err(ubi, "cannot remove volume %d, error %d", vol_id, err); in ubi_remove_volume()
417 * ubi_resize_volume - re-size volume.
418 * @desc: volume descriptor
421 * This function re-sizes the volume and returns zero in case of success, and a
436 dbg_gen("re-size device %d, volume %d to from %d to %d PEBs", in ubi_resize_volume()
488 /* Change volume table record */ in ubi_resize_volume()
576 * ubi_add_volume - add volume.
578 * @vol: volume description object
580 * This function adds an existing volume and initializes all its data
589 dbg_gen("add volume %d", vol_id); in ubi_add_volume()
591 /* Register character device for the volume */ in ubi_add_volume()
597 ubi_err(ubi, "cannot add character device for volume %d, error %d", in ubi_add_volume()
623 * ubi_free_volume - free volume.
625 * @vol: volume description object
627 * This function frees all resources for volume @vol but does not remove it.
632 dbg_gen("free volume %d", vol->vol_id); in ubi_free_volume()
640 * self_check_volume - check volume information.
642 * @vol_id: volume ID
644 * Returns zero if volume is all right and a a negative error code if not.
660 ubi_err(ubi, "no volume info, but volume exists"); in self_check_volume()
712 ubi_err(ubi, "too long volume name, max is %d", in self_check_volume()
726 ubi_err(ubi, "corrupted dynamic volume"); in self_check_volume()
771 ubi_err(ubi, "volume info is different"); in self_check_volume()
779 ubi_err(ubi, "self-check failed for volume %d", vol_id); in self_check_volume()