• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/fs/jffs2/

Lines Matching refs:jeb

114 		struct jffs2_eraseblock *jeb = list_entry(this, struct jffs2_eraseblock, list);
116 D1(printk(KERN_DEBUG "Removing eraseblock at 0x%08x from erasable_pending_wbuf_list...\n", jeb->offset));
122 list_add_tail(&jeb->list, &c->erase_pending_list);
129 list_add_tail(&jeb->list, &c->erasable_list);
137 static void jffs2_block_refile(struct jffs2_sb_info *c, struct jffs2_eraseblock *jeb, int allow_empty)
139 D1(printk("About to refile bad block at %08x\n", jeb->offset));
142 if (c->nextblock == jeb)
145 list_del(&jeb->list);
146 if (jeb->first_node) {
147 D1(printk("Refiling block at %08x to bad_used_list\n", jeb->offset));
148 list_add(&jeb->list, &c->bad_used_list);
152 D1(printk("Refiling block at %08x to erase_pending_list\n", jeb->offset));
153 list_add(&jeb->list, &c->erase_pending_list);
158 if (!jffs2_prealloc_raw_node_refs(c, jeb, 1)) {
159 uint32_t oldfree = jeb->free_size;
161 jffs2_link_node_ref(c, jeb,
162 (jeb->offset+c->sector_size-oldfree) | REF_OBSOLETE,
166 jeb->wasted_size += oldfree;
168 jeb->dirty_size -= oldfree;
172 jffs2_dbg_acct_sanity_check_nolock(c,jeb);
173 jffs2_dbg_acct_paranoia_check_nolock(c, jeb);
228 struct jffs2_eraseblock *jeb, *new_jeb;
236 jeb = &c->blocks[c->wbuf_ofs / c->sector_size];
240 jffs2_block_refile(c, jeb, REFILE_NOTEMPTY);
242 jffs2_block_refile(c, jeb, REFILE_ANYWAY);
245 BUG_ON(!ref_obsolete(jeb->last_node));
249 for (next = raw = jeb->first_node; next; raw = next) {
256 (ref_offset(raw) + ref_totlen(c, jeb, raw)),
262 (ref_offset(raw) + ref_totlen(c, jeb, raw)));
276 end = ref_offset(jeb->last_node);
280 while ((raw = ref_next(raw)) != jeb->last_node)
389 jffs2_add_physical_node_ref(c, ofs | REF_OBSOLETE, ref_totlen(c, jeb, first_raw), NULL);
414 for (raw = first_raw; raw != jeb->last_node; raw = ref_next(raw)) {
415 uint32_t rawlen = ref_totlen(c, jeb, raw);
488 jeb->dirty_size += rawlen;
489 jeb->used_size -= rawlen;
500 /* Fix up the original jeb now it's on the bad_list */
501 if (first_raw == jeb->first_node) {
502 D1(printk(KERN_DEBUG "Failing block at %08x is now empty. Moving to erase_pending_list\n", jeb->offset));
503 list_move(&jeb->list, &c->erase_pending_list);
508 jffs2_dbg_acct_sanity_check_nolock(c, jeb);
509 jffs2_dbg_acct_paranoia_check_nolock(c, jeb);
746 struct jffs2_eraseblock *jeb;
875 jeb = &c->blocks[outvec_to / c->sector_size];
876 jffs2_block_refile(c, jeb, REFILE_ANYWAY);
983 struct jffs2_eraseblock *jeb, int mode)
995 ret = c->mtd->read_oob(c->mtd, jeb->offset, &ops);
999 jeb->offset, ops.ooblen, ops.oobretlen, ret);
1012 "%08x\n", ops.oobbuf[i], i, jeb->offset));
1027 struct jffs2_eraseblock *jeb)
1038 ret = c->mtd->read_oob(c->mtd, jeb->offset, &ops);
1042 jeb->offset, ops.ooblen, ops.oobretlen, ret);
1052 struct jffs2_eraseblock *jeb)
1064 ret = c->mtd->write_oob(c->mtd, jeb->offset, &ops);
1068 jeb->offset, ops.ooblen, ops.oobretlen, ret);
1085 int jffs2_write_nand_badblock(struct jffs2_sb_info *c, struct jffs2_eraseblock *jeb, uint32_t bad_offset)
1090 if( ++jeb->bad_count < MAX_ERASE_FAILURES)
1100 D1(printk(KERN_WARNING "jffs2_write_nand_badblock(): Write failed for block at %08x: error %d\n", jeb->offset, ret));