Lines Matching defs:sbi

53 	struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
73 atomic_inc(&sbi->s_active_seq_files);
82 atomic_dec(&sbi->s_active_seq_files);
146 struct zonefs_sb_info *sbi = ZONEFS_SB(inode->i_sb);
149 atomic_dec(&sbi->s_active_seq_files);
157 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
164 spin_lock(&sbi->s_lock);
172 if (sbi->s_used_blocks > nr_blocks)
173 sbi->s_used_blocks -= nr_blocks;
175 sbi->s_used_blocks = 0;
177 sbi->s_used_blocks +=
179 if (sbi->s_used_blocks > sbi->s_blocks)
180 sbi->s_used_blocks = sbi->s_blocks;
183 spin_unlock(&sbi->s_lock);
264 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
310 (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_ZOL)) {
318 (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_ZRO)) {
325 } else if (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_RO &&
337 if ((sbi->s_mount_opts & ZONEFS_MNTOPT_EXPLICIT_OPEN) &&
345 if ((sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_RO) && !sb_rdonly(sb)) {
444 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
451 spin_lock(&sbi->s_lock);
453 buf->f_blocks = sbi->s_blocks;
454 if (WARN_ON(sbi->s_used_blocks > sbi->s_blocks))
457 buf->f_bfree = buf->f_blocks - sbi->s_used_blocks;
461 if (sbi->s_zgroup[t].g_nr_zones)
462 buf->f_files += sbi->s_zgroup[t].g_nr_zones + 1;
466 spin_unlock(&sbi->s_lock);
468 buf->f_fsid = uuid_to_fsid(sbi->s_uuid.b);
522 struct zonefs_sb_info *sbi = ZONEFS_SB(root->d_sb);
524 if (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_RO)
526 if (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_ZRO)
528 if (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_ZOL)
530 if (sbi->s_mount_opts & ZONEFS_MNTOPT_ERRORS_REPAIR)
628 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
643 ino = z->z_sector >> sbi->s_zone_sectors_shift;
678 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
690 inode->i_size = sbi->s_zgroup[ztype].g_nr_zones;
693 inode->i_private = &sbi->s_zgroup[ztype];
709 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
721 if (sbi->s_zgroup[ztype].g_nr_zones &&
751 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
762 if (!sbi->s_zgroup[ZONEFS_ZTYPE_CNV].g_nr_zones)
788 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
812 ino = z->z_sector >> sbi->s_zone_sectors_shift;
857 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
874 if (sbi->s_features & ZONEFS_F_AGGRCNV) {
876 if (!(sbi->s_zgroup[ZONEFS_ZTYPE_CNV].g_nr_zones) ||
878 sbi->s_zgroup[ZONEFS_ZTYPE_CNV].g_nr_zones++;
882 sbi->s_zgroup[ZONEFS_ZTYPE_CNV].g_nr_zones++;
887 sbi->s_zgroup[ZONEFS_ZTYPE_SEQ].g_nr_zones++;
939 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
940 struct zonefs_zone_group *zgroup = &sbi->s_zgroup[ztype];
979 (sbi->s_features & ZONEFS_F_AGGRCNV)) {
999 !(sbi->s_features & ZONEFS_F_AGGRCNV)) {
1011 z->z_mode = S_IFREG | sbi->s_perm;
1012 z->z_uid = sbi->s_uid;
1013 z->z_gid = sbi->s_gid;
1023 sbi->s_blocks += z->z_capacity >> sb->s_blocksize_bits;
1024 sbi->s_used_blocks += z->z_wpoffset >> sb->s_blocksize_bits;
1058 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
1061 if (!sbi)
1065 kvfree(sbi->s_zgroup[ztype].g_zones);
1066 sbi->s_zgroup[ztype].g_zones = NULL;
1110 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
1145 sbi->s_features = le64_to_cpu(super->s_features);
1146 if (sbi->s_features & ~ZONEFS_F_DEFINED_FEATURES) {
1148 sbi->s_features);
1152 if (sbi->s_features & ZONEFS_F_UID) {
1153 sbi->s_uid = make_kuid(current_user_ns(),
1155 if (!uid_valid(sbi->s_uid)) {
1161 if (sbi->s_features & ZONEFS_F_GID) {
1162 sbi->s_gid = make_kgid(current_user_ns(),
1164 if (!gid_valid(sbi->s_gid)) {
1170 if (sbi->s_features & ZONEFS_F_PERM)
1171 sbi->s_perm = le32_to_cpu(super->s_perm);
1178 import_uuid(&sbi->s_uuid, super->s_uuid);
1196 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
1201 if (!sbi->s_zgroup[ztype].g_nr_zones)
1208 sbi->s_zgroup[ztype].g_inode = dir_inode;
1216 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
1219 if (!sbi)
1223 if (sbi->s_zgroup[ztype].g_inode) {
1224 iput(sbi->s_zgroup[ztype].g_inode);
1225 sbi->s_zgroup[ztype].g_inode = NULL;
1237 struct zonefs_sb_info *sbi;
1254 sbi = kzalloc(sizeof(*sbi), GFP_KERNEL);
1255 if (!sbi)
1258 spin_lock_init(&sbi->s_lock);
1259 sb->s_fs_info = sbi;
1271 sbi->s_zone_sectors_shift = ilog2(bdev_zone_sectors(sb->s_bdev));
1272 sbi->s_uid = GLOBAL_ROOT_UID;
1273 sbi->s_gid = GLOBAL_ROOT_GID;
1274 sbi->s_perm = 0640;
1275 sbi->s_mount_opts = ctx->s_mount_opts;
1277 atomic_set(&sbi->s_wro_seq_files, 0);
1278 sbi->s_max_wro_seq_files = bdev_max_open_zones(sb->s_bdev);
1279 atomic_set(&sbi->s_active_seq_files, 0);
1280 sbi->s_max_active_seq_files = bdev_max_active_zones(sb->s_bdev);
1288 if (!sbi->s_max_wro_seq_files &&
1289 !sbi->s_max_active_seq_files &&
1290 sbi->s_mount_opts & ZONEFS_MNTOPT_EXPLICIT_OPEN) {
1293 sbi->s_mount_opts &= ~ZONEFS_MNTOPT_EXPLICIT_OPEN;
1315 if (sbi->s_zgroup[ztype].g_nr_zones) {
1348 struct zonefs_sb_info *sbi = ZONEFS_SB(sb);
1357 kfree(sbi);
1376 struct zonefs_sb_info *sbi = sb->s_fs_info;
1379 /* Copy new options from ctx into sbi. */
1380 sbi->s_mount_opts = ctx->s_mount_opts;