Lines Matching refs:segbuf

341 	struct nilfs_segment_buffer *segbuf = sci->sc_curseg;  in nilfs_segctor_map_segsum_entry()  local
348 &segbuf->sb_segsum_buffers)); in nilfs_segctor_map_segsum_entry()
362 struct nilfs_segment_buffer *segbuf = sci->sc_curseg; in nilfs_segctor_reset_segment_buffer() local
370 err = nilfs_segbuf_reset(segbuf, flags, sci->sc_seg_ctime, sci->sc_cno); in nilfs_segctor_reset_segment_buffer()
374 sumbh = NILFS_SEGBUF_FIRST_BH(&segbuf->sb_segsum_buffers); in nilfs_segctor_reset_segment_buffer()
375 sumbytes = segbuf->sb_sum.sumbytes; in nilfs_segctor_reset_segment_buffer()
394 struct nilfs_segment_buffer *segbuf = sci->sc_curseg; in nilfs_segctor_add_super_root() local
397 if (segbuf->sb_sum.nblocks >= segbuf->sb_rest_blocks) { in nilfs_segctor_add_super_root()
401 segbuf = sci->sc_curseg; in nilfs_segctor_add_super_root()
403 err = nilfs_segbuf_extend_payload(segbuf, &segbuf->sb_super_root); in nilfs_segctor_add_super_root()
405 segbuf->sb_sum.flags |= NILFS_SS_SR; in nilfs_segctor_add_super_root()
443 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_end_finfo() local
465 segbuf = sci->sc_curseg; in nilfs_segctor_end_finfo()
466 segbuf->sb_sum.sumbytes = sci->sc_binfo_ptr.offset + in nilfs_segctor_end_finfo()
467 sci->sc_super->s_blocksize * (segbuf->sb_sum.nsumblk - 1); in nilfs_segctor_end_finfo()
477 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_add_file_block() local
481 segbuf = sci->sc_curseg; in nilfs_segctor_add_file_block()
484 if (segbuf->sb_sum.nblocks + required + 1 > segbuf->sb_rest_blocks) { in nilfs_segctor_add_file_block()
492 err = nilfs_segbuf_extend_segsum(segbuf); in nilfs_segctor_add_file_block()
501 nilfs_segbuf_add_file_buffer(segbuf, bh); in nilfs_segctor_add_file_block()
1220 struct nilfs_segment_buffer *segbuf, *prev; in nilfs_segctor_begin_construction() local
1224 segbuf = nilfs_segbuf_new(sci->sc_super); in nilfs_segctor_begin_construction()
1225 if (unlikely(!segbuf)) in nilfs_segctor_begin_construction()
1229 nilfs_segbuf_map(segbuf, nilfs->ns_segnum, in nilfs_segctor_begin_construction()
1231 if (segbuf->sb_rest_blocks < NILFS_PSEG_MIN_BLOCKS) { in nilfs_segctor_begin_construction()
1233 nilfs_segbuf_map(segbuf, nilfs->ns_segnum, 0, nilfs); in nilfs_segctor_begin_construction()
1236 segbuf->sb_sum.seg_seq = nilfs->ns_seg_seq; in nilfs_segctor_begin_construction()
1245 nilfs_segbuf_map_cont(segbuf, prev); in nilfs_segctor_begin_construction()
1246 segbuf->sb_sum.seg_seq = prev->sb_sum.seg_seq; in nilfs_segctor_begin_construction()
1249 if (segbuf->sb_rest_blocks < NILFS_PSEG_MIN_BLOCKS) { in nilfs_segctor_begin_construction()
1250 nilfs_segbuf_map(segbuf, prev->sb_nextnum, 0, nilfs); in nilfs_segctor_begin_construction()
1251 segbuf->sb_sum.seg_seq++; in nilfs_segctor_begin_construction()
1256 err = nilfs_sufile_mark_dirty(nilfs->ns_sufile, segbuf->sb_segnum); in nilfs_segctor_begin_construction()
1265 nilfs_segbuf_set_next_segnum(segbuf, nextnum, nilfs); in nilfs_segctor_begin_construction()
1268 list_add_tail(&segbuf->sb_list, &sci->sc_segbufs); in nilfs_segctor_begin_construction()
1269 sci->sc_segbuf_nblocks = segbuf->sb_rest_blocks; in nilfs_segctor_begin_construction()
1273 nilfs_segbuf_free(segbuf); in nilfs_segctor_begin_construction()
1280 struct nilfs_segment_buffer *segbuf, *prev; in nilfs_segctor_extend_segments() local
1300 segbuf = nilfs_segbuf_new(sci->sc_super); in nilfs_segctor_extend_segments()
1301 if (unlikely(!segbuf)) in nilfs_segctor_extend_segments()
1305 nilfs_segbuf_map(segbuf, prev->sb_nextnum, 0, nilfs); in nilfs_segctor_extend_segments()
1306 sci->sc_segbuf_nblocks += segbuf->sb_rest_blocks; in nilfs_segctor_extend_segments()
1313 segbuf->sb_sum.seg_seq = prev->sb_sum.seg_seq + 1; in nilfs_segctor_extend_segments()
1314 nilfs_segbuf_set_next_segnum(segbuf, nextnextnum, nilfs); in nilfs_segctor_extend_segments()
1316 list_add_tail(&segbuf->sb_list, &list); in nilfs_segctor_extend_segments()
1317 prev = segbuf; in nilfs_segctor_extend_segments()
1323 nilfs_segbuf_free(segbuf); in nilfs_segctor_extend_segments()
1325 list_for_each_entry(segbuf, &list, sb_list) { in nilfs_segctor_extend_segments()
1326 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_segctor_extend_segments()
1336 struct nilfs_segment_buffer *segbuf, *prev; in nilfs_free_incomplete_logs() local
1340 segbuf = NILFS_FIRST_SEGBUF(logs); in nilfs_free_incomplete_logs()
1341 if (nilfs->ns_nextnum != segbuf->sb_nextnum) { in nilfs_free_incomplete_logs()
1342 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_free_incomplete_logs()
1345 if (atomic_read(&segbuf->sb_err)) { in nilfs_free_incomplete_logs()
1347 if (segbuf->sb_pseg_start != segbuf->sb_fseg_start) in nilfs_free_incomplete_logs()
1350 nilfs_terminate_segment(nilfs, segbuf->sb_fseg_start, in nilfs_free_incomplete_logs()
1351 segbuf->sb_fseg_end); in nilfs_free_incomplete_logs()
1356 prev = segbuf; in nilfs_free_incomplete_logs()
1357 list_for_each_entry_continue(segbuf, logs, sb_list) { in nilfs_free_incomplete_logs()
1358 if (prev->sb_nextnum != segbuf->sb_nextnum) { in nilfs_free_incomplete_logs()
1359 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_free_incomplete_logs()
1362 if (atomic_read(&segbuf->sb_err) && in nilfs_free_incomplete_logs()
1363 segbuf->sb_segnum != nilfs->ns_nextnum) in nilfs_free_incomplete_logs()
1365 nilfs_sufile_set_error(sufile, segbuf->sb_segnum); in nilfs_free_incomplete_logs()
1366 prev = segbuf; in nilfs_free_incomplete_logs()
1373 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_update_segusage() local
1377 list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_update_segusage()
1378 live_blocks = segbuf->sb_sum.nblocks + in nilfs_segctor_update_segusage()
1379 (segbuf->sb_pseg_start - segbuf->sb_fseg_start); in nilfs_segctor_update_segusage()
1380 ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum, in nilfs_segctor_update_segusage()
1389 struct nilfs_segment_buffer *segbuf; in nilfs_cancel_segusage() local
1392 segbuf = NILFS_FIRST_SEGBUF(logs); in nilfs_cancel_segusage()
1393 ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum, in nilfs_cancel_segusage()
1394 segbuf->sb_pseg_start - in nilfs_cancel_segusage()
1395 segbuf->sb_fseg_start, 0); in nilfs_cancel_segusage()
1398 list_for_each_entry_continue(segbuf, logs, sb_list) { in nilfs_cancel_segusage()
1399 ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum, in nilfs_cancel_segusage()
1409 struct nilfs_segment_buffer *segbuf = last; in nilfs_segctor_truncate_segments() local
1412 list_for_each_entry_continue(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_truncate_segments()
1413 sci->sc_segbuf_nblocks -= segbuf->sb_rest_blocks; in nilfs_segctor_truncate_segments()
1414 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_segctor_truncate_segments()
1484 struct nilfs_segment_buffer *segbuf, in nilfs_segctor_update_payload_blocknr() argument
1489 unsigned long nfinfo = segbuf->sb_sum.nfinfo; in nilfs_segctor_update_payload_blocknr()
1502 blocknr = segbuf->sb_pseg_start + segbuf->sb_sum.nsumblk; in nilfs_segctor_update_payload_blocknr()
1503 ssp.bh = NILFS_SEGBUF_FIRST_BH(&segbuf->sb_segsum_buffers); in nilfs_segctor_update_payload_blocknr()
1506 list_for_each_entry(bh, &segbuf->sb_payload_buffers, b_assoc_buffers) { in nilfs_segctor_update_payload_blocknr()
1507 if (bh == segbuf->sb_super_root) in nilfs_segctor_update_payload_blocknr()
1557 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_assign() local
1560 list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_assign()
1561 err = nilfs_segctor_update_payload_blocknr(sci, segbuf, mode); in nilfs_segctor_assign()
1564 nilfs_segbuf_fill_in_segsum(segbuf); in nilfs_segctor_assign()
1584 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_prepare_write() local
1587 list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_prepare_write()
1590 list_for_each_entry(bh, &segbuf->sb_segsum_buffers, in nilfs_segctor_prepare_write()
1603 list_for_each_entry(bh, &segbuf->sb_payload_buffers, in nilfs_segctor_prepare_write()
1606 if (bh == segbuf->sb_super_root) { in nilfs_segctor_prepare_write()
1681 struct nilfs_segment_buffer *segbuf; in nilfs_abort_logs() local
1688 list_for_each_entry(segbuf, logs, sb_list) { in nilfs_abort_logs()
1689 list_for_each_entry(bh, &segbuf->sb_segsum_buffers, in nilfs_abort_logs()
1698 list_for_each_entry(bh, &segbuf->sb_payload_buffers, in nilfs_abort_logs()
1701 if (bh == segbuf->sb_super_root) { in nilfs_abort_logs()
1746 struct nilfs_segment_buffer *segbuf) in nilfs_set_next_segment() argument
1748 nilfs->ns_segnum = segbuf->sb_segnum; in nilfs_set_next_segment()
1749 nilfs->ns_nextnum = segbuf->sb_nextnum; in nilfs_set_next_segment()
1750 nilfs->ns_pseg_offset = segbuf->sb_pseg_start - segbuf->sb_fseg_start in nilfs_set_next_segment()
1751 + segbuf->sb_sum.nblocks; in nilfs_set_next_segment()
1752 nilfs->ns_seg_seq = segbuf->sb_sum.seg_seq; in nilfs_set_next_segment()
1753 nilfs->ns_ctime = segbuf->sb_sum.ctime; in nilfs_set_next_segment()
1758 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_complete_write() local
1763 list_for_each_entry(segbuf, &sci->sc_write_logs, sb_list) { in nilfs_segctor_complete_write()
1766 list_for_each_entry(bh, &segbuf->sb_segsum_buffers, in nilfs_segctor_complete_write()
1787 list_for_each_entry(bh, &segbuf->sb_payload_buffers, in nilfs_segctor_complete_write()
1796 if (bh == segbuf->sb_super_root) { in nilfs_segctor_complete_write()
1810 if (!nilfs_segbuf_simplex(segbuf)) { in nilfs_segctor_complete_write()
1811 if (segbuf->sb_sum.flags & NILFS_SS_LOGBGN) { in nilfs_segctor_complete_write()
1815 if (segbuf->sb_sum.flags & NILFS_SS_LOGEND) in nilfs_segctor_complete_write()
1837 segbuf = NILFS_LAST_SEGBUF(&sci->sc_write_logs); in nilfs_segctor_complete_write()
1838 nilfs_set_next_segment(nilfs, segbuf); in nilfs_segctor_complete_write()
1842 nilfs_set_last_segment(nilfs, segbuf->sb_pseg_start, in nilfs_segctor_complete_write()
1843 segbuf->sb_sum.seg_seq, nilfs->ns_cno++); in nilfs_segctor_complete_write()