Lines Matching full:sb
94 static int udf_fill_super(struct super_block *sb, struct fs_context *fc);
109 struct logicalVolIntegrityDescImpUse *udf_sb_lvidiu(struct super_block *sb) in udf_sb_lvidiu() argument
115 if (!UDF_SB(sb)->s_lvid_bh) in udf_sb_lvidiu()
117 lvid = (struct logicalVolIntegrityDesc *)UDF_SB(sb)->s_lvid_bh->b_data; in udf_sb_lvidiu()
150 static struct inode *udf_alloc_inode(struct super_block *sb) in udf_alloc_inode() argument
153 ei = alloc_inode_sb(sb, udf_inode_cachep, GFP_KERNEL); in udf_alloc_inode()
242 struct super_block *sb = fc->root->d_sb; in udf_init_options() local
243 struct udf_sb_info *sbi = UDF_SB(sb); in udf_init_options()
319 static int udf_sb_alloc_partition_maps(struct super_block *sb, u32 count) in udf_sb_alloc_partition_maps() argument
321 struct udf_sb_info *sbi = UDF_SB(sb); in udf_sb_alloc_partition_maps()
370 static void udf_sb_free_partitions(struct super_block *sb) in udf_sb_free_partitions() argument
372 struct udf_sb_info *sbi = UDF_SB(sb); in udf_sb_free_partitions()
385 struct super_block *sb = root->d_sb; in udf_show_options() local
386 struct udf_sb_info *sbi = UDF_SB(sb); in udf_show_options()
388 if (!UDF_QUERY_FLAG(sb, UDF_FLAG_STRICT)) in udf_show_options()
390 if (UDF_QUERY_FLAG(sb, UDF_FLAG_BLOCKSIZE_SET)) in udf_show_options()
391 seq_printf(seq, ",bs=%lu", sb->s_blocksize); in udf_show_options()
392 if (UDF_QUERY_FLAG(sb, UDF_FLAG_UNHIDE)) in udf_show_options()
394 if (UDF_QUERY_FLAG(sb, UDF_FLAG_UNDELETE)) in udf_show_options()
396 if (!UDF_QUERY_FLAG(sb, UDF_FLAG_USE_AD_IN_ICB)) in udf_show_options()
398 if (UDF_QUERY_FLAG(sb, UDF_FLAG_USE_SHORT_AD)) in udf_show_options()
400 if (UDF_QUERY_FLAG(sb, UDF_FLAG_UID_FORGET)) in udf_show_options()
402 if (UDF_QUERY_FLAG(sb, UDF_FLAG_GID_FORGET)) in udf_show_options()
404 if (UDF_QUERY_FLAG(sb, UDF_FLAG_UID_SET)) in udf_show_options()
406 if (UDF_QUERY_FLAG(sb, UDF_FLAG_GID_SET)) in udf_show_options()
414 if (UDF_QUERY_FLAG(sb, UDF_FLAG_SESSION_SET)) in udf_show_options()
416 if (UDF_QUERY_FLAG(sb, UDF_FLAG_LASTBLOCK_SET)) in udf_show_options()
653 struct super_block *sb = fc->root->d_sb; in udf_reconfigure() local
654 struct udf_sb_info *sbi = UDF_SB(sb); in udf_reconfigure()
658 if (!readonly && UDF_QUERY_FLAG(sb, UDF_FLAG_RW_INCOMPAT)) in udf_reconfigure()
661 sync_filesystem(sb); in udf_reconfigure()
672 if (readonly == sb_rdonly(sb)) in udf_reconfigure()
676 udf_close_lvid(sb); in udf_reconfigure()
678 udf_open_lvid(sb); in udf_reconfigure()
738 static int udf_check_vsd(struct super_block *sb) in udf_check_vsd() argument
748 sbi = UDF_SB(sb); in udf_check_vsd()
749 if (sb->s_blocksize < sizeof(struct volStructDesc)) in udf_check_vsd()
752 sectorsize = sb->s_blocksize; in udf_check_vsd()
754 session_offset = (loff_t)sbi->s_session << sb->s_blocksize_bits; in udf_check_vsd()
758 (unsigned int)(sector >> sb->s_blocksize_bits), in udf_check_vsd()
759 sb->s_blocksize); in udf_check_vsd()
772 bh = sb_bread(sb, sector >> sb->s_blocksize_bits); in udf_check_vsd()
777 (sector & (sb->s_blocksize - 1))); in udf_check_vsd()
789 if (sb->s_blocksize == 4096) { in udf_check_vsd()
806 static int udf_verify_domain_identifier(struct super_block *sb, in udf_verify_domain_identifier() argument
812 udf_warn(sb, "Not OSTA UDF compliant %s descriptor.\n", dname); in udf_verify_domain_identifier()
816 udf_warn(sb, "Possibly not OSTA UDF compliant %s descriptor.\n", in udf_verify_domain_identifier()
823 if (!sb_rdonly(sb)) { in udf_verify_domain_identifier()
824 udf_warn(sb, "Descriptor for %s marked write protected." in udf_verify_domain_identifier()
832 if (!sb_rdonly(sb)) in udf_verify_domain_identifier()
834 UDF_SET_FLAG(sb, UDF_FLAG_RW_INCOMPAT); in udf_verify_domain_identifier()
838 static int udf_load_fileset(struct super_block *sb, struct fileSetDesc *fset, in udf_load_fileset() argument
843 ret = udf_verify_domain_identifier(sb, &fset->domainIdent, "file set"); in udf_load_fileset()
848 UDF_SB(sb)->s_serial_number = le16_to_cpu(fset->descTag.tagSerialNum); in udf_load_fileset()
855 static int udf_find_fileset(struct super_block *sb, in udf_find_fileset() argument
867 bh = udf_read_ptagged(sb, fileset, 0, &ident); in udf_find_fileset()
878 UDF_SB(sb)->s_partition = fileset->partitionReferenceNum; in udf_find_fileset()
879 ret = udf_load_fileset(sb, (struct fileSetDesc *)bh->b_data, root); in udf_find_fileset()
890 static int udf_load_pvoldesc(struct super_block *sb, sector_t block) in udf_load_pvoldesc() argument
903 bh = udf_read_tagged(sb, block, block, &ident); in udf_load_pvoldesc()
916 udf_disk_stamp_to_time(&UDF_SB(sb)->s_record_time, in udf_load_pvoldesc()
923 ret = udf_dstrCS0toChar(sb, outstr, 31, pvoldesc->volIdent, 32); in udf_load_pvoldesc()
925 strscpy_pad(UDF_SB(sb)->s_volume_ident, "InvalidName"); in udf_load_pvoldesc()
929 strscpy_pad(UDF_SB(sb)->s_volume_ident, outstr); in udf_load_pvoldesc()
931 udf_debug("volIdent[] = '%s'\n", UDF_SB(sb)->s_volume_ident); in udf_load_pvoldesc()
933 ret = udf_dstrCS0toChar(sb, outstr, 127, pvoldesc->volSetIdent, 128); in udf_load_pvoldesc()
949 struct inode *udf_find_metadata_inode_efe(struct super_block *sb, in udf_find_metadata_inode_efe() argument
958 metadata_fe = udf_iget_special(sb, &addr); in udf_find_metadata_inode_efe()
961 udf_warn(sb, "metadata inode efe not found\n"); in udf_find_metadata_inode_efe()
965 udf_warn(sb, "metadata inode efe does not have short allocation descriptors!\n"); in udf_find_metadata_inode_efe()
973 static int udf_load_metadata_files(struct super_block *sb, int partition, in udf_load_metadata_files() argument
976 struct udf_sb_info *sbi = UDF_SB(sb); in udf_load_metadata_files()
990 fe = udf_find_metadata_inode_efe(sb, mdata->s_meta_file_loc, in udf_load_metadata_files()
997 fe = udf_find_metadata_inode_efe(sb, mdata->s_mirror_file_loc, in udf_load_metadata_files()
1001 udf_err(sb, "Both metadata and mirror metadata inode efe can not found\n"); in udf_load_metadata_files()
1021 fe = udf_iget_special(sb, &addr); in udf_load_metadata_files()
1023 if (sb_rdonly(sb)) in udf_load_metadata_files()
1024 udf_warn(sb, "bitmap inode efe not found but it's ok since the disc is mounted read-only\n"); in udf_load_metadata_files()
1026 udf_err(sb, "bitmap inode efe not found and attempted read-write mount\n"); in udf_load_metadata_files()
1037 int udf_compute_nr_groups(struct super_block *sb, u32 partition) in udf_compute_nr_groups() argument
1039 struct udf_part_map *map = &UDF_SB(sb)->s_partmaps[partition]; in udf_compute_nr_groups()
1042 sb->s_blocksize * 8); in udf_compute_nr_groups()
1045 static struct udf_bitmap *udf_sb_alloc_bitmap(struct super_block *sb, u32 index) in udf_sb_alloc_bitmap() argument
1048 int nr_groups = udf_compute_nr_groups(sb, index); in udf_sb_alloc_bitmap()
1059 static int check_partition_desc(struct super_block *sb, in check_partition_desc() argument
1102 if (!sb_rdonly(sb)) in check_partition_desc()
1104 UDF_SET_FLAG(sb, UDF_FLAG_RW_INCOMPAT); in check_partition_desc()
1108 static int udf_fill_partdesc_info(struct super_block *sb, in udf_fill_partdesc_info() argument
1112 struct udf_sb_info *sbi = UDF_SB(sb); in udf_fill_partdesc_info()
1123 udf_err(sb, "Partition %d has invalid location %u + %u\n", in udf_fill_partdesc_info()
1141 err = check_partition_desc(sb, p, map); in udf_fill_partdesc_info()
1150 if (UDF_QUERY_FLAG(sb, UDF_FLAG_RW_INCOMPAT)) in udf_fill_partdesc_info()
1162 inode = udf_iget_special(sb, &loc); in udf_fill_partdesc_info()
1175 struct udf_bitmap *bitmap = udf_sb_alloc_bitmap(sb, p_index); in udf_fill_partdesc_info()
1186 udf_err(sb, "Partition %d is too long (%u)\n", p_index, in udf_fill_partdesc_info()
1197 static void udf_find_vat_block(struct super_block *sb, int p_index, in udf_find_vat_block() argument
1200 struct udf_sb_info *sbi = UDF_SB(sb); in udf_find_vat_block()
1215 inode = udf_iget_special(sb, &ino); in udf_find_vat_block()
1223 static int udf_load_vat(struct super_block *sb, int p_index, int type1_index) in udf_load_vat() argument
1225 struct udf_sb_info *sbi = UDF_SB(sb); in udf_load_vat()
1230 sector_t blocks = sb_bdev_nr_blocks(sb); in udf_load_vat()
1232 udf_find_vat_block(sb, p_index, type1_index, sbi->s_last_block); in udf_load_vat()
1238 udf_find_vat_block(sb, p_index, type1_index, blocks - 1); in udf_load_vat()
1281 static int udf_load_partdesc(struct super_block *sb, sector_t block) in udf_load_partdesc() argument
1286 struct udf_sb_info *sbi = UDF_SB(sb); in udf_load_partdesc()
1292 bh = udf_read_tagged(sb, block, block, &ident); in udf_load_partdesc()
1321 ret = udf_fill_partdesc_info(sb, p, i); in udf_load_partdesc()
1346 ret = udf_fill_partdesc_info(sb, p, i); in udf_load_partdesc()
1351 ret = udf_load_metadata_files(sb, i, type1_idx); in udf_load_partdesc()
1353 udf_err(sb, "error loading MetaData partition map %d\n", in udf_load_partdesc()
1363 if (!sb_rdonly(sb)) { in udf_load_partdesc()
1367 UDF_SET_FLAG(sb, UDF_FLAG_RW_INCOMPAT); in udf_load_partdesc()
1368 ret = udf_load_vat(sb, i, type1_idx); in udf_load_partdesc()
1379 static int udf_load_sparable_map(struct super_block *sb, in udf_load_sparable_map() argument
1393 udf_err(sb, "error loading logical volume descriptor: " in udf_load_sparable_map()
1399 udf_err(sb, "error loading logical volume descriptor: " in udf_load_sparable_map()
1404 if (le32_to_cpu(spm->sizeSparingTable) > sb->s_blocksize) { in udf_load_sparable_map()
1405 udf_err(sb, "error loading logical volume descriptor: " in udf_load_sparable_map()
1413 bh = udf_read_tagged(sb, loc, loc, &ident); in udf_load_sparable_map()
1422 sb->s_blocksize) { in udf_load_sparable_map()
1433 static int udf_load_logicalvol(struct super_block *sb, sector_t block, in udf_load_logicalvol() argument
1439 struct udf_sb_info *sbi = UDF_SB(sb); in udf_load_logicalvol()
1446 bh = udf_read_tagged(sb, block, block, &ident); in udf_load_logicalvol()
1452 if (table_len > sb->s_blocksize - sizeof(*lvd)) { in udf_load_logicalvol()
1453 udf_err(sb, "error loading logical volume descriptor: " in udf_load_logicalvol()
1455 sb->s_blocksize - sizeof(*lvd)); in udf_load_logicalvol()
1460 ret = udf_verify_domain_identifier(sb, &lvd->domainIdent, in udf_load_logicalvol()
1467 udf_err(sb, "error loading logical volume descriptor: " in udf_load_logicalvol()
1473 ret = udf_sb_alloc_partition_maps(sb, part_map_count); in udf_load_logicalvol()
1513 ret = udf_load_sparable_map(sb, map, in udf_load_logicalvol()
1580 udf_load_logicalvolint(sb, leea_to_cpu(lvd->integritySeqExt)); in udf_load_logicalvol()
1585 if (sb_rdonly(sb)) { in udf_load_logicalvol()
1586 UDF_SET_FLAG(sb, UDF_FLAG_RW_INCOMPAT); in udf_load_logicalvol()
1588 udf_warn(sb, "Damaged or missing LVID, forcing " in udf_load_logicalvol()
1598 static bool udf_lvid_valid(struct super_block *sb, in udf_lvid_valid() argument
1605 if (parts >= sb->s_blocksize || impuselen >= sb->s_blocksize || in udf_lvid_valid()
1607 2 * parts * sizeof(u32) > sb->s_blocksize) in udf_lvid_valid()
1615 static void udf_load_logicalvolint(struct super_block *sb, struct kernel_extent_ad loc) in udf_load_logicalvolint() argument
1619 struct udf_sb_info *sbi = UDF_SB(sb); in udf_load_logicalvolint()
1626 (bh = udf_read_tagged(sb, loc.extLocation, in udf_load_logicalvolint()
1636 loc.extLength -= sb->s_blocksize; in udf_load_logicalvolint()
1644 if (udf_lvid_valid(sb, lvid)) { in udf_load_logicalvolint()
1648 udf_warn(sb, "Corrupted LVID (parts=%u, impuselen=%u), " in udf_load_logicalvolint()
1660 udf_warn(sb, "Too many LVID indirections (max %u), ignoring.\n", in udf_load_logicalvolint()
1741 struct super_block *sb, in udf_process_sequence() argument
1771 bh = udf_read_tagged(sb, block, block, &ident); in udf_process_sequence()
1781 udf_err(sb, "too many Volume Descriptor " in udf_process_sequence()
1793 sb->s_blocksize_bits; in udf_process_sequence()
1828 udf_err(sb, "Primary Volume Descriptor not found!\n"); in udf_process_sequence()
1832 ret = udf_load_pvoldesc(sb, data.vds[VDS_POS_PRIMARY_VOL_DESC].block); in udf_process_sequence()
1837 ret = udf_load_logicalvol(sb, in udf_process_sequence()
1846 ret = udf_load_partdesc(sb, data.part_descs_loc[i].rec.block); in udf_process_sequence()
1861 static int udf_load_sequence(struct super_block *sb, struct buffer_head *bh, in udf_load_sequence() argument
1873 main_e = main_e >> sb->s_blocksize_bits; in udf_load_sequence()
1879 reserve_e = reserve_e >> sb->s_blocksize_bits; in udf_load_sequence()
1884 ret = udf_process_sequence(sb, main_s, main_e, fileset); in udf_load_sequence()
1887 udf_sb_free_partitions(sb); in udf_load_sequence()
1888 ret = udf_process_sequence(sb, reserve_s, reserve_e, fileset); in udf_load_sequence()
1890 udf_sb_free_partitions(sb); in udf_load_sequence()
1905 static int udf_check_anchor_block(struct super_block *sb, sector_t block, in udf_check_anchor_block() argument
1912 bh = udf_read_tagged(sb, block, block, &ident); in udf_check_anchor_block()
1919 ret = udf_load_sequence(sb, bh, fileset); in udf_check_anchor_block()
1930 static int udf_scan_anchors(struct super_block *sb, udf_pblk_t *lastblock, in udf_scan_anchors() argument
1935 struct udf_sb_info *sbi = UDF_SB(sb); in udf_scan_anchors()
1941 ret = udf_check_anchor_block(sb, sbi->s_anchor, fileset); in udf_scan_anchors()
1952 ret = udf_check_anchor_block(sb, sbi->s_session + 256, fileset); in udf_scan_anchors()
1971 if (last[i] >= sb_bdev_nr_blocks(sb)) in udf_scan_anchors()
1973 ret = udf_check_anchor_block(sb, last[i], fileset); in udf_scan_anchors()
1981 ret = udf_check_anchor_block(sb, last[i] - 256, fileset); in udf_scan_anchors()
1990 return udf_check_anchor_block(sb, sbi->s_session + 512, fileset); in udf_scan_anchors()
2000 static int udf_load_vrs(struct super_block *sb, struct udf_options *uopt, in udf_load_vrs() argument
2003 struct udf_sb_info *sbi = UDF_SB(sb); in udf_load_vrs()
2007 if (!sb_set_blocksize(sb, uopt->blocksize)) { in udf_load_vrs()
2009 udf_warn(sb, "Bad block size\n"); in udf_load_vrs()
2013 if (!UDF_QUERY_FLAG(sb, UDF_FLAG_NOVRS)) { in udf_load_vrs()
2015 nsr = udf_check_vsd(sb); in udf_load_vrs()
2018 udf_warn(sb, "No VRS found\n"); in udf_load_vrs()
2026 sbi->s_last_block = udf_get_last_block(sb); in udf_load_vrs()
2033 ret = udf_scan_anchors(sb, &sbi->s_last_block, fileset); in udf_load_vrs()
2036 udf_warn(sb, "No anchor found\n"); in udf_load_vrs()
2054 static void udf_open_lvid(struct super_block *sb) in udf_open_lvid() argument
2056 struct udf_sb_info *sbi = UDF_SB(sb); in udf_open_lvid()
2064 lvidiu = udf_sb_lvidiu(sb); in udf_open_lvid()
2074 UDF_SET_FLAG(sb, UDF_FLAG_INCONSISTENT); in udf_open_lvid()
2084 static void udf_close_lvid(struct super_block *sb) in udf_close_lvid() argument
2086 struct udf_sb_info *sbi = UDF_SB(sb); in udf_close_lvid()
2094 lvidiu = udf_sb_lvidiu(sb); in udf_close_lvid()
2107 if (!UDF_QUERY_FLAG(sb, UDF_FLAG_INCONSISTENT)) in udf_close_lvid()
2124 u64 lvid_get_unique_id(struct super_block *sb) in lvid_get_unique_id() argument
2127 struct udf_sb_info *sbi = UDF_SB(sb); in lvid_get_unique_id()
2145 udf_updated_lvid(sb); in lvid_get_unique_id()
2151 static int udf_fill_super(struct super_block *sb, struct fs_context *fc) in udf_fill_super() argument
2165 sb->s_fs_info = sbi; in udf_fill_super()
2183 sbi->s_session = udf_get_last_session(sb); in udf_fill_super()
2190 sb->s_op = &udf_sb_ops; in udf_fill_super()
2191 sb->s_export_op = &udf_export_ops; in udf_fill_super()
2193 sb->s_magic = UDF_SUPER_MAGIC; in udf_fill_super()
2194 sb->s_time_gran = 1000; in udf_fill_super()
2197 ret = udf_load_vrs(sb, uopt, silent, &fileset); in udf_fill_super()
2199 uopt->blocksize = bdev_logical_block_size(sb->s_bdev); in udf_fill_super()
2201 ret = udf_load_vrs(sb, uopt, silent, &fileset); in udf_fill_super()
2223 udf_warn(sb, "No partition found (1)\n"); in udf_fill_super()
2233 udf_sb_lvidiu(sb); in udf_fill_super()
2244 udf_err(sb, "minUDFReadRev=%x (max is %x)\n", in udf_fill_super()
2250 if (!sb_rdonly(sb)) { in udf_fill_super()
2254 UDF_SET_FLAG(sb, UDF_FLAG_RW_INCOMPAT); in udf_fill_super()
2260 UDF_SET_FLAG(sb, UDF_FLAG_USE_EXTENDED_FE); in udf_fill_super()
2262 UDF_SET_FLAG(sb, UDF_FLAG_USE_STREAMS); in udf_fill_super()
2266 udf_warn(sb, "No partition found (2)\n"); in udf_fill_super()
2273 if (!sb_rdonly(sb)) { in udf_fill_super()
2277 UDF_SET_FLAG(sb, UDF_FLAG_RW_INCOMPAT); in udf_fill_super()
2280 ret = udf_find_fileset(sb, &fileset, &rootdir); in udf_fill_super()
2282 udf_warn(sb, "No fileset found\n"); in udf_fill_super()
2294 if (!sb_rdonly(sb)) { in udf_fill_super()
2295 udf_open_lvid(sb); in udf_fill_super()
2302 inode = udf_iget(sb, &rootdir); in udf_fill_super()
2304 udf_err(sb, "Error in udf_iget, block=%u, partition=%u\n", in udf_fill_super()
2311 sb->s_root = d_make_root(inode); in udf_fill_super()
2312 if (!sb->s_root) { in udf_fill_super()
2313 udf_err(sb, "Couldn't allocate root dentry\n"); in udf_fill_super()
2317 sb->s_maxbytes = UDF_MAX_FILESIZE; in udf_fill_super()
2318 sb->s_max_links = UDF_MAX_LINKS; in udf_fill_super()
2325 udf_close_lvid(sb); in udf_fill_super()
2327 udf_sb_free_partitions(sb); in udf_fill_super()
2329 sb->s_fs_info = NULL; in udf_fill_super()
2334 void _udf_err(struct super_block *sb, const char *function, in _udf_err() argument
2345 pr_err("error (device %s): %s: %pV", sb->s_id, function, &vaf); in _udf_err()
2350 void _udf_warn(struct super_block *sb, const char *function, in _udf_warn() argument
2361 pr_warn("warning (device %s): %s: %pV", sb->s_id, function, &vaf); in _udf_warn()
2366 static void udf_put_super(struct super_block *sb) in udf_put_super() argument
2370 sbi = UDF_SB(sb); in udf_put_super()
2374 if (!sb_rdonly(sb)) in udf_put_super()
2375 udf_close_lvid(sb); in udf_put_super()
2377 udf_sb_free_partitions(sb); in udf_put_super()
2379 kfree(sb->s_fs_info); in udf_put_super()
2380 sb->s_fs_info = NULL; in udf_put_super()
2383 static int udf_sync_fs(struct super_block *sb, int wait) in udf_sync_fs() argument
2385 struct udf_sb_info *sbi = UDF_SB(sb); in udf_sync_fs()
2409 struct super_block *sb = dentry->d_sb; in udf_statfs() local
2410 struct udf_sb_info *sbi = UDF_SB(sb); in udf_statfs()
2412 u64 id = huge_encode_dev(sb->s_bdev->bd_dev); in udf_statfs()
2414 lvidiu = udf_sb_lvidiu(sb); in udf_statfs()
2416 buf->f_bsize = sb->s_blocksize; in udf_statfs()
2418 buf->f_bfree = udf_count_free(sb); in udf_statfs()
2434 static unsigned int udf_count_free_bitmap(struct super_block *sb, in udf_count_free_bitmap() argument
2448 loc.partitionReferenceNum = UDF_SB(sb)->s_partition; in udf_count_free_bitmap()
2449 bh = udf_read_ptagged(sb, &loc, 0, &ident); in udf_count_free_bitmap()
2452 udf_err(sb, "udf_count_free failed\n"); in udf_count_free_bitmap()
2456 udf_err(sb, "udf_count_free failed\n"); in udf_count_free_bitmap()
2466 u32 cur_bytes = min_t(u32, bytes, sb->s_blocksize - index); in udf_count_free_bitmap()
2472 newblock = udf_get_lb_pblock(sb, &loc, ++block); in udf_count_free_bitmap()
2473 bh = sb_bread(sb, newblock); in udf_count_free_bitmap()
2487 static unsigned int udf_count_free_table(struct super_block *sb, in udf_count_free_table() argument
2496 mutex_lock(&UDF_SB(sb)->s_alloc_mutex); in udf_count_free_table()
2505 mutex_unlock(&UDF_SB(sb)->s_alloc_mutex); in udf_count_free_table()
2510 static unsigned int udf_count_free(struct super_block *sb) in udf_count_free() argument
2513 struct udf_sb_info *sbi = UDF_SB(sb); in udf_count_free()
2546 accum += udf_count_free_bitmap(sb, in udf_count_free()
2553 accum += udf_count_free_table(sb, in udf_count_free()