Lines Matching defs:super

60 static int btt_info_write(struct arena_info *arena, struct btt_sb *super)
74 ret = arena_write_bytes(arena, arena->info2off, super,
79 return arena_write_bytes(arena, arena->infooff, super,
83 static int btt_info_read(struct arena_info *arena, struct btt_sb *super)
85 return arena_read_bytes(arena, arena->infooff, super,
775 /* Two pages are reserved for the super block and its copy */
821 static void parse_arena_meta(struct arena_info *arena, struct btt_sb *super,
824 arena->internal_nlba = le32_to_cpu(super->internal_nlba);
825 arena->internal_lbasize = le32_to_cpu(super->internal_lbasize);
826 arena->external_nlba = le32_to_cpu(super->external_nlba);
827 arena->external_lbasize = le32_to_cpu(super->external_lbasize);
828 arena->nfree = le32_to_cpu(super->nfree);
829 arena->version_major = le16_to_cpu(super->version_major);
830 arena->version_minor = le16_to_cpu(super->version_minor);
832 arena->nextoff = (super->nextoff == 0) ? 0 : (arena_off +
833 le64_to_cpu(super->nextoff));
835 arena->dataoff = arena_off + le64_to_cpu(super->dataoff);
836 arena->mapoff = arena_off + le64_to_cpu(super->mapoff);
837 arena->logoff = arena_off + le64_to_cpu(super->logoff);
838 arena->info2off = arena_off + le64_to_cpu(super->info2off);
840 arena->size = (le64_to_cpu(super->nextoff) > 0)
841 ? (le64_to_cpu(super->nextoff))
844 arena->flags = le32_to_cpu(super->flags);
856 struct btt_sb *super __free(kfree) = kzalloc(sizeof(*super), GFP_KERNEL);
857 if (!super)
867 ret = btt_info_read(arena, super);
871 if (!nd_btt_arena_is_valid(btt->nd_btt, super)) {
885 parse_arena_meta(arena, super, cur_off);
968 struct btt_sb *super;
980 super = kzalloc(sizeof(struct btt_sb), GFP_NOIO);
981 if (!super)
984 strscpy(super->signature, BTT_SIG, sizeof(super->signature));
985 export_uuid(super->uuid, nd_btt->uuid);
986 export_uuid(super->parent_uuid, parent_uuid);
987 super->flags = cpu_to_le32(arena->flags);
988 super->version_major = cpu_to_le16(arena->version_major);
989 super->version_minor = cpu_to_le16(arena->version_minor);
990 super->external_lbasize = cpu_to_le32(arena->external_lbasize);
991 super->external_nlba = cpu_to_le32(arena->external_nlba);
992 super->internal_lbasize = cpu_to_le32(arena->internal_lbasize);
993 super->internal_nlba = cpu_to_le32(arena->internal_nlba);
994 super->nfree = cpu_to_le32(arena->nfree);
995 super->infosize = cpu_to_le32(sizeof(struct btt_sb));
996 super->nextoff = cpu_to_le64(arena->nextoff);
1001 super->dataoff = cpu_to_le64(arena->dataoff - arena->infooff);
1002 super->mapoff = cpu_to_le64(arena->mapoff - arena->infooff);
1003 super->logoff = cpu_to_le64(arena->logoff - arena->infooff);
1004 super->info2off = cpu_to_le64(arena->info2off - arena->infooff);
1006 super->flags = 0;
1007 sum = nd_sb_checksum((struct nd_gen_sb *) super);
1008 super->checksum = cpu_to_le64(sum);
1010 ret = btt_info_write(arena, super);
1012 kfree(super);