Lines Matching refs:vol
317 int ubi_eba_unmap_leb(struct ubi_device *ubi, struct ubi_volume *vol, in ubi_eba_unmap_leb() argument
320 int err, pnum, vol_id = vol->vol_id; in ubi_eba_unmap_leb()
329 pnum = vol->eba_tbl[lnum]; in ubi_eba_unmap_leb()
337 vol->eba_tbl[lnum] = UBI_LEB_UNMAPPED; in ubi_eba_unmap_leb()
365 int ubi_eba_read_leb(struct ubi_device *ubi, struct ubi_volume *vol, int lnum, in ubi_eba_read_leb() argument
368 int err, pnum, scrub = 0, vol_id = vol->vol_id; in ubi_eba_read_leb()
376 pnum = vol->eba_tbl[lnum]; in ubi_eba_read_leb()
386 ubi_assert(vol->vol_type != UBI_STATIC_VOLUME); in ubi_eba_read_leb()
394 if (vol->vol_type == UBI_DYNAMIC_VOLUME) in ubi_eba_read_leb()
442 if (vol->vol_type == UBI_DYNAMIC_VOLUME) in ubi_eba_read_leb()
492 int ubi_eba_read_leb_sg(struct ubi_device *ubi, struct ubi_volume *vol, in ubi_eba_read_leb_sg() argument
508 ret = ubi_eba_read_leb(ubi, vol, lnum, in ubi_eba_read_leb_sg()
554 struct ubi_volume *vol = ubi->volumes[idx]; in recover_peb() local
612 vol->eba_tbl[lnum] = new_pnum; in recover_peb()
655 int ubi_eba_write_leb(struct ubi_device *ubi, struct ubi_volume *vol, int lnum, in ubi_eba_write_leb() argument
658 int err, pnum, tries = 0, vol_id = vol->vol_id; in ubi_eba_write_leb()
668 pnum = vol->eba_tbl[lnum]; in ubi_eba_write_leb()
701 vid_hdr->data_pad = cpu_to_be32(vol->data_pad); in ubi_eba_write_leb()
733 vol->eba_tbl[lnum] = pnum; in ubi_eba_write_leb()
788 int ubi_eba_write_leb_st(struct ubi_device *ubi, struct ubi_volume *vol, in ubi_eba_write_leb_st() argument
791 int err, pnum, tries = 0, data_size = len, vol_id = vol->vol_id; in ubi_eba_write_leb_st()
818 vid_hdr->data_pad = cpu_to_be32(vol->data_pad); in ubi_eba_write_leb_st()
854 ubi_assert(vol->eba_tbl[lnum] < 0); in ubi_eba_write_leb_st()
855 vol->eba_tbl[lnum] = pnum; in ubi_eba_write_leb_st()
905 int ubi_eba_atomic_leb_change(struct ubi_device *ubi, struct ubi_volume *vol, in ubi_eba_atomic_leb_change() argument
908 int err, pnum, old_pnum, tries = 0, vol_id = vol->vol_id; in ubi_eba_atomic_leb_change()
920 err = ubi_eba_unmap_leb(ubi, vol, lnum); in ubi_eba_atomic_leb_change()
923 return ubi_eba_write_leb(ubi, vol, lnum, NULL, 0, 0); in ubi_eba_atomic_leb_change()
939 vid_hdr->data_pad = cpu_to_be32(vol->data_pad); in ubi_eba_atomic_leb_change()
956 vol_id, lnum, vol->eba_tbl[lnum], pnum); in ubi_eba_atomic_leb_change()
974 old_pnum = vol->eba_tbl[lnum]; in ubi_eba_atomic_leb_change()
975 vol->eba_tbl[lnum] = pnum; in ubi_eba_atomic_leb_change()
1058 struct ubi_volume *vol; in ubi_eba_copy_leb() local
1081 vol = ubi->volumes[idx]; in ubi_eba_copy_leb()
1083 if (!vol) { in ubi_eba_copy_leb()
1115 if (vol->eba_tbl[lnum] != from) { in ubi_eba_copy_leb()
1117 vol_id, lnum, from, vol->eba_tbl[lnum]); in ubi_eba_copy_leb()
1228 ubi_assert(vol->eba_tbl[lnum] == from); in ubi_eba_copy_leb()
1230 vol->eba_tbl[lnum] = to; in ubi_eba_copy_leb()
1297 struct ubi_volume *vol; in self_check_eba() local
1314 vol = ubi->volumes[i]; in self_check_eba()
1315 if (!vol) in self_check_eba()
1318 scan_eba[i] = kmalloc(vol->reserved_pebs * sizeof(**scan_eba), in self_check_eba()
1325 fm_eba[i] = kmalloc(vol->reserved_pebs * sizeof(**fm_eba), in self_check_eba()
1332 for (j = 0; j < vol->reserved_pebs; j++) in self_check_eba()
1349 for (j = 0; j < vol->reserved_pebs; j++) { in self_check_eba()
1356 vol->vol_id, i, fm_eba[i][j], in self_check_eba()
1389 struct ubi_volume *vol; in ubi_eba_init() local
1403 vol = ubi->volumes[i]; in ubi_eba_init()
1404 if (!vol) in ubi_eba_init()
1409 vol->eba_tbl = kmalloc(vol->reserved_pebs * sizeof(int), in ubi_eba_init()
1411 if (!vol->eba_tbl) { in ubi_eba_init()
1416 for (j = 0; j < vol->reserved_pebs; j++) in ubi_eba_init()
1417 vol->eba_tbl[j] = UBI_LEB_UNMAPPED; in ubi_eba_init()
1424 if (aeb->lnum >= vol->reserved_pebs) in ubi_eba_init()
1431 vol->eba_tbl[aeb->lnum] = aeb->pnum; in ubi_eba_init()