Lines Matching refs:sdp
238 static void find_metapath(const struct gfs2_sbd *sdp, u64 block, in find_metapath() argument
245 mp->mp_list[i] = do_div(block, sdp->sd_inptrs); in find_metapath()
393 static sector_t metapath_to_block(struct gfs2_sbd *sdp, struct metapath *mp) in metapath_to_block() argument
401 factor *= sdp->sd_inptrs; in metapath_to_block()
474 struct gfs2_sbd *sdp = GFS2_SB(inode);
487 factor *= sdp->sd_inptrs;
497 ptrs = (hgt >= 1 ? sdp->sd_inptrs : sdp->sd_diptrs) - start;
527 factor *= sdp->sd_inptrs;
532 if (mp->mp_list[hgt] >= sdp->sd_inptrs)
535 if (mp->mp_list[hgt] >= sdp->sd_diptrs)
546 do_div(factor, sdp->sd_inptrs);
667 struct gfs2_sbd *sdp = GFS2_SB(inode); in __gfs2_iomap_alloc() local
715 gfs2_trans_remove_revoke(sdp, bn, n); in __gfs2_iomap_alloc()
800 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_alloc_size() local
813 sdp->sd_inptrs : sdp->sd_diptrs; in gfs2_alloc_size()
847 struct gfs2_sbd *sdp = GFS2_SB(inode); in __gfs2_iomap_get() local
903 while ((lblock + 1) * sdp->sd_sb.sb_bsize > sdp->sd_heightsize[height]) in __gfs2_iomap_get()
905 find_metapath(sdp, lblock, mp, height); in __gfs2_iomap_get()
967 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_write_lock() local
974 if (&ip->i_inode == sdp->sd_rindex) { in gfs2_write_lock()
975 struct gfs2_inode *m_ip = GFS2_I(sdp->sd_statfs_inode); in gfs2_write_lock()
994 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_write_unlock() local
996 if (&ip->i_inode == sdp->sd_rindex) { in gfs2_write_unlock()
997 struct gfs2_inode *m_ip = GFS2_I(sdp->sd_statfs_inode); in gfs2_write_unlock()
1008 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_iomap_page_prepare() local
1012 return gfs2_trans_begin(sdp, RES_DINODE + blocks, 0); in gfs2_iomap_page_prepare()
1020 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_iomap_page_done() local
1028 gfs2_trans_end(sdp); in gfs2_iomap_page_done()
1042 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_iomap_begin_write() local
1071 if (inode == sdp->sd_rindex) in gfs2_iomap_begin_write()
1075 ret = gfs2_trans_begin(sdp, rblocks, in gfs2_iomap_begin_write()
1094 gfs2_trans_end(sdp); in gfs2_iomap_begin_write()
1105 gfs2_trans_end(sdp); in gfs2_iomap_begin_write()
1113 gfs2_trans_end(sdp); in gfs2_iomap_begin_write()
1183 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_iomap_end() local
1201 if (inode == sdp->sd_rindex) in gfs2_iomap_end()
1368 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_journaled_truncate() local
1369 u64 max_chunk = GFS2_JTRUNC_REVOKES * sdp->sd_vfs->s_blocksize; in gfs2_journaled_truncate()
1392 gfs2_trans_end(sdp); in gfs2_journaled_truncate()
1393 error = gfs2_trans_begin(sdp, RES_DINODE, GFS2_JTRUNC_REVOKES); in gfs2_journaled_truncate()
1404 struct gfs2_sbd *sdp = GFS2_SB(inode); in trunc_start() local
1421 error = gfs2_trans_begin(sdp, RES_DINODE + RES_JDATA, GFS2_JTRUNC_REVOKES); in trunc_start()
1423 error = gfs2_trans_begin(sdp, RES_DINODE, 0); in trunc_start()
1450 gfs2_trans_end(sdp); in trunc_start()
1504 struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); in sweep_bh_for_rgrps() local
1518 gfs2_assert_withdraw(sdp, in sweep_bh_for_rgrps()
1536 rgd = gfs2_blk2rgrpd(sdp, bn, true); in sweep_bh_for_rgrps()
1563 if (isize_blks > atomic_read(&sdp->sd_log_thresh2)) in sweep_bh_for_rgrps()
1565 atomic_read(&sdp->sd_log_thresh2); in sweep_bh_for_rgrps()
1572 revokes += sdp->sd_inptrs; in sweep_bh_for_rgrps()
1573 ret = gfs2_trans_begin(sdp, jblocks_rqsted, revokes); in sweep_bh_for_rgrps()
1581 RES_QUOTA >= atomic_read(&sdp->sd_log_thresh2)) { in sweep_bh_for_rgrps()
1642 gfs2_trans_end(sdp); in sweep_bh_for_rgrps()
1672 static bool find_nonnull_ptr(struct gfs2_sbd *sdp, struct metapath *mp, in find_nonnull_ptr() argument
1729 static inline bool walk_done(struct gfs2_sbd *sdp, in walk_done() argument
1741 end = (height > 0) ? sdp->sd_inptrs : sdp->sd_diptrs; in walk_done()
1763 struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); in punch_hole() local
1764 u64 maxsize = sdp->sd_heightsize[ip->i_height]; in punch_hole()
1768 unsigned int bsize_shift = sdp->sd_sb.sb_bsize_shift; in punch_hole()
1816 find_metapath(sdp, lend, &mp, ip->i_height); in punch_hole()
1827 find_metapath(sdp, lblock, &mp, ip->i_height); in punch_hole()
1857 ret = gfs2_rindex_update(sdp); in punch_hole()
1874 gfs2_assert_withdraw(sdp, bh); in punch_hole()
1875 if (gfs2_assert_withdraw(sdp, in punch_hole()
1877 fs_emerg(sdp, "inode %llu, block:%llu, i_h:%u," in punch_hole()
1884 if (gfs2_metatype_check(sdp, bh, in punch_hole()
1936 if (walk_done(sdp, &mp, mp_h, end_list, end_aligned)) in punch_hole()
1941 if (find_nonnull_ptr(sdp, &mp, mp_h, end_list, end_aligned)) { in punch_hole()
1984 if (find_nonnull_ptr(sdp, &mp, mp_h, end_list, end_aligned)) in punch_hole()
1994 ret = gfs2_trans_begin(sdp, RES_DINODE + RES_STATFS + in punch_hole()
2000 gfs2_statfs_change(sdp, 0, +btotal, 0); in punch_hole()
2007 gfs2_trans_end(sdp); in punch_hole()
2015 gfs2_trans_end(sdp); in punch_hole()
2026 struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); in trunc_end() local
2030 error = gfs2_trans_begin(sdp, RES_DINODE, 0); in trunc_end()
2055 gfs2_trans_end(sdp); in trunc_end()
2119 struct gfs2_sbd *sdp = GFS2_SB(inode); in do_grow() local
2136 error = gfs2_trans_begin(sdp, RES_DINODE + RES_STATFS + RES_RG_BIT + in do_grow()
2139 (sdp->sd_args.ar_quota == GFS2_QUOTA_OFF ? in do_grow()
2161 gfs2_trans_end(sdp); in do_grow()
2296 int gfs2_map_journal_extents(struct gfs2_sbd *sdp, struct gfs2_jdesc *jd) in gfs2_map_journal_extents() argument
2302 unsigned int shift = sdp->sd_sb.sb_bsize_shift; in gfs2_map_journal_extents()
2328 fs_info(sdp, "journal %d mapped with %u extents in %lldms\n", jd->jd_jid, in gfs2_map_journal_extents()
2333 fs_warn(sdp, "error %d mapping journal %u at offset %llu (extent %u)\n", in gfs2_map_journal_extents()
2337 fs_warn(sdp, "bmap=%d lblock=%llu block=%llu, state=0x%08lx, size=%llu\n", in gfs2_map_journal_extents()
2356 struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); in gfs2_write_alloc_required() local
2371 shift = sdp->sd_sb.sb_bsize_shift; in gfs2_write_alloc_required()
2373 end_of_file = (i_size_read(&ip->i_inode) + sdp->sd_sb.sb_bsize - 1) >> shift; in gfs2_write_alloc_required()
2375 lblock_stop = (offset + len + sdp->sd_sb.sb_bsize - 1) >> shift; in gfs2_write_alloc_required()
2376 if (lblock_stop > end_of_file && ip != GFS2_I(sdp->sd_rindex)) in gfs2_write_alloc_required()
2417 struct gfs2_sbd *sdp = GFS2_SB(inode); in gfs2_journaled_truncate_range() local
2418 loff_t max_chunk = GFS2_JTRUNC_REVOKES * sdp->sd_vfs->s_blocksize; in gfs2_journaled_truncate_range()
2442 gfs2_trans_end(sdp); in gfs2_journaled_truncate_range()
2443 error = gfs2_trans_begin(sdp, RES_DINODE, GFS2_JTRUNC_REVOKES); in gfs2_journaled_truncate_range()
2454 struct gfs2_sbd *sdp = GFS2_SB(inode); in __gfs2_punch_hole() local
2489 error = gfs2_trans_begin(sdp, RES_DINODE + 2 * RES_JDATA, in __gfs2_punch_hole()
2492 error = gfs2_trans_begin(sdp, RES_DINODE, 0); in __gfs2_punch_hole()
2512 gfs2_trans_end(sdp); in __gfs2_punch_hole()
2519 gfs2_trans_end(sdp); in __gfs2_punch_hole()