Lines Matching refs:disk_super
252 struct thin_disk_superblock *disk_super = dm_block_data(b); in sb_prepare_for_write() local
254 disk_super->blocknr = cpu_to_le64(dm_block_location(b)); in sb_prepare_for_write()
255 disk_super->csum = cpu_to_le32(dm_bm_checksum(&disk_super->flags, in sb_prepare_for_write()
264 struct thin_disk_superblock *disk_super = dm_block_data(b); in sb_check() local
267 if (dm_block_location(b) != le64_to_cpu(disk_super->blocknr)) { in sb_check()
269 "wanted %llu", le64_to_cpu(disk_super->blocknr), in sb_check()
274 if (le64_to_cpu(disk_super->magic) != THIN_SUPERBLOCK_MAGIC) { in sb_check()
276 "wanted %llu", le64_to_cpu(disk_super->magic), in sb_check()
281 csum_le = cpu_to_le32(dm_bm_checksum(&disk_super->flags, in sb_check()
284 if (csum_le != disk_super->csum) { in sb_check()
286 le32_to_cpu(csum_le), le32_to_cpu(disk_super->csum)); in sb_check()
528 struct thin_disk_superblock *disk_super; in __write_initial_superblock() local
550 disk_super = dm_block_data(sblock); in __write_initial_superblock()
551 disk_super->flags = 0; in __write_initial_superblock()
552 memset(disk_super->uuid, 0, sizeof(disk_super->uuid)); in __write_initial_superblock()
553 disk_super->magic = cpu_to_le64(THIN_SUPERBLOCK_MAGIC); in __write_initial_superblock()
554 disk_super->version = cpu_to_le32(THIN_VERSION); in __write_initial_superblock()
555 disk_super->time = 0; in __write_initial_superblock()
556 disk_super->trans_id = 0; in __write_initial_superblock()
557 disk_super->held_root = 0; in __write_initial_superblock()
559 copy_sm_roots(pmd, disk_super); in __write_initial_superblock()
561 disk_super->data_mapping_root = cpu_to_le64(pmd->root); in __write_initial_superblock()
562 disk_super->device_details_root = cpu_to_le64(pmd->details_root); in __write_initial_superblock()
563 disk_super->metadata_block_size = cpu_to_le32(THIN_METADATA_BLOCK_SIZE); in __write_initial_superblock()
564 disk_super->metadata_nr_blocks = cpu_to_le64(bdev_size >> SECTOR_TO_BLOCK_SHIFT); in __write_initial_superblock()
565 disk_super->data_block_size = cpu_to_le32(pmd->data_block_size); in __write_initial_superblock()
624 static int __check_incompat_features(struct thin_disk_superblock *disk_super, in __check_incompat_features() argument
629 features = le32_to_cpu(disk_super->incompat_flags) & ~THIN_FEATURE_INCOMPAT_SUPP; in __check_incompat_features()
642 features = le32_to_cpu(disk_super->compat_ro_flags) & ~THIN_FEATURE_COMPAT_RO_SUPP; in __check_incompat_features()
656 struct thin_disk_superblock *disk_super; in __open_metadata() local
665 disk_super = dm_block_data(sblock); in __open_metadata()
668 if (le32_to_cpu(disk_super->data_block_size) != pmd->data_block_size) { in __open_metadata()
670 le32_to_cpu(disk_super->data_block_size), in __open_metadata()
676 r = __check_incompat_features(disk_super, pmd); in __open_metadata()
681 disk_super->metadata_space_map_root, in __open_metadata()
682 sizeof(disk_super->metadata_space_map_root), in __open_metadata()
689 pmd->data_sm = dm_sm_disk_open(pmd->tm, disk_super->data_space_map_root, in __open_metadata()
690 sizeof(disk_super->data_space_map_root)); in __open_metadata()
768 struct thin_disk_superblock *disk_super; in __begin_transaction() local
780 disk_super = dm_block_data(sblock); in __begin_transaction()
781 pmd->time = le32_to_cpu(disk_super->time); in __begin_transaction()
782 pmd->root = le64_to_cpu(disk_super->data_mapping_root); in __begin_transaction()
783 pmd->details_root = le64_to_cpu(disk_super->device_details_root); in __begin_transaction()
784 pmd->trans_id = le64_to_cpu(disk_super->trans_id); in __begin_transaction()
785 pmd->flags = le32_to_cpu(disk_super->flags); in __begin_transaction()
786 pmd->data_block_size = le32_to_cpu(disk_super->data_block_size); in __begin_transaction()
830 struct thin_disk_superblock *disk_super; in __commit_transaction() local
870 disk_super = dm_block_data(sblock); in __commit_transaction()
871 disk_super->time = cpu_to_le32(pmd->time); in __commit_transaction()
872 disk_super->data_mapping_root = cpu_to_le64(pmd->root); in __commit_transaction()
873 disk_super->device_details_root = cpu_to_le64(pmd->details_root); in __commit_transaction()
874 disk_super->trans_id = cpu_to_le64(pmd->trans_id); in __commit_transaction()
875 disk_super->flags = cpu_to_le32(pmd->flags); in __commit_transaction()
877 copy_sm_roots(pmd, disk_super); in __commit_transaction()
1279 struct thin_disk_superblock *disk_super; in __reserve_metadata_snap() local
1306 disk_super = dm_block_data(copy); in __reserve_metadata_snap()
1308 if (le64_to_cpu(disk_super->held_root)) { in __reserve_metadata_snap()
1319 memset(&disk_super->data_space_map_root, 0, in __reserve_metadata_snap()
1320 sizeof(disk_super->data_space_map_root)); in __reserve_metadata_snap()
1321 memset(&disk_super->metadata_space_map_root, 0, in __reserve_metadata_snap()
1322 sizeof(disk_super->metadata_space_map_root)); in __reserve_metadata_snap()
1327 dm_tm_inc(pmd->tm, le64_to_cpu(disk_super->data_mapping_root)); in __reserve_metadata_snap()
1328 dm_tm_inc(pmd->tm, le64_to_cpu(disk_super->device_details_root)); in __reserve_metadata_snap()
1340 disk_super = dm_block_data(sblock); in __reserve_metadata_snap()
1341 disk_super->held_root = cpu_to_le64(held_root); in __reserve_metadata_snap()
1361 struct thin_disk_superblock *disk_super; in __release_metadata_snap() local
1369 disk_super = dm_block_data(sblock); in __release_metadata_snap()
1370 held_root = le64_to_cpu(disk_super->held_root); in __release_metadata_snap()
1371 disk_super->held_root = cpu_to_le64(0); in __release_metadata_snap()
1384 disk_super = dm_block_data(copy); in __release_metadata_snap()
1385 dm_btree_del(&pmd->info, le64_to_cpu(disk_super->data_mapping_root)); in __release_metadata_snap()
1386 dm_btree_del(&pmd->details_info, le64_to_cpu(disk_super->device_details_root)); in __release_metadata_snap()
1410 struct thin_disk_superblock *disk_super; in __get_metadata_snap() local
1418 disk_super = dm_block_data(sblock); in __get_metadata_snap()
1419 *result = le64_to_cpu(disk_super->held_root); in __get_metadata_snap()
2084 struct thin_disk_superblock *disk_super; in dm_pool_metadata_set_needs_check() local
2098 disk_super = dm_block_data(sblock); in dm_pool_metadata_set_needs_check()
2099 disk_super->flags = cpu_to_le32(pmd->flags); in dm_pool_metadata_set_needs_check()