Lines Matching refs:segbuf

392 	struct nilfs_segment_buffer *segbuf = sci->sc_curseg;  in nilfs_segctor_map_segsum_entry()  local
399 &segbuf->sb_segsum_buffers)); in nilfs_segctor_map_segsum_entry()
413 struct nilfs_segment_buffer *segbuf = sci->sc_curseg; in nilfs_segctor_reset_segment_buffer() local
421 err = nilfs_segbuf_reset(segbuf, flags, sci->sc_seg_ctime, sci->sc_cno); in nilfs_segctor_reset_segment_buffer()
425 sumbh = NILFS_SEGBUF_FIRST_BH(&segbuf->sb_segsum_buffers); in nilfs_segctor_reset_segment_buffer()
426 sumbytes = segbuf->sb_sum.sumbytes; in nilfs_segctor_reset_segment_buffer()
447 struct nilfs_segment_buffer *segbuf = sci->sc_curseg; in nilfs_segctor_add_super_root() local
450 if (segbuf->sb_sum.nblocks >= segbuf->sb_rest_blocks) { in nilfs_segctor_add_super_root()
454 segbuf = sci->sc_curseg; in nilfs_segctor_add_super_root()
456 err = nilfs_segbuf_extend_payload(segbuf, &segbuf->sb_super_root); in nilfs_segctor_add_super_root()
458 segbuf->sb_sum.flags |= NILFS_SS_SR; in nilfs_segctor_add_super_root()
496 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_end_finfo() local
518 segbuf = sci->sc_curseg; in nilfs_segctor_end_finfo()
519 segbuf->sb_sum.sumbytes = sci->sc_binfo_ptr.offset + in nilfs_segctor_end_finfo()
520 sci->sc_super->s_blocksize * (segbuf->sb_sum.nsumblk - 1); in nilfs_segctor_end_finfo()
530 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_add_file_block() local
534 segbuf = sci->sc_curseg; in nilfs_segctor_add_file_block()
537 if (segbuf->sb_sum.nblocks + required + 1 > segbuf->sb_rest_blocks) { in nilfs_segctor_add_file_block()
545 err = nilfs_segbuf_extend_segsum(segbuf); in nilfs_segctor_add_file_block()
554 nilfs_segbuf_add_file_buffer(segbuf, bh); in nilfs_segctor_add_file_block()
1276 struct nilfs_segment_buffer *segbuf, *prev; in nilfs_segctor_begin_construction() local
1280 segbuf = nilfs_segbuf_new(sci->sc_super); in nilfs_segctor_begin_construction()
1281 if (unlikely(!segbuf)) in nilfs_segctor_begin_construction()
1285 nilfs_segbuf_map(segbuf, nilfs->ns_segnum, in nilfs_segctor_begin_construction()
1287 if (segbuf->sb_rest_blocks < NILFS_PSEG_MIN_BLOCKS) { in nilfs_segctor_begin_construction()
1289 nilfs_segbuf_map(segbuf, nilfs->ns_segnum, 0, nilfs); in nilfs_segctor_begin_construction()
1292 segbuf->sb_sum.seg_seq = nilfs->ns_seg_seq; in nilfs_segctor_begin_construction()
1301 nilfs_segbuf_map_cont(segbuf, prev); in nilfs_segctor_begin_construction()
1302 segbuf->sb_sum.seg_seq = prev->sb_sum.seg_seq; in nilfs_segctor_begin_construction()
1305 if (segbuf->sb_rest_blocks < NILFS_PSEG_MIN_BLOCKS) { in nilfs_segctor_begin_construction()
1306 nilfs_segbuf_map(segbuf, prev->sb_nextnum, 0, nilfs); in nilfs_segctor_begin_construction()
1307 segbuf->sb_sum.seg_seq++; in nilfs_segctor_begin_construction()
1312 err = nilfs_sufile_mark_dirty(nilfs->ns_sufile, segbuf->sb_segnum); in nilfs_segctor_begin_construction()
1321 nilfs_segbuf_set_next_segnum(segbuf, nextnum, nilfs); in nilfs_segctor_begin_construction()
1324 list_add_tail(&segbuf->sb_list, &sci->sc_segbufs); in nilfs_segctor_begin_construction()
1325 sci->sc_segbuf_nblocks = segbuf->sb_rest_blocks; in nilfs_segctor_begin_construction()
1329 nilfs_segbuf_free(segbuf); in nilfs_segctor_begin_construction()
1336 struct nilfs_segment_buffer *segbuf, *prev; in nilfs_segctor_extend_segments() local
1356 segbuf = nilfs_segbuf_new(sci->sc_super); in nilfs_segctor_extend_segments()
1357 if (unlikely(!segbuf)) in nilfs_segctor_extend_segments()
1361 nilfs_segbuf_map(segbuf, prev->sb_nextnum, 0, nilfs); in nilfs_segctor_extend_segments()
1362 sci->sc_segbuf_nblocks += segbuf->sb_rest_blocks; in nilfs_segctor_extend_segments()
1369 segbuf->sb_sum.seg_seq = prev->sb_sum.seg_seq + 1; in nilfs_segctor_extend_segments()
1370 nilfs_segbuf_set_next_segnum(segbuf, nextnextnum, nilfs); in nilfs_segctor_extend_segments()
1372 list_add_tail(&segbuf->sb_list, &list); in nilfs_segctor_extend_segments()
1373 prev = segbuf; in nilfs_segctor_extend_segments()
1379 nilfs_segbuf_free(segbuf); in nilfs_segctor_extend_segments()
1381 list_for_each_entry(segbuf, &list, sb_list) { in nilfs_segctor_extend_segments()
1382 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_segctor_extend_segments()
1392 struct nilfs_segment_buffer *segbuf, *prev; in nilfs_free_incomplete_logs() local
1396 segbuf = NILFS_FIRST_SEGBUF(logs); in nilfs_free_incomplete_logs()
1397 if (nilfs->ns_nextnum != segbuf->sb_nextnum) { in nilfs_free_incomplete_logs()
1398 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_free_incomplete_logs()
1401 if (atomic_read(&segbuf->sb_err)) { in nilfs_free_incomplete_logs()
1403 if (segbuf->sb_pseg_start != segbuf->sb_fseg_start) in nilfs_free_incomplete_logs()
1408 nilfs_terminate_segment(nilfs, segbuf->sb_fseg_start, in nilfs_free_incomplete_logs()
1409 segbuf->sb_fseg_end); in nilfs_free_incomplete_logs()
1414 prev = segbuf; in nilfs_free_incomplete_logs()
1415 list_for_each_entry_continue(segbuf, logs, sb_list) { in nilfs_free_incomplete_logs()
1416 if (prev->sb_nextnum != segbuf->sb_nextnum) { in nilfs_free_incomplete_logs()
1417 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_free_incomplete_logs()
1420 if (atomic_read(&segbuf->sb_err) && in nilfs_free_incomplete_logs()
1421 segbuf->sb_segnum != nilfs->ns_nextnum) in nilfs_free_incomplete_logs()
1423 nilfs_sufile_set_error(sufile, segbuf->sb_segnum); in nilfs_free_incomplete_logs()
1424 prev = segbuf; in nilfs_free_incomplete_logs()
1431 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_update_segusage() local
1435 list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_update_segusage()
1436 live_blocks = segbuf->sb_sum.nblocks + in nilfs_segctor_update_segusage()
1437 (segbuf->sb_pseg_start - segbuf->sb_fseg_start); in nilfs_segctor_update_segusage()
1438 ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum, in nilfs_segctor_update_segusage()
1447 struct nilfs_segment_buffer *segbuf; in nilfs_cancel_segusage() local
1450 segbuf = NILFS_FIRST_SEGBUF(logs); in nilfs_cancel_segusage()
1451 ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum, in nilfs_cancel_segusage()
1452 segbuf->sb_pseg_start - in nilfs_cancel_segusage()
1453 segbuf->sb_fseg_start, 0); in nilfs_cancel_segusage()
1456 list_for_each_entry_continue(segbuf, logs, sb_list) { in nilfs_cancel_segusage()
1457 ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum, in nilfs_cancel_segusage()
1467 struct nilfs_segment_buffer *segbuf = last; in nilfs_segctor_truncate_segments() local
1470 list_for_each_entry_continue(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_truncate_segments()
1471 sci->sc_segbuf_nblocks -= segbuf->sb_rest_blocks; in nilfs_segctor_truncate_segments()
1472 ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum); in nilfs_segctor_truncate_segments()
1543 struct nilfs_segment_buffer *segbuf, in nilfs_segctor_update_payload_blocknr() argument
1548 unsigned long nfinfo = segbuf->sb_sum.nfinfo; in nilfs_segctor_update_payload_blocknr()
1561 blocknr = segbuf->sb_pseg_start + segbuf->sb_sum.nsumblk; in nilfs_segctor_update_payload_blocknr()
1562 ssp.bh = NILFS_SEGBUF_FIRST_BH(&segbuf->sb_segsum_buffers); in nilfs_segctor_update_payload_blocknr()
1565 list_for_each_entry(bh, &segbuf->sb_payload_buffers, b_assoc_buffers) { in nilfs_segctor_update_payload_blocknr()
1566 if (bh == segbuf->sb_super_root) in nilfs_segctor_update_payload_blocknr()
1616 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_assign() local
1619 list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_assign()
1620 err = nilfs_segctor_update_payload_blocknr(sci, segbuf, mode); in nilfs_segctor_assign()
1623 nilfs_segbuf_fill_in_segsum(segbuf); in nilfs_segctor_assign()
1645 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_prepare_write() local
1648 list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) { in nilfs_segctor_prepare_write()
1651 list_for_each_entry(bh, &segbuf->sb_segsum_buffers, in nilfs_segctor_prepare_write()
1664 list_for_each_entry(bh, &segbuf->sb_payload_buffers, in nilfs_segctor_prepare_write()
1667 if (bh == segbuf->sb_super_root) { in nilfs_segctor_prepare_write()
1742 struct nilfs_segment_buffer *segbuf; in nilfs_abort_logs() local
1749 list_for_each_entry(segbuf, logs, sb_list) { in nilfs_abort_logs()
1750 list_for_each_entry(bh, &segbuf->sb_segsum_buffers, in nilfs_abort_logs()
1759 list_for_each_entry(bh, &segbuf->sb_payload_buffers, in nilfs_abort_logs()
1762 if (bh == segbuf->sb_super_root) { in nilfs_abort_logs()
1807 struct nilfs_segment_buffer *segbuf) in nilfs_set_next_segment() argument
1809 nilfs->ns_segnum = segbuf->sb_segnum; in nilfs_set_next_segment()
1810 nilfs->ns_nextnum = segbuf->sb_nextnum; in nilfs_set_next_segment()
1811 nilfs->ns_pseg_offset = segbuf->sb_pseg_start - segbuf->sb_fseg_start in nilfs_set_next_segment()
1812 + segbuf->sb_sum.nblocks; in nilfs_set_next_segment()
1813 nilfs->ns_seg_seq = segbuf->sb_sum.seg_seq; in nilfs_set_next_segment()
1814 nilfs->ns_ctime = segbuf->sb_sum.ctime; in nilfs_set_next_segment()
1819 struct nilfs_segment_buffer *segbuf; in nilfs_segctor_complete_write() local
1824 list_for_each_entry(segbuf, &sci->sc_write_logs, sb_list) { in nilfs_segctor_complete_write()
1827 list_for_each_entry(bh, &segbuf->sb_segsum_buffers, in nilfs_segctor_complete_write()
1848 list_for_each_entry(bh, &segbuf->sb_payload_buffers, in nilfs_segctor_complete_write()
1857 if (bh == segbuf->sb_super_root) { in nilfs_segctor_complete_write()
1871 if (!nilfs_segbuf_simplex(segbuf)) { in nilfs_segctor_complete_write()
1872 if (segbuf->sb_sum.flags & NILFS_SS_LOGBGN) { in nilfs_segctor_complete_write()
1876 if (segbuf->sb_sum.flags & NILFS_SS_LOGEND) in nilfs_segctor_complete_write()
1898 segbuf = NILFS_LAST_SEGBUF(&sci->sc_write_logs); in nilfs_segctor_complete_write()
1899 nilfs_set_next_segment(nilfs, segbuf); in nilfs_segctor_complete_write()
1903 nilfs_set_last_segment(nilfs, segbuf->sb_pseg_start, in nilfs_segctor_complete_write()
1904 segbuf->sb_sum.seg_seq, nilfs->ns_cno++); in nilfs_segctor_complete_write()