Home
last modified time | relevance | path

Searched refs:m_sb (Results 1 – 25 of 66) sorted by relevance

123

/fs/xfs/
Dxfs_fsops.c57 geo->blocksize = mp->m_sb.sb_blocksize; in xfs_fs_geometry()
58 geo->rtextsize = mp->m_sb.sb_rextsize; in xfs_fs_geometry()
59 geo->agblocks = mp->m_sb.sb_agblocks; in xfs_fs_geometry()
60 geo->agcount = mp->m_sb.sb_agcount; in xfs_fs_geometry()
61 geo->logblocks = mp->m_sb.sb_logblocks; in xfs_fs_geometry()
62 geo->sectsize = mp->m_sb.sb_sectsize; in xfs_fs_geometry()
63 geo->inodesize = mp->m_sb.sb_inodesize; in xfs_fs_geometry()
64 geo->imaxpct = mp->m_sb.sb_imax_pct; in xfs_fs_geometry()
65 geo->datablocks = mp->m_sb.sb_dblocks; in xfs_fs_geometry()
66 geo->rtblocks = mp->m_sb.sb_rblocks; in xfs_fs_geometry()
[all …]
Dxfs_mount.c68 uuid_t *uuid = &mp->m_sb.sb_uuid; in xfs_uuid_mount()
111 uuid_t *uuid = &mp->m_sb.sb_uuid; in xfs_uuid_unmount()
151 for (agno = 0; agno < mp->m_sb.sb_agcount; agno++) { in xfs_free_perag()
190 xfs_sb_t *sbp = &mp->m_sb; in xfs_initialize_perag()
275 struct xfs_sb *sbp = &mp->m_sb; in xfs_readsb()
368 xfs_sb_t *sbp = &(mp->m_sb); in xfs_update_alignment()
420 xfs_sb_version_hasdalign(&mp->m_sb)) { in xfs_update_alignment()
434 xfs_sb_t *sbp = &(mp->m_sb); in xfs_set_maxicount()
461 xfs_sb_t *sbp = &(mp->m_sb); in xfs_set_rw_sizes()
501 __uint64_t space = mp->m_sb.sb_dblocks; in xfs_set_low_space_thresholds()
[all …]
Dxfs_trans.c299 if (xfs_sb_version_haslazysbcount(&mp->m_sb)) in xfs_trans_mod_sb()
304 if (xfs_sb_version_haslazysbcount(&mp->m_sb)) in xfs_trans_mod_sb()
318 if (xfs_sb_version_haslazysbcount(&mp->m_sb)) in xfs_trans_mod_sb()
329 if (xfs_sb_version_haslazysbcount(&mp->m_sb)) in xfs_trans_mod_sb()
416 if (!xfs_sb_version_haslazysbcount(&(tp->t_mountp->m_sb))) { in xfs_trans_apply_sb_deltas()
557 (xfs_sb_version_haslazysbcount(&mp->m_sb) || in xfs_trans_unreserve_and_mod_sb()
567 if (xfs_sb_version_haslazysbcount(&mp->m_sb) || in xfs_trans_unreserve_and_mod_sb()
598 error = xfs_sb_mod64(&mp->m_sb.sb_frextents, rtxdelta); in xfs_trans_unreserve_and_mod_sb()
604 error = xfs_sb_mod64(&mp->m_sb.sb_dblocks, tp->t_dblocks_delta); in xfs_trans_unreserve_and_mod_sb()
609 error = xfs_sb_mod32(&mp->m_sb.sb_agcount, tp->t_agcount_delta); in xfs_trans_unreserve_and_mod_sb()
[all …]
Dxfs_rtalloc.c124 for (bbno = omp->m_sb.sb_rbmblocks - 1; in xfs_rtcopy_summary()
177 error = xfs_rtfind_forw(mp, tp, end, mp->m_sb.sb_rextents - 1, in xfs_rtallocate_range()
260 maxlen = min(mp->m_sb.sb_rextents, i + maxlen) - i; in xfs_rtallocate_extent_block()
451 if (bno >= mp->m_sb.sb_rextents) in xfs_rtallocate_extent_near()
452 bno = mp->m_sb.sb_rextents - 1; in xfs_rtallocate_extent_near()
455 maxlen = min(mp->m_sb.sb_rextents, bno + maxlen) - bno; in xfs_rtallocate_extent_near()
598 else if (i > 0 && (int)bbno + i < mp->m_sb.sb_rbmblocks - 1) in xfs_rtallocate_extent_near()
604 else if (i <= 0 && (int)bbno - i < mp->m_sb.sb_rbmblocks - 1) in xfs_rtallocate_extent_near()
660 for (i = 0; i < mp->m_sb.sb_rbmblocks; i++) { in xfs_rtallocate_extent_size()
719 for (i = 0; i < mp->m_sb.sb_rbmblocks; i++) { in xfs_rtallocate_extent_size()
[all …]
Dxfs_qm.c318 if (xfs_is_quota_inode(&mp->m_sb, ip->i_ino)) in xfs_qm_need_dqattach()
410 ASSERT(!xfs_is_quota_inode(&ip->i_mount->m_sb, ip->i_ino)); in xfs_qm_dqdetach()
603 mp->m_qflags |= (mp->m_sb.sb_qflags & XFS_ALL_QUOTA_CHKD); in xfs_qm_init_quotainfo()
728 if (!xfs_sb_version_has_pquotino(&mp->m_sb) && in xfs_qm_qino_alloc()
733 (mp->m_sb.sb_gquotino != NULLFSINO)) { in xfs_qm_qino_alloc()
734 ino = mp->m_sb.sb_gquotino; in xfs_qm_qino_alloc()
735 ASSERT(mp->m_sb.sb_pquotino == NULLFSINO); in xfs_qm_qino_alloc()
737 (mp->m_sb.sb_pquotino != NULLFSINO)) { in xfs_qm_qino_alloc()
738 ino = mp->m_sb.sb_pquotino; in xfs_qm_qino_alloc()
739 ASSERT(mp->m_sb.sb_gquotino == NULLFSINO); in xfs_qm_qino_alloc()
[all …]
Dxfs_qm_syscalls.c88 mp->m_sb.sb_qflags = mp->m_qflags; in xfs_qm_scall_quotaoff()
278 if (!xfs_sb_version_hasquota(&mp->m_sb) || flags == 0 || in xfs_qm_scall_trunc_qfiles()
286 error = xfs_qm_scall_trunc_qfile(mp, mp->m_sb.sb_uquotino); in xfs_qm_scall_trunc_qfiles()
291 error = xfs_qm_scall_trunc_qfile(mp, mp->m_sb.sb_gquotino); in xfs_qm_scall_trunc_qfiles()
296 error = xfs_qm_scall_trunc_qfile(mp, mp->m_sb.sb_pquotino); in xfs_qm_scall_trunc_qfiles()
331 if (((mp->m_sb.sb_qflags & XFS_UQUOTA_ACCT) == 0 && in xfs_qm_scall_quotaon()
333 ((mp->m_sb.sb_qflags & XFS_GQUOTA_ACCT) == 0 && in xfs_qm_scall_quotaon()
335 ((mp->m_sb.sb_qflags & XFS_PQUOTA_ACCT) == 0 && in xfs_qm_scall_quotaon()
339 __func__, flags, mp->m_sb.sb_qflags); in xfs_qm_scall_quotaon()
353 qf = mp->m_sb.sb_qflags; in xfs_qm_scall_quotaon()
[all …]
Dxfs_itable.c39 return (ino == mp->m_sb.sb_rbmino || ino == mp->m_sb.sb_rsumino || in xfs_internal_inum()
40 (xfs_sb_version_hasquota(&mp->m_sb) && in xfs_internal_inum()
41 xfs_is_quota_inode(&mp->m_sb, ino))); in xfs_internal_inum()
101 buf->bs_extsize = dic->di_extsize << mp->m_sb.sb_blocklog; in xfs_bulkstat_one_int()
119 buf->bs_blksize = mp->m_sb.sb_blocksize; in xfs_bulkstat_one_int()
125 buf->bs_blksize = mp->m_sb.sb_blocksize; in xfs_bulkstat_one_int()
189 inodes_per_cluster = blks_per_cluster << mp->m_sb.sb_inopblog; in xfs_bulkstat_ichunk_ra()
365 if (agno >= mp->m_sb.sb_agcount || in xfs_bulkstat()
389 while (agno < mp->m_sb.sb_agcount) { in xfs_bulkstat()
530 if (agno >= mp->m_sb.sb_agcount) in xfs_bulkstat()
[all …]
Dxfs_qm_bhv.c90 quotaondisk = xfs_sb_version_hasquota(&mp->m_sb) && in xfs_qm_newmount()
91 (mp->m_sb.sb_qflags & XFS_ALL_QUOTA_ACCT); in xfs_qm_newmount()
94 uquotaondisk = mp->m_sb.sb_qflags & XFS_UQUOTA_ACCT; in xfs_qm_newmount()
95 pquotaondisk = mp->m_sb.sb_qflags & XFS_PQUOTA_ACCT; in xfs_qm_newmount()
96 gquotaondisk = mp->m_sb.sb_qflags & XFS_GQUOTA_ACCT; in xfs_qm_newmount()
Dxfs_super.c584 xfs_sb_t *sbp = &mp->m_sb; in xfs_set_inode32()
792 error = xfs_setsize_buftarg(mp->m_ddev_targp, mp->m_sb.sb_sectsize); in xfs_setup_devices()
799 if (xfs_sb_version_hassector(&mp->m_sb)) in xfs_setup_devices()
800 log_sector_size = mp->m_sb.sb_logsectsize; in xfs_setup_devices()
808 mp->m_sb.sb_sectsize); in xfs_setup_devices()
1050 xfs_sb_t *sbp = &mp->m_sb; in xfs_fs_statfs()
1175 xfs_sb_t *sbp = &mp->m_sb; in xfs_fs_remount()
1333 if (xfs_sb_version_haslogv2(&mp->m_sb)) { in xfs_finish_flags()
1335 mp->m_sb.sb_logsunit > XLOG_BIG_RECORD_BSIZE) { in xfs_finish_flags()
1336 mp->m_logbsize = mp->m_sb.sb_logsunit; in xfs_finish_flags()
[all …]
Dxfs_log_recover.c298 __func__, &mp->m_sb.sb_uuid, XLOG_FMT); in xlog_header_check_dump()
328 } else if (unlikely(!uuid_equal(&mp->m_sb.sb_uuid, &head->h_fs_uuid))) { in xlog_header_check_recover()
356 } else if (unlikely(!uuid_equal(&mp->m_sb.sb_uuid, &head->h_fs_uuid))) { in xlog_header_check_mount()
581 if (xfs_sb_version_haslogv2(&log->l_mp->m_sb)) { in xlog_find_verify_log_record()
1002 if (xfs_sb_version_haslogv2(&log->l_mp->m_sb)) { in xlog_find_tail()
1214 xfs_sb_version_haslogv2(&log->l_mp->m_sb) ? 2 : 1); in xlog_add_record()
1218 memcpy(&recp->h_fs_uuid, &log->l_mp->m_sb.sb_uuid, sizeof(uuid_t)); in xlog_add_record()
1727 if (xfs_sb_version_hascrc(&mp->m_sb)) in xlog_recover_do_inode_buffer()
1730 inodes_per_buf = BBTOB(bp->b_io_length) >> mp->m_sb.sb_inodelog; in xlog_recover_do_inode_buffer()
1732 next_unlinked_offset = (i * mp->m_sb.sb_inodesize) + in xlog_recover_do_inode_buffer()
[all …]
Dxfs_bmap_util.c178 prod = align / mp->m_sb.sb_rextsize; in xfs_bmap_rtalloc()
185 ASSERT(ap->length % mp->m_sb.sb_rextsize == 0); in xfs_bmap_rtalloc()
196 ralen = ap->length / mp->m_sb.sb_rextsize; in xfs_bmap_rtalloc()
204 if (ralen * mp->m_sb.sb_rextsize >= MAXEXTLEN) in xfs_bmap_rtalloc()
205 ralen = MAXEXTLEN / mp->m_sb.sb_rextsize; in xfs_bmap_rtalloc()
223 ap->blkno = rtx * mp->m_sb.sb_rextsize; in xfs_bmap_rtalloc()
234 do_div(ap->blkno, mp->m_sb.sb_rextsize); in xfs_bmap_rtalloc()
247 ap->blkno *= mp->m_sb.sb_rextsize; in xfs_bmap_rtalloc()
248 ralen *= mp->m_sb.sb_rextsize; in xfs_bmap_rtalloc()
452 ASSERT(XFS_FSB_TO_AGNO(mp, bno) < mp->m_sb.sb_agcount); in xfs_bmap_count_blocks()
[all …]
Dxfs_discard.c181 if (range.start >= XFS_FSB_TO_B(mp, mp->m_sb.sb_dblocks) || in xfs_ioc_trim()
183 range.len < mp->m_sb.sb_blocksize) in xfs_ioc_trim()
190 if (end > XFS_FSB_TO_BB(mp, mp->m_sb.sb_dblocks) - 1) in xfs_ioc_trim()
191 end = XFS_FSB_TO_BB(mp, mp->m_sb.sb_dblocks)- 1; in xfs_ioc_trim()
Dxfs_filestream.c157 minfree = mp->m_sb.sb_agblocks / 50; in xfs_filestream_pick_ag()
218 if (++ag >= mp->m_sb.sb_agcount) in xfs_filestream_pick_ag()
343 startag = (mp->m_agfrotor / rotorstep) % mp->m_sb.sb_agcount; in xfs_filestream_lookup_ag()
345 (mp->m_sb.sb_agcount * rotorstep); in xfs_filestream_lookup_ag()
384 startag = (item->ag + 1) % mp->m_sb.sb_agcount; in xfs_filestream_new_ag()
/fs/xfs/libxfs/
Dxfs_trans_resv.c103 mp->m_sb.sb_inodesize + in xfs_calc_inode_res()
135 if (!xfs_sb_version_hasfinobt(&mp->m_sb)) in xfs_calc_finobt_res()
190 xfs_calc_buf_res(3, mp->m_sb.sb_sectsize) + in xfs_calc_write_reservation()
193 (xfs_calc_buf_res(5, mp->m_sb.sb_sectsize) + in xfs_calc_write_reservation()
219 (xfs_calc_buf_res(9, mp->m_sb.sb_sectsize) + in xfs_calc_itruncate_reservation()
249 (xfs_calc_buf_res(7, mp->m_sb.sb_sectsize) + in xfs_calc_rename_reservation()
263 return xfs_calc_buf_res(1, mp->m_sb.sb_sectsize) + in xfs_calc_iunlink_remove_reservation()
288 (xfs_calc_buf_res(3, mp->m_sb.sb_sectsize) + in xfs_calc_link_reservation()
301 return xfs_calc_buf_res(1, mp->m_sb.sb_sectsize) + in xfs_calc_iunlink_add_reservation()
326 (xfs_calc_buf_res(4, mp->m_sb.sb_sectsize) + in xfs_calc_remove_reservation()
[all …]
Dxfs_symlink_remote.c46 int buflen = XFS_SYMLINK_BUF_SPACE(mp, mp->m_sb.sb_blocksize); in xfs_symlink_blocks()
61 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_symlink_hdr_set()
68 uuid_copy(&dsl->sl_uuid, &mp->m_sb.sb_meta_uuid); in xfs_symlink_hdr_set()
108 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_symlink_verify()
112 if (!uuid_equal(&dsl->sl_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_symlink_verify()
134 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_symlink_read_verify()
154 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_symlink_write_verify()
188 if (!xfs_sb_version_hascrc(&mp->m_sb)) { in xfs_symlink_local_to_remote()
Dxfs_ialloc.c51 if (xfs_sb_version_hasalign(&mp->m_sb) && in xfs_ialloc_cluster_alignment()
52 mp->m_sb.sb_inoalignmt >= in xfs_ialloc_cluster_alignment()
54 return mp->m_sb.sb_inoalignmt; in xfs_ialloc_cluster_alignment()
88 if (xfs_sb_version_hassparseinodes(&cur->bc_mp->m_sb)) { in xfs_inobt_update()
117 if (xfs_sb_version_hassparseinodes(&cur->bc_mp->m_sb)) { in xfs_inobt_get_rec()
274 inodes_per_cluster = blks_per_cluster << mp->m_sb.sb_inopblog; in xfs_ialloc_inode_init()
296 if (xfs_sb_version_hascrc(&mp->m_sb)) { in xfs_ialloc_inode_init()
311 mp->m_sb.sb_inodesize, length, gen); in xfs_ialloc_inode_init()
330 int ioffset = i << mp->m_sb.sb_inodelog; in xfs_ialloc_inode_init()
343 &mp->m_sb.sb_meta_uuid); in xfs_ialloc_inode_init()
[all …]
Dxfs_inode_buf.c46 j = mp->m_inode_cluster_size >> mp->m_sb.sb_inodelog; in xfs_inobp_check()
49 dip = xfs_buf_offset(bp, i * mp->m_sb.sb_inodesize); in xfs_inobp_check()
86 ni = XFS_BB_TO_FSB(mp, bp->b_length) * mp->m_sb.sb_inopblock; in xfs_inode_buf_verify()
91 dip = xfs_buf_offset(bp, (i << mp->m_sb.sb_inodelog)); in xfs_inode_buf_verify()
314 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_dinode_verify()
316 if (!xfs_verify_cksum((char *)dip, mp->m_sb.sb_inodesize, in xfs_dinode_verify()
321 if (!uuid_equal(&dip->di_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_dinode_verify()
336 ASSERT(xfs_sb_version_hascrc(&mp->m_sb)); in xfs_dinode_calc_crc()
337 crc = xfs_start_cksum((char *)dip, mp->m_sb.sb_inodesize, in xfs_dinode_calc_crc()
374 xfs_sb_version_hascrc(&mp->m_sb) && in xfs_iread()
[all …]
Dxfs_dir2.c108 ASSERT(mp->m_sb.sb_versionnum & XFS_SB_VERSION_DIRV2BIT); in xfs_da_mount()
109 ASSERT((1 << (mp->m_sb.sb_blocklog + mp->m_sb.sb_dirblklog)) <= in xfs_da_mount()
128 dageo->blklog = mp->m_sb.sb_blocklog + mp->m_sb.sb_dirblklog; in xfs_da_mount()
129 dageo->fsblog = mp->m_sb.sb_blocklog; in xfs_da_mount()
131 dageo->fsbcount = 1 << mp->m_sb.sb_dirblklog; in xfs_da_mount()
146 dageo->blklog = mp->m_sb.sb_blocklog; in xfs_da_mount()
147 dageo->fsblog = mp->m_sb.sb_blocklog; in xfs_da_mount()
154 if (xfs_sb_version_hasasciici(&mp->m_sb)) in xfs_da_mount()
207 agno < mp->m_sb.sb_agcount && in xfs_dir_ino_validate()
208 agblkno < mp->m_sb.sb_agblocks && in xfs_dir_ino_validate()
[all …]
Dxfs_format.h579 #define XFS_FSB_TO_B(mp,fsbno) ((xfs_fsize_t)(fsbno) << (mp)->m_sb.sb_blocklog)
581 ((((__uint64_t)(b)) + (mp)->m_blockmask) >> (mp)->m_sb.sb_blocklog)
582 #define XFS_B_TO_FSBT(mp,b) (((__uint64_t)(b)) >> (mp)->m_sb.sb_blocklog)
767 (xfs_sb_version_hascrc(&((mp)->m_sb)) ? \
777 (((mp)->m_sb.sb_sectsize - \
778 (xfs_sb_version_hascrc(&((mp)->m_sb)) ? \
794 (((xfs_fsblock_t)(agno) << (mp)->m_sb.sb_agblklog) | (agbno))
796 ((xfs_agnumber_t)((fsbno) >> (mp)->m_sb.sb_agblklog))
798 ((xfs_agblock_t)((fsbno) & xfs_mask32lo((mp)->m_sb.sb_agblklog)))
801 (xfs_fsblock_t)(agno) * (mp)->m_sb.sb_agblocks + (agbno)))
[all …]
Dxfs_attr_remote.c55 if (xfs_sb_version_hascrc(&mp->m_sb)) { in xfs_attr3_rmt_blocks()
56 int buflen = XFS_ATTR3_RMT_BUF_SPACE(mp, mp->m_sb.sb_blocksize); in xfs_attr3_rmt_blocks()
99 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_attr3_rmt_verify()
103 if (!uuid_equal(&rmt->rm_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_attr3_rmt_verify()
129 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_attr3_rmt_read_verify()
168 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_attr3_rmt_write_verify()
220 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_attr3_rmt_hdr_set()
226 uuid_copy(&rmt->rm_uuid, &mp->m_sb.sb_meta_uuid); in xfs_attr3_rmt_hdr_set()
270 if (xfs_sb_version_hascrc(&mp->m_sb)) { in xfs_attr_rmtval_copyout()
Dxfs_alloc_btree.c296 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_allocbt_verify()
298 if (!uuid_equal(&block->bb_u.s.bb_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_allocbt_verify()
314 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_allocbt_verify()
316 if (!uuid_equal(&block->bb_u.s.bb_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_allocbt_verify()
341 (be32_to_cpu(block->bb_u.s.bb_leftsib) >= mp->m_sb.sb_agblocks && in xfs_allocbt_verify()
345 (be32_to_cpu(block->bb_u.s.bb_rightsib) >= mp->m_sb.sb_agblocks && in xfs_allocbt_verify()
471 cur->bc_blocklog = mp->m_sb.sb_blocklog; in xfs_allocbt_init_cursor()
484 if (xfs_sb_version_hascrc(&mp->m_sb)) in xfs_allocbt_init_cursor()
Dxfs_log_rlimit.c109 if (xfs_sb_version_haslogv2(&mp->m_sb) && mp->m_sb.sb_logsunit > 1) in xfs_log_calc_minimum_size()
110 lsunit = BTOBB(mp->m_sb.sb_logsunit); in xfs_log_calc_minimum_size()
Dxfs_ialloc_btree.c170 if (xfs_sb_version_hassparseinodes(&cur->bc_mp->m_sb)) { in xfs_inobt_init_rec_from_cur()
240 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_inobt_verify()
242 if (!uuid_equal(&block->bb_u.s.bb_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_inobt_verify()
266 (be32_to_cpu(block->bb_u.s.bb_leftsib) >= mp->m_sb.sb_agblocks && in xfs_inobt_verify()
270 (be32_to_cpu(block->bb_u.s.bb_rightsib) >= mp->m_sb.sb_agblocks && in xfs_inobt_verify()
405 cur->bc_blocklog = mp->m_sb.sb_blocklog; in xfs_inobt_init_cursor()
407 if (xfs_sb_version_hascrc(&mp->m_sb)) in xfs_inobt_init_cursor()
Dxfs_ialloc.h43 if (mp->m_sb.sb_blocksize >= mp->m_inode_cluster_size) in xfs_icluster_size_fsb()
45 return mp->m_inode_cluster_size >> mp->m_sb.sb_blocklog; in xfs_icluster_size_fsb()
54 return xfs_buf_offset(b, o << (mp)->m_sb.sb_inodelog); in xfs_make_iptr()
Dxfs_dquot_buf.c165 if (xfs_sb_version_hascrc(&mp->m_sb)) { in xfs_dqcheck()
166 uuid_copy(&d->dd_uuid, &mp->m_sb.sb_meta_uuid); in xfs_dqcheck()
183 if (!xfs_sb_version_hascrc(&mp->m_sb)) in xfs_dquot_buf_verify_crc()
200 if (!uuid_equal(&d->dd_uuid, &mp->m_sb.sb_meta_uuid)) in xfs_dquot_buf_verify_crc()

123