segbuf             30 fs/nilfs2/segbuf.c static int nilfs_segbuf_write(struct nilfs_segment_buffer *segbuf,
segbuf             32 fs/nilfs2/segbuf.c static int nilfs_segbuf_wait(struct nilfs_segment_buffer *segbuf);
segbuf             36 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *segbuf;
segbuf             38 fs/nilfs2/segbuf.c 	segbuf = kmem_cache_alloc(nilfs_segbuf_cachep, GFP_NOFS);
segbuf             39 fs/nilfs2/segbuf.c 	if (unlikely(!segbuf))
segbuf             42 fs/nilfs2/segbuf.c 	segbuf->sb_super = sb;
segbuf             43 fs/nilfs2/segbuf.c 	INIT_LIST_HEAD(&segbuf->sb_list);
segbuf             44 fs/nilfs2/segbuf.c 	INIT_LIST_HEAD(&segbuf->sb_segsum_buffers);
segbuf             45 fs/nilfs2/segbuf.c 	INIT_LIST_HEAD(&segbuf->sb_payload_buffers);
segbuf             46 fs/nilfs2/segbuf.c 	segbuf->sb_super_root = NULL;
segbuf             48 fs/nilfs2/segbuf.c 	init_completion(&segbuf->sb_bio_event);
segbuf             49 fs/nilfs2/segbuf.c 	atomic_set(&segbuf->sb_err, 0);
segbuf             50 fs/nilfs2/segbuf.c 	segbuf->sb_nbio = 0;
segbuf             52 fs/nilfs2/segbuf.c 	return segbuf;
segbuf             55 fs/nilfs2/segbuf.c void nilfs_segbuf_free(struct nilfs_segment_buffer *segbuf)
segbuf             57 fs/nilfs2/segbuf.c 	kmem_cache_free(nilfs_segbuf_cachep, segbuf);
segbuf             60 fs/nilfs2/segbuf.c void nilfs_segbuf_map(struct nilfs_segment_buffer *segbuf, __u64 segnum,
segbuf             63 fs/nilfs2/segbuf.c 	segbuf->sb_segnum = segnum;
segbuf             64 fs/nilfs2/segbuf.c 	nilfs_get_segment_range(nilfs, segnum, &segbuf->sb_fseg_start,
segbuf             65 fs/nilfs2/segbuf.c 				&segbuf->sb_fseg_end);
segbuf             67 fs/nilfs2/segbuf.c 	segbuf->sb_pseg_start = segbuf->sb_fseg_start + offset;
segbuf             68 fs/nilfs2/segbuf.c 	segbuf->sb_rest_blocks =
segbuf             69 fs/nilfs2/segbuf.c 		segbuf->sb_fseg_end - segbuf->sb_pseg_start + 1;
segbuf             77 fs/nilfs2/segbuf.c void nilfs_segbuf_map_cont(struct nilfs_segment_buffer *segbuf,
segbuf             80 fs/nilfs2/segbuf.c 	segbuf->sb_segnum = prev->sb_segnum;
segbuf             81 fs/nilfs2/segbuf.c 	segbuf->sb_fseg_start = prev->sb_fseg_start;
segbuf             82 fs/nilfs2/segbuf.c 	segbuf->sb_fseg_end = prev->sb_fseg_end;
segbuf             83 fs/nilfs2/segbuf.c 	segbuf->sb_pseg_start = prev->sb_pseg_start + prev->sb_sum.nblocks;
segbuf             84 fs/nilfs2/segbuf.c 	segbuf->sb_rest_blocks =
segbuf             85 fs/nilfs2/segbuf.c 		segbuf->sb_fseg_end - segbuf->sb_pseg_start + 1;
segbuf             88 fs/nilfs2/segbuf.c void nilfs_segbuf_set_next_segnum(struct nilfs_segment_buffer *segbuf,
segbuf             91 fs/nilfs2/segbuf.c 	segbuf->sb_nextnum = nextnum;
segbuf             92 fs/nilfs2/segbuf.c 	segbuf->sb_sum.next = nilfs_get_segment_start_blocknr(nilfs, nextnum);
segbuf             95 fs/nilfs2/segbuf.c int nilfs_segbuf_extend_segsum(struct nilfs_segment_buffer *segbuf)
segbuf             99 fs/nilfs2/segbuf.c 	bh = sb_getblk(segbuf->sb_super,
segbuf            100 fs/nilfs2/segbuf.c 		       segbuf->sb_pseg_start + segbuf->sb_sum.nsumblk);
segbuf            104 fs/nilfs2/segbuf.c 	nilfs_segbuf_add_segsum_buffer(segbuf, bh);
segbuf            108 fs/nilfs2/segbuf.c int nilfs_segbuf_extend_payload(struct nilfs_segment_buffer *segbuf,
segbuf            113 fs/nilfs2/segbuf.c 	bh = sb_getblk(segbuf->sb_super,
segbuf            114 fs/nilfs2/segbuf.c 		       segbuf->sb_pseg_start + segbuf->sb_sum.nblocks);
segbuf            118 fs/nilfs2/segbuf.c 	nilfs_segbuf_add_payload_buffer(segbuf, bh);
segbuf            123 fs/nilfs2/segbuf.c int nilfs_segbuf_reset(struct nilfs_segment_buffer *segbuf, unsigned int flags,
segbuf            128 fs/nilfs2/segbuf.c 	segbuf->sb_sum.nblocks = segbuf->sb_sum.nsumblk = 0;
segbuf            129 fs/nilfs2/segbuf.c 	err = nilfs_segbuf_extend_segsum(segbuf);
segbuf            133 fs/nilfs2/segbuf.c 	segbuf->sb_sum.flags = flags;
segbuf            134 fs/nilfs2/segbuf.c 	segbuf->sb_sum.sumbytes = sizeof(struct nilfs_segment_summary);
segbuf            135 fs/nilfs2/segbuf.c 	segbuf->sb_sum.nfinfo = segbuf->sb_sum.nfileblk = 0;
segbuf            136 fs/nilfs2/segbuf.c 	segbuf->sb_sum.ctime = ctime;
segbuf            137 fs/nilfs2/segbuf.c 	segbuf->sb_sum.cno = cno;
segbuf            144 fs/nilfs2/segbuf.c void nilfs_segbuf_fill_in_segsum(struct nilfs_segment_buffer *segbuf)
segbuf            149 fs/nilfs2/segbuf.c 	bh_sum = list_entry(segbuf->sb_segsum_buffers.next,
segbuf            155 fs/nilfs2/segbuf.c 	raw_sum->ss_flags    = cpu_to_le16(segbuf->sb_sum.flags);
segbuf            156 fs/nilfs2/segbuf.c 	raw_sum->ss_seq      = cpu_to_le64(segbuf->sb_sum.seg_seq);
segbuf            157 fs/nilfs2/segbuf.c 	raw_sum->ss_create   = cpu_to_le64(segbuf->sb_sum.ctime);
segbuf            158 fs/nilfs2/segbuf.c 	raw_sum->ss_next     = cpu_to_le64(segbuf->sb_sum.next);
segbuf            159 fs/nilfs2/segbuf.c 	raw_sum->ss_nblocks  = cpu_to_le32(segbuf->sb_sum.nblocks);
segbuf            160 fs/nilfs2/segbuf.c 	raw_sum->ss_nfinfo   = cpu_to_le32(segbuf->sb_sum.nfinfo);
segbuf            161 fs/nilfs2/segbuf.c 	raw_sum->ss_sumbytes = cpu_to_le32(segbuf->sb_sum.sumbytes);
segbuf            163 fs/nilfs2/segbuf.c 	raw_sum->ss_cno      = cpu_to_le64(segbuf->sb_sum.cno);
segbuf            170 fs/nilfs2/segbuf.c nilfs_segbuf_fill_in_segsum_crc(struct nilfs_segment_buffer *segbuf, u32 seed)
segbuf            174 fs/nilfs2/segbuf.c 	unsigned long size, bytes = segbuf->sb_sum.sumbytes;
segbuf            177 fs/nilfs2/segbuf.c 	bh = list_entry(segbuf->sb_segsum_buffers.next, struct buffer_head,
segbuf            188 fs/nilfs2/segbuf.c 	list_for_each_entry_continue(bh, &segbuf->sb_segsum_buffers,
segbuf            197 fs/nilfs2/segbuf.c static void nilfs_segbuf_fill_in_data_crc(struct nilfs_segment_buffer *segbuf,
segbuf            205 fs/nilfs2/segbuf.c 	bh = list_entry(segbuf->sb_segsum_buffers.next, struct buffer_head,
segbuf            212 fs/nilfs2/segbuf.c 	list_for_each_entry_continue(bh, &segbuf->sb_segsum_buffers,
segbuf            216 fs/nilfs2/segbuf.c 	list_for_each_entry(bh, &segbuf->sb_payload_buffers, b_assoc_buffers) {
segbuf            225 fs/nilfs2/segbuf.c nilfs_segbuf_fill_in_super_root_crc(struct nilfs_segment_buffer *segbuf,
segbuf            229 fs/nilfs2/segbuf.c 	struct the_nilfs *nilfs = segbuf->sb_super->s_fs_info;
segbuf            233 fs/nilfs2/segbuf.c 	raw_sr = (struct nilfs_super_root *)segbuf->sb_super_root->b_data;
segbuf            251 fs/nilfs2/segbuf.c static void nilfs_segbuf_clear(struct nilfs_segment_buffer *segbuf)
segbuf            253 fs/nilfs2/segbuf.c 	nilfs_release_buffers(&segbuf->sb_segsum_buffers);
segbuf            254 fs/nilfs2/segbuf.c 	nilfs_release_buffers(&segbuf->sb_payload_buffers);
segbuf            255 fs/nilfs2/segbuf.c 	segbuf->sb_super_root = NULL;
segbuf            263 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *segbuf;
segbuf            265 fs/nilfs2/segbuf.c 	list_for_each_entry(segbuf, logs, sb_list)
segbuf            266 fs/nilfs2/segbuf.c 		nilfs_segbuf_clear(segbuf);
segbuf            272 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *n, *segbuf;
segbuf            274 fs/nilfs2/segbuf.c 	segbuf = list_prepare_entry(last, logs, sb_list);
segbuf            275 fs/nilfs2/segbuf.c 	list_for_each_entry_safe_continue(segbuf, n, logs, sb_list) {
segbuf            276 fs/nilfs2/segbuf.c 		list_del_init(&segbuf->sb_list);
segbuf            277 fs/nilfs2/segbuf.c 		nilfs_segbuf_clear(segbuf);
segbuf            278 fs/nilfs2/segbuf.c 		nilfs_segbuf_free(segbuf);
segbuf            284 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *segbuf;
segbuf            287 fs/nilfs2/segbuf.c 	list_for_each_entry(segbuf, logs, sb_list) {
segbuf            288 fs/nilfs2/segbuf.c 		ret = nilfs_segbuf_write(segbuf, nilfs);
segbuf            297 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *segbuf;
segbuf            300 fs/nilfs2/segbuf.c 	list_for_each_entry(segbuf, logs, sb_list) {
segbuf            301 fs/nilfs2/segbuf.c 		err = nilfs_segbuf_wait(segbuf);
segbuf            315 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *segbuf;
segbuf            317 fs/nilfs2/segbuf.c 	list_for_each_entry(segbuf, logs, sb_list) {
segbuf            318 fs/nilfs2/segbuf.c 		if (segbuf->sb_super_root)
segbuf            319 fs/nilfs2/segbuf.c 			nilfs_segbuf_fill_in_super_root_crc(segbuf, seed);
segbuf            320 fs/nilfs2/segbuf.c 		nilfs_segbuf_fill_in_segsum_crc(segbuf, seed);
segbuf            321 fs/nilfs2/segbuf.c 		nilfs_segbuf_fill_in_data_crc(segbuf, seed);
segbuf            330 fs/nilfs2/segbuf.c 	struct nilfs_segment_buffer *segbuf = bio->bi_private;
segbuf            333 fs/nilfs2/segbuf.c 		atomic_inc(&segbuf->sb_err);
segbuf            336 fs/nilfs2/segbuf.c 	complete(&segbuf->sb_bio_event);
segbuf            339 fs/nilfs2/segbuf.c static int nilfs_segbuf_submit_bio(struct nilfs_segment_buffer *segbuf,
segbuf            346 fs/nilfs2/segbuf.c 	if (segbuf->sb_nbio > 0 &&
segbuf            347 fs/nilfs2/segbuf.c 	    bdi_write_congested(segbuf->sb_super->s_bdi)) {
segbuf            348 fs/nilfs2/segbuf.c 		wait_for_completion(&segbuf->sb_bio_event);
segbuf            349 fs/nilfs2/segbuf.c 		segbuf->sb_nbio--;
segbuf            350 fs/nilfs2/segbuf.c 		if (unlikely(atomic_read(&segbuf->sb_err))) {
segbuf            358 fs/nilfs2/segbuf.c 	bio->bi_private = segbuf;
segbuf            361 fs/nilfs2/segbuf.c 	segbuf->sb_nbio++;
segbuf            401 fs/nilfs2/segbuf.c static void nilfs_segbuf_prepare_write(struct nilfs_segment_buffer *segbuf,
segbuf            405 fs/nilfs2/segbuf.c 	wi->rest_blocks = segbuf->sb_sum.nblocks;
segbuf            409 fs/nilfs2/segbuf.c 	wi->blocknr = segbuf->sb_pseg_start;
segbuf            412 fs/nilfs2/segbuf.c static int nilfs_segbuf_submit_bh(struct nilfs_segment_buffer *segbuf,
segbuf            433 fs/nilfs2/segbuf.c 	err = nilfs_segbuf_submit_bio(segbuf, wi, mode, 0);
segbuf            452 fs/nilfs2/segbuf.c static int nilfs_segbuf_write(struct nilfs_segment_buffer *segbuf,
segbuf            460 fs/nilfs2/segbuf.c 	nilfs_segbuf_prepare_write(segbuf, &wi);
segbuf            462 fs/nilfs2/segbuf.c 	list_for_each_entry(bh, &segbuf->sb_segsum_buffers, b_assoc_buffers) {
segbuf            463 fs/nilfs2/segbuf.c 		res = nilfs_segbuf_submit_bh(segbuf, &wi, bh, REQ_OP_WRITE);
segbuf            468 fs/nilfs2/segbuf.c 	list_for_each_entry(bh, &segbuf->sb_payload_buffers, b_assoc_buffers) {
segbuf            469 fs/nilfs2/segbuf.c 		res = nilfs_segbuf_submit_bh(segbuf, &wi, bh, REQ_OP_WRITE);
segbuf            479 fs/nilfs2/segbuf.c 		res = nilfs_segbuf_submit_bio(segbuf, &wi, REQ_OP_WRITE,
segbuf            496 fs/nilfs2/segbuf.c static int nilfs_segbuf_wait(struct nilfs_segment_buffer *segbuf)
segbuf            500 fs/nilfs2/segbuf.c 	if (!segbuf->sb_nbio)
segbuf            504 fs/nilfs2/segbuf.c 		wait_for_completion(&segbuf->sb_bio_event);
segbuf            505 fs/nilfs2/segbuf.c 	} while (--segbuf->sb_nbio > 0);
segbuf            507 fs/nilfs2/segbuf.c 	if (unlikely(atomic_read(&segbuf->sb_err) > 0)) {
segbuf            508 fs/nilfs2/segbuf.c 		nilfs_msg(segbuf->sb_super, KERN_ERR,
segbuf            510 fs/nilfs2/segbuf.c 			  (unsigned long long)segbuf->sb_pseg_start,
segbuf            511 fs/nilfs2/segbuf.c 			  segbuf->sb_sum.nblocks,
segbuf            512 fs/nilfs2/segbuf.c 			  (unsigned long long)segbuf->sb_segnum);
segbuf             87 fs/nilfs2/segbuf.h #define NILFS_NEXT_SEGBUF(segbuf)  NILFS_LIST_SEGBUF((segbuf)->sb_list.next)
segbuf             88 fs/nilfs2/segbuf.h #define NILFS_PREV_SEGBUF(segbuf)  NILFS_LIST_SEGBUF((segbuf)->sb_list.prev)
segbuf             91 fs/nilfs2/segbuf.h #define NILFS_SEGBUF_IS_LAST(segbuf, head)  ((segbuf)->sb_list.next == (head))
segbuf            110 fs/nilfs2/segbuf.h void nilfs_segbuf_map_cont(struct nilfs_segment_buffer *segbuf,
segbuf            121 fs/nilfs2/segbuf.h static inline int nilfs_segbuf_simplex(struct nilfs_segment_buffer *segbuf)
segbuf            123 fs/nilfs2/segbuf.h 	unsigned int flags = segbuf->sb_sum.flags;
segbuf            129 fs/nilfs2/segbuf.h static inline int nilfs_segbuf_empty(struct nilfs_segment_buffer *segbuf)
segbuf            131 fs/nilfs2/segbuf.h 	return segbuf->sb_sum.nblocks == segbuf->sb_sum.nsumblk;
segbuf            135 fs/nilfs2/segbuf.h nilfs_segbuf_add_segsum_buffer(struct nilfs_segment_buffer *segbuf,
segbuf            138 fs/nilfs2/segbuf.h 	list_add_tail(&bh->b_assoc_buffers, &segbuf->sb_segsum_buffers);
segbuf            139 fs/nilfs2/segbuf.h 	segbuf->sb_sum.nblocks++;
segbuf            140 fs/nilfs2/segbuf.h 	segbuf->sb_sum.nsumblk++;
segbuf            144 fs/nilfs2/segbuf.h nilfs_segbuf_add_payload_buffer(struct nilfs_segment_buffer *segbuf,
segbuf            147 fs/nilfs2/segbuf.h 	list_add_tail(&bh->b_assoc_buffers, &segbuf->sb_payload_buffers);
segbuf            148 fs/nilfs2/segbuf.h 	segbuf->sb_sum.nblocks++;
segbuf            152 fs/nilfs2/segbuf.h nilfs_segbuf_add_file_buffer(struct nilfs_segment_buffer *segbuf,
segbuf            156 fs/nilfs2/segbuf.h 	nilfs_segbuf_add_payload_buffer(segbuf, bh);
segbuf            157 fs/nilfs2/segbuf.h 	segbuf->sb_sum.nfileblk++;
segbuf            397 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf = sci->sc_curseg;
segbuf            404 fs/nilfs2/segment.c 					       &segbuf->sb_segsum_buffers));
segbuf            418 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf = sci->sc_curseg;
segbuf            426 fs/nilfs2/segment.c 	err = nilfs_segbuf_reset(segbuf, flags, sci->sc_seg_ctime, sci->sc_cno);
segbuf            430 fs/nilfs2/segment.c 	sumbh = NILFS_SEGBUF_FIRST_BH(&segbuf->sb_segsum_buffers);
segbuf            431 fs/nilfs2/segment.c 	sumbytes = segbuf->sb_sum.sumbytes;
segbuf            452 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf = sci->sc_curseg;
segbuf            455 fs/nilfs2/segment.c 	if (segbuf->sb_sum.nblocks >= segbuf->sb_rest_blocks) {
segbuf            459 fs/nilfs2/segment.c 		segbuf = sci->sc_curseg;
segbuf            461 fs/nilfs2/segment.c 	err = nilfs_segbuf_extend_payload(segbuf, &segbuf->sb_super_root);
segbuf            463 fs/nilfs2/segment.c 		segbuf->sb_sum.flags |= NILFS_SS_SR;
segbuf            501 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf            523 fs/nilfs2/segment.c 	segbuf = sci->sc_curseg;
segbuf            524 fs/nilfs2/segment.c 	segbuf->sb_sum.sumbytes = sci->sc_binfo_ptr.offset +
segbuf            525 fs/nilfs2/segment.c 		sci->sc_super->s_blocksize * (segbuf->sb_sum.nsumblk - 1);
segbuf            535 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf            539 fs/nilfs2/segment.c 	segbuf = sci->sc_curseg;
segbuf            542 fs/nilfs2/segment.c 	if (segbuf->sb_sum.nblocks + required + 1 > segbuf->sb_rest_blocks) {
segbuf            550 fs/nilfs2/segment.c 		err = nilfs_segbuf_extend_segsum(segbuf);
segbuf            559 fs/nilfs2/segment.c 	nilfs_segbuf_add_file_buffer(segbuf, bh);
segbuf           1276 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf, *prev;
segbuf           1280 fs/nilfs2/segment.c 	segbuf = nilfs_segbuf_new(sci->sc_super);
segbuf           1281 fs/nilfs2/segment.c 	if (unlikely(!segbuf))
segbuf           1285 fs/nilfs2/segment.c 		nilfs_segbuf_map(segbuf, nilfs->ns_segnum,
segbuf           1287 fs/nilfs2/segment.c 		if (segbuf->sb_rest_blocks < NILFS_PSEG_MIN_BLOCKS) {
segbuf           1289 fs/nilfs2/segment.c 			nilfs_segbuf_map(segbuf, nilfs->ns_segnum, 0, nilfs);
segbuf           1292 fs/nilfs2/segment.c 		segbuf->sb_sum.seg_seq = nilfs->ns_seg_seq;
segbuf           1301 fs/nilfs2/segment.c 		nilfs_segbuf_map_cont(segbuf, prev);
segbuf           1302 fs/nilfs2/segment.c 		segbuf->sb_sum.seg_seq = prev->sb_sum.seg_seq;
segbuf           1305 fs/nilfs2/segment.c 		if (segbuf->sb_rest_blocks < NILFS_PSEG_MIN_BLOCKS) {
segbuf           1306 fs/nilfs2/segment.c 			nilfs_segbuf_map(segbuf, prev->sb_nextnum, 0, nilfs);
segbuf           1307 fs/nilfs2/segment.c 			segbuf->sb_sum.seg_seq++;
segbuf           1312 fs/nilfs2/segment.c 	err = nilfs_sufile_mark_dirty(nilfs->ns_sufile, segbuf->sb_segnum);
segbuf           1321 fs/nilfs2/segment.c 	nilfs_segbuf_set_next_segnum(segbuf, nextnum, nilfs);
segbuf           1324 fs/nilfs2/segment.c 	list_add_tail(&segbuf->sb_list, &sci->sc_segbufs);
segbuf           1325 fs/nilfs2/segment.c 	sci->sc_segbuf_nblocks = segbuf->sb_rest_blocks;
segbuf           1329 fs/nilfs2/segment.c 	nilfs_segbuf_free(segbuf);
segbuf           1336 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf, *prev;
segbuf           1356 fs/nilfs2/segment.c 		segbuf = nilfs_segbuf_new(sci->sc_super);
segbuf           1357 fs/nilfs2/segment.c 		if (unlikely(!segbuf))
segbuf           1361 fs/nilfs2/segment.c 		nilfs_segbuf_map(segbuf, prev->sb_nextnum, 0, nilfs);
segbuf           1362 fs/nilfs2/segment.c 		sci->sc_segbuf_nblocks += segbuf->sb_rest_blocks;
segbuf           1369 fs/nilfs2/segment.c 		segbuf->sb_sum.seg_seq = prev->sb_sum.seg_seq + 1;
segbuf           1370 fs/nilfs2/segment.c 		nilfs_segbuf_set_next_segnum(segbuf, nextnextnum, nilfs);
segbuf           1372 fs/nilfs2/segment.c 		list_add_tail(&segbuf->sb_list, &list);
segbuf           1373 fs/nilfs2/segment.c 		prev = segbuf;
segbuf           1379 fs/nilfs2/segment.c 	nilfs_segbuf_free(segbuf);
segbuf           1381 fs/nilfs2/segment.c 	list_for_each_entry(segbuf, &list, sb_list) {
segbuf           1382 fs/nilfs2/segment.c 		ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum);
segbuf           1392 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf, *prev;
segbuf           1396 fs/nilfs2/segment.c 	segbuf = NILFS_FIRST_SEGBUF(logs);
segbuf           1397 fs/nilfs2/segment.c 	if (nilfs->ns_nextnum != segbuf->sb_nextnum) {
segbuf           1398 fs/nilfs2/segment.c 		ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum);
segbuf           1401 fs/nilfs2/segment.c 	if (atomic_read(&segbuf->sb_err)) {
segbuf           1403 fs/nilfs2/segment.c 		if (segbuf->sb_pseg_start != segbuf->sb_fseg_start)
segbuf           1408 fs/nilfs2/segment.c 			nilfs_terminate_segment(nilfs, segbuf->sb_fseg_start,
segbuf           1409 fs/nilfs2/segment.c 						segbuf->sb_fseg_end);
segbuf           1414 fs/nilfs2/segment.c 	prev = segbuf;
segbuf           1415 fs/nilfs2/segment.c 	list_for_each_entry_continue(segbuf, logs, sb_list) {
segbuf           1416 fs/nilfs2/segment.c 		if (prev->sb_nextnum != segbuf->sb_nextnum) {
segbuf           1417 fs/nilfs2/segment.c 			ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum);
segbuf           1420 fs/nilfs2/segment.c 		if (atomic_read(&segbuf->sb_err) &&
segbuf           1421 fs/nilfs2/segment.c 		    segbuf->sb_segnum != nilfs->ns_nextnum)
segbuf           1423 fs/nilfs2/segment.c 			nilfs_sufile_set_error(sufile, segbuf->sb_segnum);
segbuf           1424 fs/nilfs2/segment.c 		prev = segbuf;
segbuf           1431 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf           1435 fs/nilfs2/segment.c 	list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) {
segbuf           1436 fs/nilfs2/segment.c 		live_blocks = segbuf->sb_sum.nblocks +
segbuf           1437 fs/nilfs2/segment.c 			(segbuf->sb_pseg_start - segbuf->sb_fseg_start);
segbuf           1438 fs/nilfs2/segment.c 		ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum,
segbuf           1447 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf           1450 fs/nilfs2/segment.c 	segbuf = NILFS_FIRST_SEGBUF(logs);
segbuf           1451 fs/nilfs2/segment.c 	ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum,
segbuf           1452 fs/nilfs2/segment.c 					     segbuf->sb_pseg_start -
segbuf           1453 fs/nilfs2/segment.c 					     segbuf->sb_fseg_start, 0);
segbuf           1456 fs/nilfs2/segment.c 	list_for_each_entry_continue(segbuf, logs, sb_list) {
segbuf           1457 fs/nilfs2/segment.c 		ret = nilfs_sufile_set_segment_usage(sufile, segbuf->sb_segnum,
segbuf           1467 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf = last;
segbuf           1470 fs/nilfs2/segment.c 	list_for_each_entry_continue(segbuf, &sci->sc_segbufs, sb_list) {
segbuf           1471 fs/nilfs2/segment.c 		sci->sc_segbuf_nblocks -= segbuf->sb_rest_blocks;
segbuf           1472 fs/nilfs2/segment.c 		ret = nilfs_sufile_free(sufile, segbuf->sb_nextnum);
segbuf           1543 fs/nilfs2/segment.c 				     struct nilfs_segment_buffer *segbuf,
segbuf           1548 fs/nilfs2/segment.c 	unsigned long nfinfo = segbuf->sb_sum.nfinfo;
segbuf           1561 fs/nilfs2/segment.c 	blocknr = segbuf->sb_pseg_start + segbuf->sb_sum.nsumblk;
segbuf           1562 fs/nilfs2/segment.c 	ssp.bh = NILFS_SEGBUF_FIRST_BH(&segbuf->sb_segsum_buffers);
segbuf           1565 fs/nilfs2/segment.c 	list_for_each_entry(bh, &segbuf->sb_payload_buffers, b_assoc_buffers) {
segbuf           1566 fs/nilfs2/segment.c 		if (bh == segbuf->sb_super_root)
segbuf           1616 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf           1619 fs/nilfs2/segment.c 	list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) {
segbuf           1620 fs/nilfs2/segment.c 		err = nilfs_segctor_update_payload_blocknr(sci, segbuf, mode);
segbuf           1623 fs/nilfs2/segment.c 		nilfs_segbuf_fill_in_segsum(segbuf);
segbuf           1645 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf           1648 fs/nilfs2/segment.c 	list_for_each_entry(segbuf, &sci->sc_segbufs, sb_list) {
segbuf           1651 fs/nilfs2/segment.c 		list_for_each_entry(bh, &segbuf->sb_segsum_buffers,
segbuf           1664 fs/nilfs2/segment.c 		list_for_each_entry(bh, &segbuf->sb_payload_buffers,
segbuf           1667 fs/nilfs2/segment.c 			if (bh == segbuf->sb_super_root) {
segbuf           1742 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf           1749 fs/nilfs2/segment.c 	list_for_each_entry(segbuf, logs, sb_list) {
segbuf           1750 fs/nilfs2/segment.c 		list_for_each_entry(bh, &segbuf->sb_segsum_buffers,
segbuf           1759 fs/nilfs2/segment.c 		list_for_each_entry(bh, &segbuf->sb_payload_buffers,
segbuf           1762 fs/nilfs2/segment.c 			if (bh == segbuf->sb_super_root) {
segbuf           1807 fs/nilfs2/segment.c 				   struct nilfs_segment_buffer *segbuf)
segbuf           1809 fs/nilfs2/segment.c 	nilfs->ns_segnum = segbuf->sb_segnum;
segbuf           1810 fs/nilfs2/segment.c 	nilfs->ns_nextnum = segbuf->sb_nextnum;
segbuf           1811 fs/nilfs2/segment.c 	nilfs->ns_pseg_offset = segbuf->sb_pseg_start - segbuf->sb_fseg_start
segbuf           1812 fs/nilfs2/segment.c 		+ segbuf->sb_sum.nblocks;
segbuf           1813 fs/nilfs2/segment.c 	nilfs->ns_seg_seq = segbuf->sb_sum.seg_seq;
segbuf           1814 fs/nilfs2/segment.c 	nilfs->ns_ctime = segbuf->sb_sum.ctime;
segbuf           1819 fs/nilfs2/segment.c 	struct nilfs_segment_buffer *segbuf;
segbuf           1824 fs/nilfs2/segment.c 	list_for_each_entry(segbuf, &sci->sc_write_logs, sb_list) {
segbuf           1827 fs/nilfs2/segment.c 		list_for_each_entry(bh, &segbuf->sb_segsum_buffers,
segbuf           1848 fs/nilfs2/segment.c 		list_for_each_entry(bh, &segbuf->sb_payload_buffers,
segbuf           1857 fs/nilfs2/segment.c 			if (bh == segbuf->sb_super_root) {
segbuf           1871 fs/nilfs2/segment.c 		if (!nilfs_segbuf_simplex(segbuf)) {
segbuf           1872 fs/nilfs2/segment.c 			if (segbuf->sb_sum.flags & NILFS_SS_LOGBGN) {
segbuf           1876 fs/nilfs2/segment.c 			if (segbuf->sb_sum.flags & NILFS_SS_LOGEND)
segbuf           1898 fs/nilfs2/segment.c 	segbuf = NILFS_LAST_SEGBUF(&sci->sc_write_logs);
segbuf           1899 fs/nilfs2/segment.c 	nilfs_set_next_segment(nilfs, segbuf);
segbuf           1903 fs/nilfs2/segment.c 		nilfs_set_last_segment(nilfs, segbuf->sb_pseg_start,
segbuf           1904 fs/nilfs2/segment.c 				       segbuf->sb_sum.seg_seq, nilfs->ns_cno++);