Lines Matching refs:pnum
138 static int self_check_ec(struct ubi_device *ubi, int pnum, int ec);
168 ubi_assert(e->pnum != e1->pnum); in wl_tree_add()
169 if (e->pnum < e1->pnum) in wl_tree_add()
190 ubi->lookuptbl[e->pnum] = NULL; in wl_entry_destroy()
259 if (e->pnum == e1->pnum) { in in_wl_tree()
269 ubi_assert(e->pnum != e1->pnum); in in_wl_tree()
270 if (e->pnum < e1->pnum) in in_wl_tree()
298 dbg_wl("added PEB %d EC %d to the protection queue", e->pnum, e->ec); in prot_queue_add()
338 !ubi->fm && e->pnum < UBI_FM_MAX_START) in find_wl_entry()
400 dbg_wl("PEB %d EC %d", e->pnum, e->ec); in wl_get_wle()
413 static int prot_queue_del(struct ubi_device *ubi, int pnum) in prot_queue_del() argument
417 e = ubi->lookuptbl[pnum]; in prot_queue_del()
425 dbg_wl("deleted PEB %d from the protection queue", e->pnum); in prot_queue_del()
445 dbg_wl("erase PEB %d, old EC %llu", e->pnum, ec); in sync_erase()
447 err = self_check_ec(ubi, e->pnum, e->ec); in sync_erase()
455 err = ubi_io_sync_erase(ubi, e->pnum, torture); in sync_erase()
466 e->pnum, ec); in sync_erase()
471 dbg_wl("erased PEB %d, new EC %llu", e->pnum, ec); in sync_erase()
475 err = ubi_io_write_ec_hdr(ubi, e->pnum, ec_hdr); in sync_erase()
512 e->pnum, e->ec); in serve_prot_queue()
590 e->pnum, e->ec, torture); in schedule_erase()
620 dbg_wl("sync erase of PEB %i", e->pnum); in do_sync_erase()
701 dbg_wl("anchor-move PEB %d to PEB %d", e1->pnum, e2->pnum);
728 e1->pnum, e1->ec, e2->pnum, e2->ec);
739 dbg_wl("scrub PEB %d to PEB %d", e1->pnum, e2->pnum);
757 err = ubi_io_read_vid_hdr(ubi, e1->pnum, vid_hdr, 0);
770 dbg_wl("PEB %d has no VID header", e1->pnum);
780 e1->pnum);
786 err, e1->pnum);
793 err = ubi_eba_copy_leb(ubi, e1->pnum, e2->pnum, vid_hdr);
846 e1->pnum, vol_id, lnum, e2->pnum);
871 e2->pnum, vol_id, lnum);
889 e1->pnum, vol_id, lnum, e2->pnum, err);
892 e1->pnum, e2->pnum, err);
919 err, e1->pnum, e2->pnum);
922 err, e1->pnum, vol_id, lnum, e2->pnum);
1032 int pnum = e->pnum; local
1038 dbg_wl("cancel erasure of PEB %d EC %d", pnum, e->ec);
1045 pnum, e->ec, wl_wrk->vol_id, wl_wrk->lnum);
1068 ubi_err(ubi, "failed to erase PEB %d, error %d", pnum, err);
1096 ubi_err(ubi, "bad physical eraseblock %d detected", pnum);
1112 ubi_msg(ubi, "mark PEB %d as bad", pnum);
1113 err = ubi_io_mark_bad(ubi, pnum);
1167 int pnum, int torture) argument
1172 dbg_wl("PEB %d", pnum);
1173 ubi_assert(pnum >= 0);
1174 ubi_assert(pnum < ubi->peb_count);
1180 e = ubi->lookuptbl[pnum];
1187 dbg_wl("PEB %d is being moved, wait", pnum);
1204 dbg_wl("PEB %d is the target of data moving", pnum);
1225 err = prot_queue_del(ubi, e->pnum);
1227 ubi_err(ubi, "PEB %d not found", pnum);
1258 int ubi_wl_scrub_peb(struct ubi_device *ubi, int pnum) argument
1262 ubi_msg(ubi, "schedule PEB %d for scrubbing", pnum);
1266 e = ubi->lookuptbl[pnum];
1281 dbg_wl("the PEB %d is not in proper tree, retry", pnum);
1292 err = prot_queue_del(ubi, e->pnum);
1294 ubi_err(ubi, "PEB %d not found", pnum);
1524 e->pnum = aeb->pnum;
1526 ubi->lookuptbl[e->pnum] = e;
1543 e->pnum = aeb->pnum;
1550 ubi->lookuptbl[e->pnum] = e;
1563 e->pnum = aeb->pnum;
1565 ubi->lookuptbl[e->pnum] = e;
1569 e->pnum, e->ec);
1573 e->pnum, e->ec);
1589 ubi->lookuptbl[e->pnum] = e;
1670 static int self_check_ec(struct ubi_device *ubi, int pnum, int ec) argument
1683 err = ubi_io_read_ec_hdr(ubi, pnum, ec_hdr, 0);
1692 ubi_err(ubi, "self-check failed for PEB %d", pnum);
1723 e->pnum, e->ec, root);
1751 e->pnum, e->ec);
1834 err = ubi_self_check_all_ff(ubi, e->pnum, ubi->vid_hdr_aloffset,
1837 ubi_err(ubi, "new PEB %d does not contain all 0xFF bytes", e->pnum);
1841 return e->pnum;