| /fs/xfs/scrub/ |
| A D | scrub.c | 496 struct xfs_scrub_metadata *sm) in xchk_validate_inputs() argument 507 if (memchr_inv(sm->sm_reserved, 0, sizeof(sm->sm_reserved))) in xchk_validate_inputs() 526 if (sm->sm_ino || sm->sm_gen || sm->sm_agno) in xchk_validate_inputs() 530 if (sm->sm_ino || sm->sm_gen || in xchk_validate_inputs() 535 if (sm->sm_agno || (sm->sm_gen && !sm->sm_ino)) in xchk_validate_inputs() 541 if (sm->sm_ino || sm->sm_gen) in xchk_validate_inputs() 553 if (sm->sm_agno == 0) in xchk_validate_inputs() 563 if (sm->sm_agno != 0) in xchk_validate_inputs() 644 sub->sc.sm->sm_type = subtype; in xchk_scrub_create_subord() 691 sc->sm = sm; in xfs_scrub_metadata() [all …]
|
| A D | common.c | 93 sc->sm, *error); in __xchk_process_error() 107 sc->sm->sm_flags |= errflag; in __xchk_process_error() 181 sc->sm->sm_flags |= errflag; in __xchk_fblock_process_error() 232 sc->sm->sm_flags |= XFS_SCRUB_OFLAG_PREEN; in xchk_block_set_preen() 246 sc->sm->sm_flags |= XFS_SCRUB_OFLAG_PREEN; in xchk_ino_set_preen() 255 sc->sm->sm_flags |= XFS_SCRUB_OFLAG_CORRUPT; in xchk_set_corrupt() 265 sc->sm->sm_flags |= XFS_SCRUB_OFLAG_CORRUPT; in xchk_block_set_corrupt() 441 sc->sm->sm_type != XFS_SCRUB_TYPE_AGI) in want_ag_read_header_failure() 448 if (sc->sm->sm_type == type) in want_ag_read_header_failure() 1129 if (sc->sm->sm_ino == 0 || sc->sm->sm_ino == ip_in->i_ino) in xchk_iget_for_scrubbing() [all …]
|
| A D | stats.c | 190 const struct xfs_scrub_metadata *sm, in xchk_stats_merge_one() argument 195 if (sm->sm_type >= XFS_SCRUB_TYPE_NR) { in xchk_stats_merge_one() 196 ASSERT(sm->sm_type < XFS_SCRUB_TYPE_NR); in xchk_stats_merge_one() 200 css = &cs->cs_stats[sm->sm_type]; in xchk_stats_merge_one() 205 if (sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_stats_merge_one() 207 if (sm->sm_flags & XFS_SCRUB_OFLAG_PREEN) in xchk_stats_merge_one() 209 if (sm->sm_flags & XFS_SCRUB_OFLAG_XFAIL) in xchk_stats_merge_one() 211 if (sm->sm_flags & XFS_SCRUB_OFLAG_XCORRUPT) in xchk_stats_merge_one() 215 if (sm->sm_flags & XFS_SCRUB_OFLAG_WARNING) in xchk_stats_merge_one() 232 const struct xfs_scrub_metadata *sm, in xchk_stats_merge() argument [all …]
|
| A D | health.c | 138 if (!(sc->sm->sm_flags & (XFS_SCRUB_OFLAG_CORRUPT | in xchk_mark_healthy_if_clean() 205 if (sc->sm->sm_type == XFS_SCRUB_TYPE_HEALTHY && in xchk_update_health() 206 !(sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) { in xchk_update_health() 211 bad = (sc->sm->sm_flags & (XFS_SCRUB_OFLAG_CORRUPT | in xchk_update_health() 215 switch (type_to_health_flag[sc->sm->sm_type].group) { in xchk_update_health() 221 pag = xfs_perag_get(sc->mp, sc->sm->sm_agno); in xchk_update_health() 236 if (sc->sm->sm_flags & XFS_SCRUB_IFLAG_REPAIR) in xchk_update_health() 256 rtg = xfs_rtgroup_get(sc->mp, sc->sm->sm_agno); in xchk_update_health() 285 if (sc->sm->sm_type == sm_type) in xchk_ag_btree_del_cursor_if_sick() 295 type_to_health_flag[sc->sm->sm_type].group == XHG_AG) in xchk_ag_btree_del_cursor_if_sick() [all …]
|
| A D | rtrmap.c | 49 error = xchk_rtgroup_init(sc, sc->sm->sm_agno, &sc->sr); in xchk_setup_rtrmapbt() 102 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtrmapbt_check_overlapping() 159 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtrmapbt_check_mergeable() 182 if (!sc->sr.refc_cur || xchk_skip_xref(sc->sm)) in xchk_rtrmapbt_xref_rtrefc() 205 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtrmapbt_xref() 233 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtrmapbt_rec() 253 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_rtrmapbt() 270 if (!sc->sr.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_xref_has_no_rt_owner() 290 if (!sc->sr.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_xref_has_rt_owner() 311 if (!sc->sr.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_only_rt_owned_by()
|
| A D | repair.c | 87 sc->sm->sm_flags &= ~XFS_SCRUB_FLAGS_OUT; in xrep_attempt() 285 struct xfs_scrub_metadata *sm = sc->sm; in xrep_calc_ag_resblks() local 298 if (!(sm->sm_flags & XFS_SCRUB_IFLAG_REPAIR)) in xrep_calc_ag_resblks() 301 pag = xfs_perag_get(mp, sm->sm_agno); in xrep_calc_ag_resblks() 400 struct xfs_scrub_metadata *sm = sc->sm; in xrep_calc_rtgroup_resblks() local 404 if (!(sm->sm_flags & XFS_SCRUB_IFLAG_REPAIR)) in xrep_calc_rtgroup_resblks() 882 if (sc->sm->sm_type != XFS_SCRUB_TYPE_BNOBT && in xrep_ag_btcur_init() 883 sc->sm->sm_type != XFS_SCRUB_TYPE_CNTBT) { in xrep_ag_btcur_init() 1117 if (xchk_needs_repair(sc->sm)) in xrep_will_attempt() 1169 sub->sc.sm->sm_flags &= ~XFS_SCRUB_FLAGS_OUT; in xrep_metadata_inode_subtype() [all …]
|
| A D | inode.c | 98 xfs_agnumber_t agno = XFS_INO_TO_AGNO(mp, sc->sm->sm_ino); in xchk_setup_inode() 105 if (sc->sm->sm_ino == 0 || sc->sm->sm_ino == ip_in->i_ino) { in xchk_setup_inode() 122 if (!xfs_verify_ino(sc->mp, sc->sm->sm_ino)) in xchk_setup_inode() 126 error = xchk_iget_safe(sc, sc->sm->sm_ino, &ip); in xchk_setup_inode() 160 error = xchk_iget_agi(sc, sc->sm->sm_ino, &agi_bp, &ip); in xchk_setup_inode() 195 error = xfs_imap(pag, sc->tp, sc->sm->sm_ino, &imap, in xchk_setup_inode() 662 if (!sc->sa.fino_cur || xchk_skip_xref(sc->sm)) in xchk_inode_xref_finobt() 705 if (xchk_skip_xref(sc->sm)) in xchk_inode_xref_bmap() 737 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_inode_xref() 818 xchk_ino_set_corrupt(sc, sc->sm->sm_ino); in xchk_inode() [all …]
|
| A D | alloc.c | 68 if (sc->sm->sm_type == XFS_SCRUB_TYPE_BNOBT) in xchk_allocbt_xref_other() 72 if (!*pcur || xchk_skip_xref(sc->sm)) in xchk_allocbt_xref_other() 104 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_allocbt_xref() 121 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_allocbt_mergeable() 161 switch (sc->sm->sm_type) { in xchk_allocbt() 186 if (!sc->sa.bno_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_used_space()
|
| A D | ialloc.c | 142 ASSERT(sc->sm->sm_type == XFS_SCRUB_TYPE_INOBT); in xchk_inobt_chunk_xref_finobt() 144 if (!sc->sa.fino_cur || xchk_skip_xref(sc->sm)) in xchk_inobt_chunk_xref_finobt() 230 ASSERT(sc->sm->sm_type == XFS_SCRUB_TYPE_FINOBT); in xchk_finobt_chunk_xref_inobt() 232 if (!sc->sa.ino_cur || xchk_skip_xref(sc->sm)) in xchk_finobt_chunk_xref_inobt() 271 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_iallocbt_chunk() 275 if (sc->sm->sm_type == XFS_SCRUB_TYPE_INOBT) in xchk_iallocbt_chunk() 659 xchk_skip_xref(sc->sm)) in xchk_iallocbt_xref_rmap_btreeblks() 694 if (!sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_iallocbt_xref_rmap_inodes() 720 switch (sc->sm->sm_type) { in xchk_iallocbt() 746 if (sc->sm->sm_type == XFS_SCRUB_TYPE_INOBT) in xchk_iallocbt() [all …]
|
| A D | common.h | 218 static inline bool xchk_skip_xref(struct xfs_scrub_metadata *sm) in xchk_skip_xref() argument 220 return sm->sm_flags & (XFS_SCRUB_OFLAG_CORRUPT | in xchk_skip_xref() 228 static inline bool xchk_needs_repair(const struct xfs_scrub_metadata *sm) in xchk_needs_repair() argument 230 return sm->sm_flags & (XFS_SCRUB_OFLAG_CORRUPT | in xchk_needs_repair() 243 return (sc->sm->sm_flags & XFS_SCRUB_IFLAG_REPAIR) && in xchk_could_repair() 260 pag_agno((sc)->sa.pag) : (sc)->sm->sm_agno, \ 265 (sc)->ip ? (sc)->ip->i_ino : (sc)->sm->sm_ino, \ 271 rtg_rgno((sc)->sr.rtg) : (sc)->sm->sm_agno, \
|
| A D | rtbitmap.c | 51 error = xchk_rtgroup_init(sc, sc->sm->sm_agno, &sc->sr); in xchk_setup_rtbitmap() 103 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtbitmap_xref() 139 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtbitmap_rec() 169 (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_rtbitmap_check_extents() 244 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_rtbitmap() 248 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_rtbitmap() 281 if (xchk_skip_xref(sc->sm)) in xchk_xref_is_used_rt_space()
|
| A D | rtrefcount.c | 44 error = xchk_rtgroup_init(sc, sc->sm->sm_agno, &sc->sr); in xchk_setup_rtrefcountbt() 316 if (!sc->sr.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_rtrefcountbt_xref_rmap() 348 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtrefcountbt_xref() 400 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rtrefcountbt_check_mergeable() 440 xchk_skip_xref(sc->sm)) in xchk_rtrefcountbt_xref_gaps() 519 if (!sc->sr.rmap_cur || !sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_refcount_xref_rmap() 556 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_rtrefcountbt() 563 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_rtrefcountbt() 588 if (!sc->sr.refc_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_rt_cow_staging() 631 if (!sc->sr.refc_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_not_rt_shared() [all …]
|
| A D | rmap.c | 92 if (!sc->sa.refc_cur || xchk_skip_xref(sc->sm)) in xchk_rmapbt_xref_refc() 118 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rmapbt_xref() 156 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_PREEN) in xchk_rmapbt_check_unwritten_in_keyflags() 209 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rmapbt_check_overlapping() 271 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rmapbt_check_mergeable() 296 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rmapbt_mark_bitmap() 516 if (sc->sm->sm_flags & (XFS_SCRUB_OFLAG_CORRUPT | in xchk_rmapbt_check_bitmaps() 593 if (!sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_only_owned_by() 618 if (!sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_not_owned_by() 640 if (!sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_xref_has_no_owner()
|
| A D | refcount.c | 302 if (!sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_refcountbt_xref_rmap() 336 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_refcountbt_xref() 390 xchk_skip_xref(sc->sm)) in xchk_refcountbt_xref_gaps() 437 if (bs->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_refcountbt_check_mergeable() 498 if (!sc->sa.rmap_cur || xchk_skip_xref(sc->sm)) in xchk_refcount_xref_rmap() 560 if (!sc->sa.refc_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_cow_staging() 603 if (!sc->sa.refc_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_not_shared() 624 if (!sc->sa.refc_cur || xchk_skip_xref(sc->sm)) in xchk_xref_is_not_cow_staging()
|
| A D | dir.c | 309 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_dir_actor() 377 if (ds->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_dir_rec() 497 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory_data_bestfree() 566 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory_data_bestfree() 696 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory_leaf1_bestfree() 723 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory_leaf1_bestfree() 857 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory_blocks() 875 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory_blocks() 1040 if (sd->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_dir_finish_slow_dirents() 1087 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_directory() [all …]
|
| A D | bmap.c | 54 sc->sm->sm_type != XFS_SCRUB_TYPE_BMBTA) { in xchk_setup_inode_bmap() 210 if (xchk_skip_xref(info->sc->sm)) in xchk_bmap_xref_rmap() 277 if (!info->sc->sa.rmap_cur || xchk_skip_xref(info->sc->sm)) in xchk_bmap_xref_rmap_cow() 511 if (info->sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_bmap_iextent() 670 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_bmap_check_rmap() 684 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_bmap_check_rmap() 828 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_bmap_want_check_rmaps() 852 (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) { in xchk_bmap_check_rmaps() 864 (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) { in xchk_bmap_check_rmaps() 1089 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_bmap() [all …]
|
| A D | metapath.c | 148 rtg = xfs_rtgroup_get(sc->mp, sc->sm->sm_agno); in xchk_setup_metapath_rtginode() 228 if (sc->sm->sm_gen) in xchk_setup_metapath() 231 switch (sc->sm->sm_ino) { in xchk_setup_metapath() 234 if (sc->sm->sm_agno) in xchk_setup_metapath() 312 if (sc->sm->sm_ino == XFS_SCRUB_METAPATH_PROBE) in xchk_metapath() 629 if (sc->sm->sm_ino == XFS_SCRUB_METAPATH_PROBE) in xrep_metapath()
|
| A D | agheader.c | 40 xfs_agnumber_t agno = sc->sm->sm_agno; in xchk_superblock_xref() 44 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_superblock_xref() 113 agno = sc->sm->sm_agno; in xchk_superblock() 574 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_agf_xref() 602 xfs_agnumber_t agno = sc->sm->sm_agno; in xchk_agf() 709 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_agfl_block_xref() 737 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_agfl_block() 762 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_agfl_xref() 790 xfs_agnumber_t agno = sc->sm->sm_agno; in xchk_agfl() 809 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_agfl() [all …]
|
| A D | rgsuper.c | 34 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_rgsuperblock_xref() 45 xfs_rgnumber_t rgno = sc->sm->sm_agno; in xchk_rgsuperblock()
|
| A D | stats.h | 29 void xchk_stats_merge(struct xfs_mount *mp, const struct xfs_scrub_metadata *sm, 56 # define xchk_stats_merge(mp, sm, run) ((void)0) argument
|
| A D | quota.c | 28 switch (sc->sm->sm_type) { in xchk_quota_to_dqtype() 254 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_quota_item() 274 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_quota_data_fork() 319 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_quota()
|
| /fs/ceph/ |
| A D | snap.c | 1219 sm = kmalloc(sizeof(*sm), GFP_NOFS); in ceph_get_snapid_map() 1220 if (!sm) in ceph_get_snapid_map() 1225 kfree(sm); in ceph_get_snapid_map() 1258 kfree(sm); in ceph_get_snapid_map() 1265 return sm; in ceph_get_snapid_map() 1271 if (!sm) in ceph_put_snapid_map() 1282 kfree(sm); in ceph_put_snapid_map() 1311 doutc(cl, "trim snapid map %llx -> %x\n", sm->snap, sm->dev); in ceph_trim_snapid_map() 1313 kfree(sm); in ceph_trim_snapid_map() 1339 sm->snap, sm->dev); in ceph_cleanup_snapid_map() [all …]
|
| /fs/ocfs2/ |
| A D | slot_map.c | 92 struct ocfs2_slot_map *sm; in ocfs2_update_slot_info_old() local 94 sm = (struct ocfs2_slot_map *)si->si_bh[0]->b_data; in ocfs2_update_slot_info_old() 97 if (le16_to_cpu(sm->sm_slots[i]) == (u16)OCFS2_INVALID_SLOT) in ocfs2_update_slot_info_old() 100 ocfs2_set_slot(si, i, le16_to_cpu(sm->sm_slots[i])); in ocfs2_update_slot_info_old() 170 struct ocfs2_slot_map *sm; in ocfs2_update_disk_slot_old() local 172 sm = (struct ocfs2_slot_map *)si->si_bh[0]->b_data; in ocfs2_update_disk_slot_old() 175 sm->sm_slots[i] = in ocfs2_update_disk_slot_old() 178 sm->sm_slots[i] = cpu_to_le16(OCFS2_INVALID_SLOT); in ocfs2_update_disk_slot_old()
|
| /fs/ |
| A D | namespace.c | 5241 struct statmount sm; member 5484 s->sm.opt_num = err; in statmount_opt_array() 5552 struct statmount *sm = &s->sm; in statmount_string() local 5563 offp = &sm->fs_type; in statmount_string() 5567 offp = &sm->mnt_root; in statmount_string() 5571 offp = &sm->mnt_point; in statmount_string() 5575 offp = &sm->mnt_opts; in statmount_string() 5579 offp = &sm->opt_array; in statmount_string() 5591 offp = &sm->sb_source; in statmount_string() 5626 sm->mask |= flag; in statmount_string() [all …]
|
| /fs/jffs2/ |
| A D | scan.c | 488 struct jffs2_sum_marker *sm; in jffs2_scan_eraseblock() local 494 sm = (void *)buf + c->sector_size - sizeof(*sm); in jffs2_scan_eraseblock() 495 if (je32_to_cpu(sm->magic) == JFFS2_SUM_MAGIC) { in jffs2_scan_eraseblock() 496 sumptr = buf + je32_to_cpu(sm->offset); in jffs2_scan_eraseblock() 497 sumlen = c->sector_size - je32_to_cpu(sm->offset); in jffs2_scan_eraseblock() 504 buf_len = sizeof(*sm); in jffs2_scan_eraseblock() 513 sm = (void *)buf + buf_size - sizeof(*sm); in jffs2_scan_eraseblock() 514 if (je32_to_cpu(sm->magic) == JFFS2_SUM_MAGIC) { in jffs2_scan_eraseblock() 515 sumlen = c->sector_size - je32_to_cpu(sm->offset); in jffs2_scan_eraseblock()
|