Lines Matching refs:ref
590 struct jffs2_raw_node_ref *ref; in jffs2_link_node_ref() local
595 ref = jeb->last_node; in jffs2_link_node_ref()
597 dbg_noderef("Last node at %p is (%08x,%p)\n", ref, ref->flash_offset, in jffs2_link_node_ref()
598 ref->next_in_ino); in jffs2_link_node_ref()
600 while (ref->flash_offset != REF_EMPTY_NODE) { in jffs2_link_node_ref()
601 if (ref->flash_offset == REF_LINK_NODE) in jffs2_link_node_ref()
602 ref = ref->next_in_ino; in jffs2_link_node_ref()
604 ref++; in jffs2_link_node_ref()
607 dbg_noderef("New ref is %p (%08x becomes %08x,%p) len 0x%x\n", ref, in jffs2_link_node_ref()
608 ref->flash_offset, ofs, ref->next_in_ino, len); in jffs2_link_node_ref()
610 ref->flash_offset = ofs; in jffs2_link_node_ref()
613 jeb->first_node = ref; in jffs2_link_node_ref()
614 BUG_ON(ref_offset(ref) != jeb->offset); in jffs2_link_node_ref()
615 } else if (unlikely(ref_offset(ref) != jeb->offset + c->sector_size - jeb->free_size)) { in jffs2_link_node_ref()
619 ref, ref_offset(ref), ref_offset(ref)+len, in jffs2_link_node_ref()
624 jeb->last_node = ref; in jffs2_link_node_ref()
627 ref->next_in_ino = ic->nodes; in jffs2_link_node_ref()
628 ic->nodes = ref; in jffs2_link_node_ref()
630 ref->next_in_ino = NULL; in jffs2_link_node_ref()
633 switch(ref_flags(ref)) { in jffs2_link_node_ref()
655 ref->__totlen = len; in jffs2_link_node_ref()
656 ref_totlen(c, jeb, ref); in jffs2_link_node_ref()
658 return ref; in jffs2_link_node_ref()
694 struct jffs2_raw_node_ref *ref) in __ref_totlen() argument
697 struct jffs2_raw_node_ref *next_ref = ref_next(ref); in __ref_totlen()
703 jeb = &c->blocks[ref->flash_offset / c->sector_size]; in __ref_totlen()
706 if (unlikely(ref != jeb->last_node)) { in __ref_totlen()
708 ref, ref_offset(ref), jeb->last_node, in __ref_totlen()
715 return ref_end - ref_offset(ref); in __ref_totlen()
719 struct jffs2_raw_node_ref *ref) in __jffs2_ref_totlen() argument
723 ret = __ref_totlen(c, jeb, ref); in __jffs2_ref_totlen()
726 if (unlikely(ret != ref->__totlen)) { in __jffs2_ref_totlen()
728 jeb = &c->blocks[ref->flash_offset / c->sector_size]; in __jffs2_ref_totlen()
731 ref, ref_offset(ref), ref_offset(ref) + ref->__totlen, in __jffs2_ref_totlen()
732 ret, ref->__totlen); in __jffs2_ref_totlen()
733 if (ref_next(ref)) { in __jffs2_ref_totlen()
735 ref_next(ref), ref_offset(ref_next(ref)), in __jffs2_ref_totlen()
736 ref_offset(ref_next(ref)) + ref->__totlen); in __jffs2_ref_totlen()
751 ret = ref->__totlen; in __jffs2_ref_totlen()