Lines Matching refs:vmeta

514 ddf_meta_find_disk(struct ddf_vol_meta *vmeta, uint32_t PD_Reference,  in ddf_meta_find_disk()  argument
520 for (bvd = 0; bvd < GET8(vmeta, vdc->Secondary_Element_Count); bvd++) { in ddf_meta_find_disk()
521 if (vmeta->bvdc[bvd] == NULL) { in ddf_meta_find_disk()
522 i += GET16(vmeta, vdc->Primary_Element_Count); // XXX in ddf_meta_find_disk()
525 for (pos = 0; pos < GET16(vmeta, bvdc[bvd]->Primary_Element_Count); in ddf_meta_find_disk()
527 if (GET32(vmeta, bvdc[bvd]->Physical_Disk_Sequence[pos]) == in ddf_meta_find_disk()
1616 struct ddf_vol_meta *vmeta; in g_raid_md_ddf_start_disk() local
1633 vmeta = &pv->pv_meta; in g_raid_md_ddf_start_disk()
1637 disk_pos = ddf_meta_find_disk(vmeta, reference, in g_raid_md_ddf_start_disk()
1653 if ((vdc1 = ddf_meta_find_vdc(pdmeta, vmeta->vdc->VD_GUID)) != NULL) in g_raid_md_ddf_start_disk()
1698 md_disk_bvd = disk_pos / GET16(vmeta, vdc->Primary_Element_Count); // XXX in g_raid_md_ddf_start_disk()
1699 md_disk_pos = disk_pos % GET16(vmeta, vdc->Primary_Element_Count); // XXX in g_raid_md_ddf_start_disk()
1752 (vdc1 = ddf_meta_find_vdc(pdmeta, vmeta->vdc->VD_GUID)) != NULL) { in g_raid_md_ddf_start_disk()
1753 …val2 = (uint64_t *)&(vdc1->Physical_Disk_Sequence[GET16(vmeta, hdr->Max_Primary_Element_Entries)]); in g_raid_md_ddf_start_disk()
1772 } else if ((GET8(vmeta, vde->VD_State) & DDF_VDE_DIRTY) != 0 || in g_raid_md_ddf_start_disk()
1773 (GET8(vmeta, vde->Init_State) & DDF_VDE_INIT_MASK) != in g_raid_md_ddf_start_disk()
1863 struct ddf_vol_meta *vmeta; in g_raid_md_ddf_start() local
1871 vmeta = &pv->pv_meta; in g_raid_md_ddf_start()
1873 vol->v_raid_level = GET8(vmeta, vdc->Primary_RAID_Level); in g_raid_md_ddf_start()
1874 vol->v_raid_level_qualifier = GET8(vmeta, vdc->RLQ); in g_raid_md_ddf_start()
1875 if (GET8(vmeta, vdc->Secondary_Element_Count) > 1 && in g_raid_md_ddf_start()
1877 GET8(vmeta, vdc->Secondary_RAID_Level) == 0) in g_raid_md_ddf_start()
1879 vol->v_sectorsize = GET16(vmeta, vdc->Block_Size); in g_raid_md_ddf_start()
1881 vol->v_sectorsize = vmeta->sectorsize; in g_raid_md_ddf_start()
1882 vol->v_strip_size = vol->v_sectorsize << GET8(vmeta, vdc->Stripe_Size); in g_raid_md_ddf_start()
1883 vol->v_disks_count = GET16(vmeta, vdc->Primary_Element_Count) * in g_raid_md_ddf_start()
1884 GET8(vmeta, vdc->Secondary_Element_Count); in g_raid_md_ddf_start()
1885 vol->v_mdf_pdisks = GET8(vmeta, vdc->MDF_Parity_Disks); in g_raid_md_ddf_start()
1886 vol->v_mdf_polynomial = GET16(vmeta, vdc->MDF_Parity_Generator_Polynomial); in g_raid_md_ddf_start()
1887 vol->v_mdf_method = GET8(vmeta, vdc->MDF_Constant_Generation_Method); in g_raid_md_ddf_start()
1888 if (GET8(vmeta, vdc->Rotate_Parity_count) > 31) in g_raid_md_ddf_start()
1891 vol->v_rotate_parity = 1 << GET8(vmeta, vdc->Rotate_Parity_count); in g_raid_md_ddf_start()
1892 vol->v_mediasize = GET64(vmeta, vdc->VD_Size) * vol->v_sectorsize; in g_raid_md_ddf_start()
1894 if (j == GET16(vmeta, vdc->Primary_Element_Count)) { in g_raid_md_ddf_start()
1899 if (vmeta->bvdc[bvd] == NULL) { in g_raid_md_ddf_start()
1901 sd->sd_size = GET64(vmeta, vdc->Block_Count) * in g_raid_md_ddf_start()
1905 val2 = (uint64_t *)&(vmeta->bvdc[bvd]->Physical_Disk_Sequence[ in g_raid_md_ddf_start()
1906 GET16(vmeta, hdr->Max_Primary_Element_Entries)]); in g_raid_md_ddf_start()
1907 sd->sd_offset = GET64P(vmeta, val2 + j) * vol->v_sectorsize; in g_raid_md_ddf_start()
1908 sd->sd_size = GET64(vmeta, bvdc[bvd]->Block_Count) * in g_raid_md_ddf_start()
1916 if (ddf_meta_find_vdc(&pd->pd_meta, vmeta->vdc->VD_GUID) != NULL) in g_raid_md_ddf_start()
1959 struct ddf_vol_meta *vmeta; in g_raid_md_ddf_new_disk() local
2011 vmeta = &pv->pv_meta; in g_raid_md_ddf_new_disk()
2012 ddf_vol_meta_update(vmeta, pdmeta, vdc->VD_GUID, pv->pv_started); in g_raid_md_ddf_new_disk()
2022 vmeta = &pv->pv_meta; in g_raid_md_ddf_new_disk()
2024 if (ddf_meta_find_vdc(pdmeta, vmeta->vdc->VD_GUID) == NULL) in g_raid_md_ddf_new_disk()
2036 for (k = 0; k < GET8(vmeta, vdc->Secondary_Element_Count); k++) { in g_raid_md_ddf_new_disk()
2037 if (vmeta->bvdc[k] == NULL) { in g_raid_md_ddf_new_disk()
2038 need += GET16(vmeta, vdc->Primary_Element_Count); in g_raid_md_ddf_new_disk()
2041 cnt = GET16(vmeta, bvdc[k]->Primary_Element_Count); in g_raid_md_ddf_new_disk()
2044 val = GET32(vmeta, bvdc[k]->Physical_Disk_Sequence[i]); in g_raid_md_ddf_new_disk()
2732 struct ddf_vol_meta *vmeta; in g_raid_md_write_ddf() local
2769 vmeta = &pv->pv_meta; in g_raid_md_write_ddf()
2771 SET32(vmeta, vdc->Sequence_Number, in g_raid_md_write_ddf()
2772 GET32(vmeta, vdc->Sequence_Number) + 1); in g_raid_md_write_ddf()
2775 SET16(vmeta, vdc->Primary_Element_Count, 2); in g_raid_md_write_ddf()
2777 SET16(vmeta, vdc->Primary_Element_Count, in g_raid_md_write_ddf()
2779 SET8(vmeta, vdc->Stripe_Size, in g_raid_md_write_ddf()
2783 SET8(vmeta, vdc->Primary_RAID_Level, in g_raid_md_write_ddf()
2785 SET8(vmeta, vdc->RLQ, 0); in g_raid_md_write_ddf()
2786 SET8(vmeta, vdc->Secondary_Element_Count, in g_raid_md_write_ddf()
2788 SET8(vmeta, vdc->Secondary_RAID_Level, 0); in g_raid_md_write_ddf()
2790 SET8(vmeta, vdc->Primary_RAID_Level, in g_raid_md_write_ddf()
2792 SET8(vmeta, vdc->RLQ, in g_raid_md_write_ddf()
2794 SET8(vmeta, vdc->Secondary_Element_Count, 1); in g_raid_md_write_ddf()
2795 SET8(vmeta, vdc->Secondary_RAID_Level, 0); in g_raid_md_write_ddf()
2797 SET8(vmeta, vdc->Secondary_Element_Seq, 0); in g_raid_md_write_ddf()
2798 SET64(vmeta, vdc->Block_Count, 0); in g_raid_md_write_ddf()
2799 SET64(vmeta, vdc->VD_Size, vol->v_mediasize / vol->v_sectorsize); in g_raid_md_write_ddf()
2800 SET16(vmeta, vdc->Block_Size, vol->v_sectorsize); in g_raid_md_write_ddf()
2801 SET8(vmeta, vdc->Rotate_Parity_count, in g_raid_md_write_ddf()
2803 SET8(vmeta, vdc->MDF_Parity_Disks, vol->v_mdf_pdisks); in g_raid_md_write_ddf()
2804 SET16(vmeta, vdc->MDF_Parity_Generator_Polynomial, in g_raid_md_write_ddf()
2806 SET8(vmeta, vdc->MDF_Constant_Generation_Method, in g_raid_md_write_ddf()
2809 SET16(vmeta, vde->VD_Number, vol->v_global_id); in g_raid_md_write_ddf()
2811 SET8(vmeta, vde->VD_State, DDF_VDE_FAILED); in g_raid_md_write_ddf()
2813 SET8(vmeta, vde->VD_State, DDF_VDE_DEGRADED); in g_raid_md_write_ddf()
2815 SET8(vmeta, vde->VD_State, DDF_VDE_PARTIAL); in g_raid_md_write_ddf()
2817 SET8(vmeta, vde->VD_State, DDF_VDE_OPTIMAL); in g_raid_md_write_ddf()
2821 SET8(vmeta, vde->VD_State, in g_raid_md_write_ddf()
2822 GET8(vmeta, vde->VD_State) | DDF_VDE_DIRTY); in g_raid_md_write_ddf()
2823 SET8(vmeta, vde->Init_State, DDF_VDE_INIT_FULL); // XXX in g_raid_md_write_ddf()
2824 ddf_meta_put_name(vmeta, vol->v_name); in g_raid_md_write_ddf()
2828 bvd = i / GET16(vmeta, vdc->Primary_Element_Count); in g_raid_md_write_ddf()
2829 pos = i % GET16(vmeta, vdc->Primary_Element_Count); in g_raid_md_write_ddf()
2833 if (vmeta->bvdc[bvd] == NULL) { in g_raid_md_write_ddf()
2834 size = GET16(vmeta, in g_raid_md_write_ddf()
2836 vmeta->sectorsize; in g_raid_md_write_ddf()
2837 vmeta->bvdc[bvd] = malloc(size, in g_raid_md_write_ddf()
2839 memset(vmeta->bvdc[bvd], 0xff, size); in g_raid_md_write_ddf()
2841 memcpy(vmeta->bvdc[bvd], vmeta->vdc, in g_raid_md_write_ddf()
2843 SET8(vmeta, bvdc[bvd]->Secondary_Element_Seq, bvd); in g_raid_md_write_ddf()
2844 SET64(vmeta, bvdc[bvd]->Block_Count, in g_raid_md_write_ddf()
2846 SET32(vmeta, bvdc[bvd]->Physical_Disk_Sequence[pos], in g_raid_md_write_ddf()
2848 val2 = (uint64_t *)&(vmeta->bvdc[bvd]->Physical_Disk_Sequence[ in g_raid_md_write_ddf()
2849 GET16(vmeta, hdr->Max_Primary_Element_Entries)]); in g_raid_md_write_ddf()
2850 SET64P(vmeta, val2 + pos, in g_raid_md_write_ddf()
2853 if (vmeta->bvdc[bvd] == NULL) in g_raid_md_write_ddf()
2857 GET32(vmeta, bvdc[bvd]->Physical_Disk_Sequence[pos])); in g_raid_md_write_ddf()
2971 vmeta = &pv->pv_meta; in g_raid_md_write_ddf()
2973 vmeta->vde->VD_GUID); in g_raid_md_write_ddf()
2977 bvd = sd->sd_pos / GET16(vmeta, in g_raid_md_write_ddf()
2979 memcpy(vdc, vmeta->bvdc[bvd], in g_raid_md_write_ddf()