Searched refs:slices (Results 1 - 20 of 20) sorted by relevance

/illumos-gate/usr/src/lib/libzfs_jni/common/
H A Dlibzfs_jni_diskmgt.c45 static void remove_slice_from_list(dmgt_slice_t **slices, int index);
138 /* Get free slices */
139 dp->slices =
249 * Gets the slices for the given disk.
253 * 1. Success: error is set to 0 and slices are returned
261 dm_descriptor_t *slices; local
265 slices = dm_get_associated_descriptors(media, DM_SLICE, error);
267 handle_error("could not get slices of disk %s", name);
274 slices != NULL && slices[
319 remove_slice_from_list(dmgt_slice_t **slices, int index) argument
365 dmgt_slice_t **slices = get_disk_slices(media, name, blocksize, error); local
[all...]
H A Dlibzfs_jni_disk.c54 jobjectArray slices = create_SliceDeviceBean_array(env, local
55 dp->slices);
56 if (slices != NULL) {
71 constructor, dp->size, nameUTF, aliases, slices,
158 create_SliceDeviceBean_array(JNIEnv *env, dmgt_slice_t **slices) argument
165 if (slices != NULL) {
167 for (i = 0; slices[i] != NULL; i++) {
168 dmgt_slice_t *slice = slices[i];
H A Dlibzfs_jni_diskmgt.h61 dmgt_slice_t **slices; member in struct:dmgt_disk
/illumos-gate/usr/src/cmd/format/
H A Dcheckdev.c283 dm_descriptor_t *slices = NULL; local
341 dm_get_slices(cur_disk_path, &slices, &error);
353 if (slices == NULL)
356 for (i = 0; slices[i] != NULL; i++) {
363 name = dm_get_name(slices[i], &error);
392 dm_free_descriptors(slices);
402 * checking modifications for in use slices
417 attrs = dm_get_attributes(slices[i], &error);
437 name = dm_get_name(slices[i], &error);
469 dm_free_descriptors(slices);
[all...]
/illumos-gate/usr/src/cmd/lvm/metassist/layout/
H A Dlayout_concat.c356 * capacity using slices on disks in the input list.
376 dlist_t *slices = NULL; local
385 ((error = disks_get_avail_slices(request, disks, &slices)) != 0) ||
388 dlist_free_items(slices, NULL);
394 if (slices == NULL) {
430 error = choose_slice((nbytes-capacity), npaths, slices, comps,
444 slices = dlist_remove_equivalent_item(slices, (void *) comp,
469 dlist_free_items(slices, NULL);
H A Dlayout.c78 * slices is the list of modified slices on the disk
83 dlist_t *slices; member in struct:__anon831
580 * 2. once a disk is in the disk set, existing slices
581 * may be resized or new slices can be added.
614 moddisk->slices = NULL;
694 * updated to include modified disks and slices as
700 * PURPOSE: Helper to add devconfig_t structs for disks and slices
710 * Modified slices for disks in the disk set are added as well.
729 /* collect removed slices fo
[all...]
H A Dlayout_slice.h41 * struct to track which slices need to be explicitly "removed" from
54 * struct to track which slices have been explicitly modified
58 * space (this is only relevant to slices that have been created by
62 * (this is only relevant to slices that have been resized to
63 * provide space for new slices)
96 dlist_t *slices,
123 * accessors to track slices reserved for use in explicit
H A Dlayout_discovery.c55 * "bad" slices are those that are known to libdiskmgt but
105 * The slice_class struct is used to group slices by usage class.
184 * virtual slices...
191 * multipathed disks have aliases, as do slices on those disks.
309 * private list of used slices.
645 * known - a pointer to a dlist_t list to hold the known slices
646 * bad - a pointer to a dlist_t to hold the bad slices
651 * PURPOSE: Examines input list of known disks and determines the slices
654 * Some slices returned from libdiskmgt may not really exist,
656 * the slice -- ENODEV is returned. Any such slices wil
672 dlist_t *slices = NULL; local
1090 dlist_t *slices; local
1259 dlist_t *slices = NULL; local
2166 dlist_t *slices = NULL; local
[all...]
H A Dlayout_request.h65 * get list of HBAs, disks or slices that are available
76 dlist_t **slices);
H A Dlayout_device_util.c100 /* utilities for slices */
112 * Virtual slices are created to represent slices that will be
114 * diskset. For the purposes of layout, these slices must
115 * look & function just as real slices that are currently on
516 * Only slices, disks and HBAs should have display names.
564 * PURPOSE: Collect all of the known slices for the input disk.
566 * These slices may be actual slices which currently exist
567 * on the disk, or virtual slices whic
599 dm_descriptor_t *slices = NULL; local
805 dlist_t *slices = NULL; local
1123 uint64_t *slices = NULL; local
1178 uint64_t *slices = NULL; local
1267 dlist_t *slices = NULL; local
[all...]
H A Dlayout_stripe.c446 * components and aggregate capacity using slices on disks
472 dlist_t *slices = NULL; local
479 ((error = disks_get_avail_slices(request, disks, &slices)) != 0) ||
488 if (slices == NULL) {
515 * need to select 'ncomp' slices that are at least 'rsize'
537 error = choose_slice(rsize, npaths, slices, comps,
557 slices = dlist_remove_equivalent_item(slices, (void *) comp,
575 dlist_free_items(slices, NULL);
706 * component slices chose
[all...]
H A Dlayout_hsp.c384 * Determine the available HBAs, disks, and slices.
387 * Filter the available slices and remove those that are
392 * to select one from the available slices.
414 dlist_t *avail = NULL; /* available slices */
415 dlist_t *slices = NULL; /* avail slices of sufficient size */ local
416 dlist_t *unique = NULL; /* volume slices that need spares */
418 dlist_t *newspares = NULL; /* slices to add to HSP */
443 /* all slices have been consumed by the devices */
445 gettext(" no available slices t
[all...]
H A Dlayout_request.c1276 * Only disk slices that are in the usable slice list and not
1340 * dlist_t *disks, dlist_t **slices)
1345 * slices - pointer to an output list of disks
1362 dlist_t **slices)
1368 *slices = NULL;
1413 *slices = dlist_append(item, *slices, AT_TAIL);
1420 dlist_free_items(*slices, NULL);
1421 *slices = NULL;
2669 /* only slices an
1359 disks_get_avail_slices( devconfig_t *request, dlist_t *disks, dlist_t **slices) argument
[all...]
H A Dlayout_slice.c108 * list to track resized slices
113 * struct to track used slices and their disks...
121 * list to of usedslice_t to track slices that have been
131 * list of slices reserved to be used for explicit
137 * list of slices needing to be removed (zeroed out) prior to
146 * dlist_t *slices,
157 * *slices - slices from which to choose
158 * *used - slices used by the volume under construction
189 * The function scans the available slices an
203 choose_slice( uint64_t nbytes, uint16_t npaths, dlist_t *slices, dlist_t *used, dlist_t *used_hbas, dlist_t *used_disks, boolean_t unused_disk, boolean_t nbytes_is_min, boolean_t add_extra_cyl, devconfig_t **chosen) argument
1220 pick_from_best_hba_and_disk( dlist_t *slices, dlist_t *used, dm_descriptor_t *chosen) argument
[all...]
/illumos-gate/usr/src/lib/libdiskmgt/common/
H A Dentry.c495 * Returns, via slices paramater, a dm_descriptor_t list of
496 * slices for the named disk drive.
499 dm_get_slices(char *drive, dm_descriptor_t **slices, int *errp) argument
505 *slices = NULL;
527 *slices = dm_get_associated_descriptors(*media,
562 * Checks for overlapping slices. If the given device is a slice, and it
571 dm_descriptor_t *slices = NULL; local
587 * Get the list of slices be fetching the associated media, and then all
588 * associated slices.
594 slices
[all...]
H A Dslice.c101 * For media, just get the slices, but for a partition, it must be a solaris
520 * Some extra attrs for cluster slices.
627 descriptor_t **slices; local
645 /* count the number of slices */
650 slices = (descriptor_t **)calloc(cnt + 1, sizeof (descriptor_t *));
651 if (slices == NULL) {
693 slices[pos] = cache_get_desc(DM_SLICE, desc->p.disk, devpath,
696 cache_free_descriptors(slices);
704 slices[pos] = NULL;
711 return (slices);
[all...]
H A Dlibdiskmgt.h194 * controllers, media, slices, partitions, paths and buses. The descriptors are
443 void dm_get_slices(char *drive, dm_descriptor_t **slices,
/illumos-gate/usr/src/cmd/availdevs/
H A Davaildevs.c89 if (dp->slices != NULL) {
90 for (i = 0; dp->slices[i] != NULL; i++) {
91 dmgt_slice_t *sp = dp->slices[i];
/illumos-gate/usr/src/uts/sun4u/serengeti/sys/
H A Dsbdp_priv.h124 int *slices; variable
/illumos-gate/usr/src/uts/sun4v/io/
H A Dvds.c453 dev_t dev[V_NUMPAR]; /* dev numbers for slices */
455 uint_t nslices; /* number of slices we export */
478 vd_slice_t slices[VD_MAXPART]; /* logical partitions */ member in struct:vd
806 if (blk >= vd->slices[slice].nblocks) {
809 blk, vd->slices[slice].nblocks);
813 offset = (vd->slices[slice].start + blk) * DEV_BSIZE;
814 maxlen = (vd->slices[slice].nblocks - blk) * DEV_BSIZE;
830 * s0 instead s2) the system can try to access slices that
1174 *blkp = vd->slices[vd->efi_reserved].start;
3178 bzero(vd->slices, sizeo
[all...]

Completed in 104 milliseconds