Lines Matching refs:new_fm
1088 struct ubi_fastmap_layout *new_fm) in ubi_write_fastmap() argument
1141 fmsb->used_blocks = cpu_to_be32(new_fm->used_blocks); in ubi_write_fastmap()
1285 dbg_bld("writing fastmap SB to PEB %i", new_fm->e[0]->pnum); in ubi_write_fastmap()
1286 ret = ubi_io_write_vid_hdr(ubi, new_fm->e[0]->pnum, avhdr); in ubi_write_fastmap()
1292 for (i = 0; i < new_fm->used_blocks; i++) { in ubi_write_fastmap()
1293 fmsb->block_loc[i] = cpu_to_be32(new_fm->e[i]->pnum); in ubi_write_fastmap()
1294 set_seen(ubi, new_fm->e[i]->pnum, seen_pebs); in ubi_write_fastmap()
1295 fmsb->block_ec[i] = cpu_to_be32(new_fm->e[i]->ec); in ubi_write_fastmap()
1302 for (i = 1; i < new_fm->used_blocks; i++) { in ubi_write_fastmap()
1306 new_fm->e[i]->pnum, be64_to_cpu(dvhdr->sqnum)); in ubi_write_fastmap()
1307 ret = ubi_io_write_vid_hdr(ubi, new_fm->e[i]->pnum, dvhdr); in ubi_write_fastmap()
1310 new_fm->e[i]->pnum); in ubi_write_fastmap()
1315 for (i = 0; i < new_fm->used_blocks; i++) { in ubi_write_fastmap()
1317 new_fm->e[i]->pnum, ubi->leb_start, ubi->leb_size); in ubi_write_fastmap()
1320 new_fm->e[i]->pnum); in ubi_write_fastmap()
1325 ubi_assert(new_fm); in ubi_write_fastmap()
1326 ubi->fm = new_fm; in ubi_write_fastmap()
1482 struct ubi_fastmap_layout *new_fm, *old_fm; in ubi_update_fastmap() local
1500 new_fm = kzalloc(sizeof(*new_fm), GFP_KERNEL); in ubi_update_fastmap()
1501 if (!new_fm) { in ubi_update_fastmap()
1506 new_fm->used_blocks = ubi->fm_size / ubi->leb_size; in ubi_update_fastmap()
1510 if (new_fm->used_blocks > UBI_FM_MAX_BLOCKS) { in ubi_update_fastmap()
1516 for (i = 1; i < new_fm->used_blocks; i++) { in ubi_update_fastmap()
1528 ubi_wl_put_fm_peb(ubi, new_fm->e[j], in ubi_update_fastmap()
1530 new_fm->e[j] = NULL; in ubi_update_fastmap()
1534 new_fm->e[i] = old_fm->e[i]; in ubi_update_fastmap()
1540 ubi_wl_put_fm_peb(ubi, new_fm->e[j], j, 0); in ubi_update_fastmap()
1541 new_fm->e[j] = NULL; in ubi_update_fastmap()
1548 new_fm->e[i] = tmp_e; in ubi_update_fastmap()
1559 if (old_fm && new_fm->used_blocks < old_fm->used_blocks) { in ubi_update_fastmap()
1560 for (i = new_fm->used_blocks; i < old_fm->used_blocks; i++) { in ubi_update_fastmap()
1578 for (i = 1; i < new_fm->used_blocks; i++) { in ubi_update_fastmap()
1579 ubi_wl_put_fm_peb(ubi, new_fm->e[i], in ubi_update_fastmap()
1581 new_fm->e[i] = NULL; in ubi_update_fastmap()
1585 new_fm->e[0] = old_fm->e[0]; in ubi_update_fastmap()
1586 new_fm->e[0]->ec = ret; in ubi_update_fastmap()
1592 new_fm->e[0] = tmp_e; in ubi_update_fastmap()
1599 for (i = 1; i < new_fm->used_blocks; i++) { in ubi_update_fastmap()
1600 ubi_wl_put_fm_peb(ubi, new_fm->e[i], i, 0); in ubi_update_fastmap()
1601 new_fm->e[i] = NULL; in ubi_update_fastmap()
1607 new_fm->e[0] = tmp_e; in ubi_update_fastmap()
1612 ret = ubi_write_fastmap(ubi, new_fm); in ubi_update_fastmap()
1633 return_fm_pebs(ubi, new_fm); in ubi_update_fastmap()
1637 kfree(new_fm); in ubi_update_fastmap()