Lines Matching refs:vmeta

512 ddf_meta_find_disk(struct ddf_vol_meta *vmeta, uint32_t PD_Reference,
518 for (bvd = 0; bvd < GET8(vmeta, vdc->Secondary_Element_Count); bvd++) {
519 if (vmeta->bvdc[bvd] == NULL) {
520 i += GET16(vmeta, vdc->Primary_Element_Count); // XXX
523 for (pos = 0; pos < GET16(vmeta, bvdc[bvd]->Primary_Element_Count);
525 if (GET32(vmeta, bvdc[bvd]->Physical_Disk_Sequence[pos]) ==
1609 struct ddf_vol_meta *vmeta;
1626 vmeta = &pv->pv_meta;
1630 disk_pos = ddf_meta_find_disk(vmeta, reference,
1646 if ((vdc1 = ddf_meta_find_vdc(pdmeta, vmeta->vdc->VD_GUID)) != NULL)
1691 md_disk_bvd = disk_pos / GET16(vmeta, vdc->Primary_Element_Count); // XXX
1692 md_disk_pos = disk_pos % GET16(vmeta, vdc->Primary_Element_Count); // XXX
1745 (vdc1 = ddf_meta_find_vdc(pdmeta, vmeta->vdc->VD_GUID)) != NULL) {
1746 val2 = (uint64_t *)&(vdc1->Physical_Disk_Sequence[GET16(vmeta, hdr->Max_Primary_Element_Entries)]);
1765 } else if ((GET8(vmeta, vde->VD_State) & DDF_VDE_DIRTY) != 0 ||
1766 (GET8(vmeta, vde->Init_State) & DDF_VDE_INIT_MASK) !=
1856 struct ddf_vol_meta *vmeta;
1865 vmeta = &pv->pv_meta;
1866 vdc = vmeta->vdc;
1868 vol->v_raid_level = GET8(vmeta, vdc->Primary_RAID_Level);
1869 vol->v_raid_level_qualifier = GET8(vmeta, vdc->RLQ);
1870 if (GET8(vmeta, vdc->Secondary_Element_Count) > 1 &&
1872 GET8(vmeta, vdc->Secondary_RAID_Level) == 0)
1874 vol->v_sectorsize = GET16(vmeta, vdc->Block_Size);
1876 vol->v_sectorsize = vmeta->sectorsize;
1877 vol->v_strip_size = vol->v_sectorsize << GET8(vmeta, vdc->Stripe_Size);
1878 vol->v_disks_count = GET16(vmeta, vdc->Primary_Element_Count) *
1879 GET8(vmeta, vdc->Secondary_Element_Count);
1880 vol->v_mdf_pdisks = GET8(vmeta, vdc->MDF_Parity_Disks);
1881 vol->v_mdf_polynomial = GET16(vmeta, vdc->MDF_Parity_Generator_Polynomial);
1882 vol->v_mdf_method = GET8(vmeta, vdc->MDF_Constant_Generation_Method);
1883 if (GET8(vmeta, vdc->Rotate_Parity_count) > 31)
1886 vol->v_rotate_parity = 1 << GET8(vmeta, vdc->Rotate_Parity_count);
1887 vol->v_mediasize = GET64(vmeta, vdc->VD_Size) * vol->v_sectorsize;
1889 if (j == GET16(vmeta, vdc->Primary_Element_Count)) {
1894 if (vmeta->bvdc[bvd] == NULL) {
1896 sd->sd_size = GET64(vmeta, vdc->Block_Count) *
1900 val2 = (uint64_t *)&(vmeta->bvdc[bvd]->Physical_Disk_Sequence[
1901 GET16(vmeta, hdr->Max_Primary_Element_Entries)]);
1902 sd->sd_offset = GET64P(vmeta, val2 + j) * vol->v_sectorsize;
1903 sd->sd_size = GET64(vmeta, bvdc[bvd]->Block_Count) *
1911 if (ddf_meta_find_vdc(&pd->pd_meta, vmeta->vdc->VD_GUID) != NULL)
1954 struct ddf_vol_meta *vmeta;
2006 vmeta = &pv->pv_meta;
2007 ddf_vol_meta_update(vmeta, pdmeta, vdc->VD_GUID, pv->pv_started);
2017 vmeta = &pv->pv_meta;
2019 if (ddf_meta_find_vdc(pdmeta, vmeta->vdc->VD_GUID) == NULL)
2031 for (k = 0; k < GET8(vmeta, vdc->Secondary_Element_Count); k++) {
2032 if (vmeta->bvdc[k] == NULL) {
2033 need += GET16(vmeta, vdc->Primary_Element_Count);
2036 cnt = GET16(vmeta, bvdc[k]->Primary_Element_Count);
2039 val = GET32(vmeta, bvdc[k]->Physical_Disk_Sequence[i]);
2730 struct ddf_vol_meta *vmeta;
2767 vmeta = &pv->pv_meta;
2769 SET32(vmeta, vdc->Sequence_Number,
2770 GET32(vmeta, vdc->Sequence_Number) + 1);
2773 SET16(vmeta, vdc->Primary_Element_Count, 2);
2775 SET16(vmeta, vdc->Primary_Element_Count,
2777 SET8(vmeta, vdc->Stripe_Size,
2781 SET8(vmeta, vdc->Primary_RAID_Level,
2783 SET8(vmeta, vdc->RLQ, 0);
2784 SET8(vmeta, vdc->Secondary_Element_Count,
2786 SET8(vmeta, vdc->Secondary_RAID_Level, 0);
2788 SET8(vmeta, vdc->Primary_RAID_Level,
2790 SET8(vmeta, vdc->RLQ,
2792 SET8(vmeta, vdc->Secondary_Element_Count, 1);
2793 SET8(vmeta, vdc->Secondary_RAID_Level, 0);
2795 SET8(vmeta, vdc->Secondary_Element_Seq, 0);
2796 SET64(vmeta, vdc->Block_Count, 0);
2797 SET64(vmeta, vdc->VD_Size, vol->v_mediasize / vol->v_sectorsize);
2798 SET16(vmeta, vdc->Block_Size, vol->v_sectorsize);
2799 SET8(vmeta, vdc->Rotate_Parity_count,
2801 SET8(vmeta, vdc->MDF_Parity_Disks, vol->v_mdf_pdisks);
2802 SET16(vmeta, vdc->MDF_Parity_Generator_Polynomial,
2804 SET8(vmeta, vdc->MDF_Constant_Generation_Method,
2807 SET16(vmeta, vde->VD_Number, vol->v_global_id);
2809 SET8(vmeta, vde->VD_State, DDF_VDE_FAILED);
2811 SET8(vmeta, vde->VD_State, DDF_VDE_DEGRADED);
2813 SET8(vmeta, vde->VD_State, DDF_VDE_PARTIAL);
2815 SET8(vmeta, vde->VD_State, DDF_VDE_OPTIMAL);
2819 SET8(vmeta, vde->VD_State,
2820 GET8(vmeta, vde->VD_State) | DDF_VDE_DIRTY);
2821 SET8(vmeta, vde->Init_State, DDF_VDE_INIT_FULL); // XXX
2822 ddf_meta_put_name(vmeta, vol->v_name);
2826 bvd = i / GET16(vmeta, vdc->Primary_Element_Count);
2827 pos = i % GET16(vmeta, vdc->Primary_Element_Count);
2831 if (vmeta->bvdc[bvd] == NULL) {
2832 size = GET16(vmeta,
2834 vmeta->sectorsize;
2835 vmeta->bvdc[bvd] = malloc(size,
2837 memset(vmeta->bvdc[bvd], 0xff, size);
2839 memcpy(vmeta->bvdc[bvd], vmeta->vdc,
2841 SET8(vmeta, bvdc[bvd]->Secondary_Element_Seq, bvd);
2842 SET64(vmeta, bvdc[bvd]->Block_Count,
2844 SET32(vmeta, bvdc[bvd]->Physical_Disk_Sequence[pos],
2846 val2 = (uint64_t *)&(vmeta->bvdc[bvd]->Physical_Disk_Sequence[
2847 GET16(vmeta, hdr->Max_Primary_Element_Entries)]);
2848 SET64P(vmeta, val2 + pos,
2851 if (vmeta->bvdc[bvd] == NULL)
2855 GET32(vmeta, bvdc[bvd]->Physical_Disk_Sequence[pos]));
2969 vmeta = &pv->pv_meta;
2971 vmeta->vde->VD_GUID);
2975 bvd = sd->sd_pos / GET16(vmeta,
2977 memcpy(vdc, vmeta->bvdc[bvd],