Lines Matching defs:new_fm
1116 * @new_fm: the to be written fastmap
1121 struct ubi_fastmap_layout *new_fm)
1178 fmsb->used_blocks = cpu_to_be32(new_fm->used_blocks);
1326 dbg_bld("writing fastmap SB to PEB %i", new_fm->e[0]->pnum);
1327 ret = ubi_io_write_vid_hdr(ubi, new_fm->e[0]->pnum, avbuf);
1333 for (i = 0; i < new_fm->used_blocks; i++) {
1334 fmsb->block_loc[i] = cpu_to_be32(new_fm->e[i]->pnum);
1335 set_seen(ubi, new_fm->e[i]->pnum, seen_pebs);
1336 fmsb->block_ec[i] = cpu_to_be32(new_fm->e[i]->ec);
1343 for (i = 1; i < new_fm->used_blocks; i++) {
1347 new_fm->e[i]->pnum, be64_to_cpu(dvhdr->sqnum));
1348 ret = ubi_io_write_vid_hdr(ubi, new_fm->e[i]->pnum, dvbuf);
1351 new_fm->e[i]->pnum);
1356 for (i = 0; i < new_fm->used_blocks; i++) {
1358 new_fm->e[i]->pnum, 0, ubi->leb_size);
1361 new_fm->e[i]->pnum);
1366 ubi_assert(new_fm);
1367 ubi->fm = new_fm;
1529 struct ubi_fastmap_layout *new_fm, *old_fm;
1545 new_fm = kzalloc(sizeof(*new_fm), GFP_KERNEL);
1546 if (!new_fm) {
1553 new_fm->used_blocks = ubi->fm_size / ubi->leb_size;
1557 if (new_fm->used_blocks > UBI_FM_MAX_BLOCKS) {
1563 for (i = 1; i < new_fm->used_blocks; i++) {
1575 ubi_wl_put_fm_peb(ubi, new_fm->e[j],
1577 new_fm->e[j] = NULL;
1581 new_fm->e[i] = old_fm->e[i];
1587 ubi_wl_put_fm_peb(ubi, new_fm->e[j], j, 0);
1588 new_fm->e[j] = NULL;
1595 new_fm->e[i] = tmp_e;
1606 if (old_fm && new_fm->used_blocks < old_fm->used_blocks) {
1607 for (i = new_fm->used_blocks; i < old_fm->used_blocks; i++) {
1626 for (i = 1; i < new_fm->used_blocks; i++) {
1627 ubi_wl_put_fm_peb(ubi, new_fm->e[i],
1629 new_fm->e[i] = NULL;
1633 new_fm->e[0] = old_fm->e[0];
1634 new_fm->e[0]->ec = ret;
1640 new_fm->e[0] = tmp_e;
1647 for (i = 1; i < new_fm->used_blocks; i++) {
1648 ubi_wl_put_fm_peb(ubi, new_fm->e[i], i, 0);
1649 new_fm->e[i] = NULL;
1655 new_fm->e[0] = tmp_e;
1658 ret = ubi_write_fastmap(ubi, new_fm);
1682 return_fm_pebs(ubi, new_fm);
1686 kfree(new_fm);