Lines Matching refs:ppa

31 	struct ppa_addr *ppa = line_ws->priv;  in pblk_line_mark_bb()  local
34 ret = nvm_set_chunk_meta(dev, ppa, 1, NVM_BLK_T_GRWN_BAD); in pblk_line_mark_bb()
39 line = pblk_ppa_to_line(pblk, *ppa); in pblk_line_mark_bb()
40 pos = pblk_ppa_to_pos(&dev->geo, *ppa); in pblk_line_mark_bb()
46 kfree(ppa); in pblk_line_mark_bb()
55 struct ppa_addr *ppa; in pblk_mark_bb() local
70 ppa = kmalloc(sizeof(struct ppa_addr), GFP_ATOMIC); in pblk_mark_bb()
71 if (!ppa) in pblk_mark_bb()
74 *ppa = ppa_addr; in pblk_mark_bb()
75 pblk_gen_run_ws(pblk, NULL, ppa, pblk_line_mark_bb, in pblk_mark_bb()
131 struct ppa_addr ppa; in pblk_get_chunk_meta() local
135 ppa.ppa = 0; in pblk_get_chunk_meta()
142 ret = nvm_get_chunk_meta(dev, ppa, geo->all_chunks, meta); in pblk_get_chunk_meta()
153 struct ppa_addr ppa) in pblk_chunk_get_off() argument
157 int ch_off = ppa.m.grp * geo->num_chk * geo->num_lun; in pblk_chunk_get_off()
158 int lun_off = ppa.m.pu * geo->num_chk; in pblk_chunk_get_off()
159 int chk_off = ppa.m.chk; in pblk_chunk_get_off()
204 void pblk_map_invalidate(struct pblk *pblk, struct ppa_addr ppa) in pblk_map_invalidate() argument
211 BUG_ON(pblk_addr_in_cache(ppa)); in pblk_map_invalidate()
212 BUG_ON(pblk_ppa_empty(ppa)); in pblk_map_invalidate()
215 line = pblk_ppa_to_line(pblk, ppa); in pblk_map_invalidate()
216 paddr = pblk_dev_ppa_to_line_addr(pblk, ppa); in pblk_map_invalidate()
228 struct ppa_addr ppa; in pblk_invalidate_range() local
230 ppa = pblk_trans_map_get(pblk, lba); in pblk_invalidate_range()
232 if (!pblk_addr_in_cache(ppa) && !pblk_ppa_empty(ppa)) in pblk_invalidate_range()
233 pblk_map_invalidate(pblk, ppa); in pblk_invalidate_range()
235 pblk_ppa_set_empty(&ppa); in pblk_invalidate_range()
236 pblk_trans_map_set(pblk, lba, ppa); in pblk_invalidate_range()
531 struct ppa_addr *ppa = &ppa_list[i]; in pblk_check_chunk_state_update() local
532 struct nvm_chk_meta *chunk = pblk_dev_ppa_to_chunk(pblk, *ppa); in pblk_check_chunk_state_update()
533 u64 caddr = pblk_dev_ppa_to_chunk_addr(pblk, *ppa); in pblk_check_chunk_state_update()
537 ppa, NVM_CHK_ST_OPEN); in pblk_check_chunk_state_update()
540 ppa, NVM_CHK_ST_CLOSED); in pblk_check_chunk_state_update()
805 struct ppa_addr ppa = addr_to_gen_ppa(pblk, paddr, line_id); in pblk_line_emeta_read() local
806 int pos = pblk_ppa_to_pos(geo, ppa); in pblk_line_emeta_read()
818 ppa = addr_to_gen_ppa(pblk, paddr, line_id); in pblk_line_emeta_read()
819 pos = pblk_ppa_to_pos(geo, ppa); in pblk_line_emeta_read()
856 struct ppa_addr ppa) in pblk_setup_e_rq() argument
859 rqd->ppa_addr = ppa; in pblk_setup_e_rq()
865 static int pblk_blk_erase_sync(struct pblk *pblk, struct ppa_addr ppa) in pblk_blk_erase_sync() argument
870 trace_pblk_chunk_reset(pblk_disk_name(pblk), &ppa, in pblk_blk_erase_sync()
873 pblk_setup_e_rq(pblk, &rqd, ppa); in pblk_blk_erase_sync()
888 struct ppa_addr ppa; in pblk_line_erase() local
901 ppa = pblk->luns[bit].bppa; /* set ch and lun */ in pblk_line_erase()
902 ppa.a.blk = line->id; in pblk_line_erase()
908 ret = pblk_blk_erase_sync(pblk, ppa); in pblk_line_erase()
1436 void pblk_ppa_to_line_put(struct pblk *pblk, struct ppa_addr ppa) in pblk_ppa_to_line_put() argument
1440 line = pblk_ppa_to_line(pblk, ppa); in pblk_ppa_to_line_put()
1689 int pblk_blk_erase_async(struct pblk *pblk, struct ppa_addr ppa) in pblk_blk_erase_async() argument
1696 pblk_setup_e_rq(pblk, rqd, ppa); in pblk_blk_erase_async()
1702 &ppa, PBLK_CHUNK_RESET_START); in pblk_blk_erase_async()
1713 pblk_ppa_to_line_id(ppa), in pblk_blk_erase_async()
1714 pblk_ppa_to_pos(geo, ppa)); in pblk_blk_erase_async()
1897 void pblk_down_chunk(struct pblk *pblk, struct ppa_addr ppa) in pblk_down_chunk() argument
1901 int pos = pblk_ppa_to_pos(geo, ppa); in pblk_down_chunk()
1906 void pblk_down_rq(struct pblk *pblk, struct ppa_addr ppa, in pblk_down_rq() argument
1911 int pos = pblk_ppa_to_pos(geo, ppa); in pblk_down_rq()
1922 void pblk_up_chunk(struct pblk *pblk, struct ppa_addr ppa) in pblk_up_chunk() argument
1927 int pos = pblk_ppa_to_pos(geo, ppa); in pblk_up_chunk()
1947 void pblk_update_map(struct pblk *pblk, sector_t lba, struct ppa_addr ppa) in pblk_update_map() argument
1963 pblk_trans_map_set(pblk, lba, ppa); in pblk_update_map()
1967 void pblk_update_map_cache(struct pblk *pblk, sector_t lba, struct ppa_addr ppa) in pblk_update_map_cache() argument
1972 BUG_ON(!pblk_addr_in_cache(ppa)); in pblk_update_map_cache()
1973 BUG_ON(pblk_rb_pos_oob(&pblk->rwb, pblk_addr_to_cacheline(ppa))); in pblk_update_map_cache()
1976 pblk_update_map(pblk, lba, ppa); in pblk_update_map_cache()
2071 struct ppa_addr ppa; in pblk_lookup_l2p_seq() local
2073 ppa = ppas[i] = pblk_trans_map_get(pblk, blba + i); in pblk_lookup_l2p_seq()
2076 if (!pblk_ppa_empty(ppa) && !pblk_addr_in_cache(ppa)) { in pblk_lookup_l2p_seq()
2077 struct pblk_line *line = pblk_ppa_to_line(pblk, ppa); in pblk_lookup_l2p_seq()