/kernel/linux/linux-5.10/drivers/lightnvm/ |
H A D | pblk-trace.h | 42 TP_PROTO(const char *name, struct ppa_addr *ppa, int state), 44 TP_ARGS(name, ppa, state), 48 __field(u64, ppa) 54 __entry->ppa = ppa->ppa; 59 (u64)(((struct ppa_addr *)(&__entry->ppa))->m.grp), 60 (u64)(((struct ppa_addr *)(&__entry->ppa))->m.pu), 61 (u64)(((struct ppa_addr *)(&__entry->ppa))->m.chk), 68 TP_PROTO(const char *name, struct ppa_addr *ppa, in [all...] |
H A D | pblk.h | 144 struct ppa_addr ppa; /* Physic addr. associated with entry */ member 182 * contain a device ppa address (instead 475 atomic_t sec_to_update; /* Outstanding L2P updates to ppa */ 742 struct ppa_addr ppa); 775 struct ppa_addr ppa); 785 void pblk_ppa_to_line_put(struct pblk *pblk, struct ppa_addr ppa); 817 void pblk_down_rq(struct pblk *pblk, struct ppa_addr ppa, 819 void pblk_down_chunk(struct pblk *pblk, struct ppa_addr ppa); 820 void pblk_up_chunk(struct pblk *pblk, struct ppa_addr ppa); 826 void pblk_map_invalidate(struct pblk *pblk, struct ppa_addr ppa); 981 struct ppa_addr ppa; addr_to_gen_ppa() local 1083 struct ppa_addr ppa; pblk_trans_map_get() local 1098 pblk_trans_map_set(struct pblk *pblk, sector_t lba, struct ppa_addr ppa) pblk_trans_map_set() argument 1127 pblk_addr_in_cache(struct ppa_addr ppa) pblk_addr_in_cache() argument 1132 pblk_addr_to_cacheline(struct ppa_addr ppa) pblk_addr_to_cacheline() argument 1234 struct ppa_addr *ppa; pblk_boundary_ppa_checks() local [all...] |
H A D | pblk-core.c | 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_b in pblk_mark_bb() 131 struct ppa_addr ppa; pblk_get_chunk_meta() local 151 pblk_chunk_get_off(struct pblk *pblk, struct nvm_chk_meta *meta, struct ppa_addr ppa) pblk_chunk_get_off() argument 204 pblk_map_invalidate(struct pblk *pblk, struct ppa_addr ppa) pblk_map_invalidate() argument 228 struct ppa_addr ppa; pblk_invalidate_range() local 531 struct ppa_addr *ppa = &ppa_list[i]; pblk_check_chunk_state_update() local 537 ppa, NVM_CHK_ST_OPEN); pblk_check_chunk_state_update() local 540 ppa, NVM_CHK_ST_CLOSED); pblk_check_chunk_state_update() local 805 struct ppa_addr ppa = addr_to_gen_ppa(pblk, paddr, line_id); pblk_line_emeta_read() local 855 pblk_setup_e_rq(struct pblk *pblk, struct nvm_rq *rqd, struct ppa_addr ppa) pblk_setup_e_rq() argument 865 pblk_blk_erase_sync(struct pblk *pblk, struct ppa_addr ppa) pblk_blk_erase_sync() argument 870 trace_pblk_chunk_reset(pblk_disk_name(pblk), &ppa, pblk_blk_erase_sync() local 888 struct ppa_addr ppa; pblk_line_erase() local 1436 pblk_ppa_to_line_put(struct pblk *pblk, struct ppa_addr ppa) pblk_ppa_to_line_put() argument 1689 pblk_blk_erase_async(struct pblk *pblk, struct ppa_addr ppa) pblk_blk_erase_async() argument 1702 &ppa, PBLK_CHUNK_RESET_START); pblk_blk_erase_async() local 1897 pblk_down_chunk(struct pblk *pblk, struct ppa_addr ppa) pblk_down_chunk() argument 1906 pblk_down_rq(struct pblk *pblk, struct ppa_addr ppa, unsigned long *lun_bitmap) pblk_down_rq() argument 1922 pblk_up_chunk(struct pblk *pblk, struct ppa_addr ppa) pblk_up_chunk() argument 1947 pblk_update_map(struct pblk *pblk, sector_t lba, struct ppa_addr ppa) pblk_update_map() argument 1967 pblk_update_map_cache(struct pblk *pblk, sector_t lba, struct ppa_addr ppa) pblk_update_map_cache() argument 2071 struct ppa_addr ppa; pblk_lookup_l2p_seq() local [all...] |
H A D | core.c | 186 luns[lunid].ppa = 0; in nvm_create_tgt_dev() 677 struct ppa_addr ppa; in nvm_set_rqd_ppalist() local 698 ppa = ppas[i]; in nvm_set_rqd_ppalist() 699 ppa.g.pl = pl_idx; in nvm_set_rqd_ppalist() 700 rqd->ppa_list[(pl_idx * nr_ppas) + i] = ppa; in nvm_set_rqd_ppalist() 824 static int nvm_bb_chunk_sense(struct nvm_dev *dev, struct ppa_addr ppa) in nvm_bb_chunk_sense() argument 844 rqd.ppa_addr = generic_to_dev_addr(dev, ppa); in nvm_bb_chunk_sense() 859 static int nvm_bb_chunk_scan(struct nvm_dev *dev, struct ppa_addr ppa, in nvm_bb_chunk_scan() argument 866 ret = nvm_bb_chunk_sense(dev, ppa); in nvm_bb_chunk_scan() 891 ppa in nvm_bb_chunk_scan() 956 nvm_bb_to_chunk(struct nvm_dev *dev, struct ppa_addr ppa, u8 *blks, int nr_blks, struct nvm_chk_meta *meta) nvm_bb_to_chunk() argument 1000 struct ppa_addr ppa; nvm_get_bb_meta() local 1050 nvm_get_chunk_meta(struct nvm_tgt_dev *tgt_dev, struct ppa_addr ppa, int nchks, struct nvm_chk_meta *meta) nvm_get_chunk_meta() argument [all...] |
H A D | pblk-recovery.c | 59 struct ppa_addr ppa; in pblk_recov_l2p_from_emeta() local 62 ppa = addr_to_gen_ppa(pblk, i, line->id); in pblk_recov_l2p_from_emeta() 63 pos = pblk_ppa_to_pos(geo, ppa); in pblk_recov_l2p_from_emeta() 80 pblk_update_map(pblk, le64_to_cpu(lba_list[i]), ppa); in pblk_recov_l2p_from_emeta() 233 struct ppa_addr ppa; in pblk_recov_pad_line() local 237 ppa = addr_to_gen_ppa(pblk, w_ptr, line->id); in pblk_recov_pad_line() 238 pos = pblk_ppa_to_pos(geo, ppa); in pblk_recov_pad_line() 242 ppa = addr_to_gen_ppa(pblk, w_ptr, line->id); in pblk_recov_pad_line() 243 pos = pblk_ppa_to_pos(geo, ppa); in pblk_recov_pad_line() 308 struct ppa_addr ppa; in pblk_get_stripe_chunk() local 406 struct ppa_addr ppa; pblk_recov_scan_oob() local 550 struct ppa_addr ppa; pblk_line_emeta_start() local [all...] |
H A D | pblk-read.c | 29 sector_t lba, struct ppa_addr ppa) in pblk_read_from_cache() 32 /* Callers must ensure that the ppa points to a cache address */ in pblk_read_from_cache() 33 BUG_ON(pblk_ppa_empty(ppa)); in pblk_read_from_cache() 34 BUG_ON(!pblk_addr_in_cache(ppa)); in pblk_read_from_cache() 37 return pblk_rb_copy_to_bio(&pblk->rwb, bio, lba, ppa); in pblk_read_from_cache() 228 struct ppa_addr ppa; in pblk_read_rq() local 230 pblk_lookup_l2p_seq(pblk, &ppa, lba, 1, from_cache); in pblk_read_rq() 237 if (pblk_ppa_empty(ppa)) { in pblk_read_rq() 247 if (pblk_addr_in_cache(ppa)) { in pblk_read_rq() 248 if (!pblk_read_from_cache(pblk, bio, lba, ppa)) { in pblk_read_rq() 28 pblk_read_from_cache(struct pblk *pblk, struct bio *bio, sector_t lba, struct ppa_addr ppa) pblk_read_from_cache() argument [all...] |
H A D | pblk-write.c | 107 /* Map remaining sectors in chunk, starting from ppa */ 108 static void pblk_map_remaining(struct pblk *pblk, struct ppa_addr *ppa, in pblk_map_remaining() argument 112 struct ppa_addr map_ppa = *ppa; in pblk_map_remaining() 119 line = pblk_ppa_to_line(pblk, *ppa); in pblk_map_remaining() 179 line = pblk_ppa_to_line(pblk, w_ctx->ppa); in pblk_prepare_resubmit() 441 struct ppa_addr ppa, ppa_opt; in pblk_valid_meta_ppa() local 455 ppa = addr_to_gen_ppa(pblk, paddr, 0); in pblk_valid_meta_ppa() 463 if (unlikely(pblk_ppa_comp(ppa_opt, ppa))) in pblk_valid_meta_ppa()
|
H A D | pblk-cache.c | 49 pblk_ppa_set_empty(&w_ctx.ppa); in pblk_write_to_cache() 109 pblk_ppa_set_empty(&w_ctx.ppa); in pblk_write_gc_to_cache()
|
H A D | pblk-rb.c | 180 pblk_ppa_set_empty(&w_ctx->ppa); in clean_wctx() 259 pblk_update_map_dev(pblk, w_ctx->lba, w_ctx->ppa, in __pblk_rb_update_l2p() 262 line = pblk_ppa_to_line(pblk, w_ctx->ppa); in __pblk_rb_update_l2p() 334 entry->w_ctx.ppa = w_ctx.ppa; in __pblk_rb_write_entry() 645 struct ppa_addr ppa) in pblk_rb_copy_to_bio() 651 u64 pos = pblk_addr_to_cacheline(ppa); in pblk_rb_copy_to_bio() 671 if (!pblk_ppa_comp(l2p_ppa, ppa) || w_ctx->lba != lba || in pblk_rb_copy_to_bio() 644 pblk_rb_copy_to_bio(struct pblk_rb *rb, struct bio *bio, sector_t lba, struct ppa_addr ppa) pblk_rb_copy_to_bio() argument
|
H A D | pblk-init.c | 149 struct ppa_addr ppa; in pblk_l2p_init() local 162 pblk_ppa_set_empty(&ppa); in pblk_l2p_init() 165 pblk_trans_map_set(pblk, i, ppa); in pblk_l2p_init() 721 struct ppa_addr ppa; in pblk_setup_line_meta_chk() local 724 ppa = rlun->bppa; in pblk_setup_line_meta_chk() 725 pos = pblk_ppa_to_pos(geo, ppa); in pblk_setup_line_meta_chk() 728 ppa.m.chk = line->id; in pblk_setup_line_meta_chk() 729 chunk_meta = pblk_chunk_get_off(pblk, meta, ppa); in pblk_setup_line_meta_chk() 738 trace_pblk_chunk_state(pblk_disk_name(pblk), &ppa, in pblk_setup_line_meta_chk() local
|
H A D | pblk-map.c | 16 * pblk-map.c - pblk's lba-ppa mapping strategy 64 /* ppa to be sent to the device */ in pblk_map_page_data() 78 w_ctx->ppa = ppa_list[i]; in pblk_map_page_data()
|
/kernel/linux/linux-5.10/include/linux/ |
H A D | lightnvm.h | 76 u64 ppa; member 303 u64 ppa_status; /* ppa media status */ 449 l.ppa = ((u64)r.g.ch) << ppaf->ch_offset; in generic_to_dev_addr() 450 l.ppa |= ((u64)r.g.lun) << ppaf->lun_offset; in generic_to_dev_addr() 451 l.ppa |= ((u64)r.g.blk) << ppaf->blk_offset; in generic_to_dev_addr() 452 l.ppa |= ((u64)r.g.pg) << ppaf->pg_offset; in generic_to_dev_addr() 453 l.ppa |= ((u64)r.g.pl) << ppaf->pln_offset; in generic_to_dev_addr() 454 l.ppa |= ((u64)r.g.sec) << ppaf->sec_offset; in generic_to_dev_addr() 458 l.ppa = ((u64)r.m.grp) << lbaf->ch_offset; in generic_to_dev_addr() 459 l.ppa | in generic_to_dev_addr() 597 nvm_next_ppa_in_chk(struct nvm_tgt_dev *dev, struct ppa_addr *ppa) nvm_next_ppa_in_chk() argument [all...] |
/kernel/linux/linux-5.10/drivers/nvme/host/ |
H A D | lightnvm.c | 475 static int nvme_nvm_get_bb_tbl(struct nvm_dev *nvmdev, struct ppa_addr ppa, in nvme_nvm_get_bb_tbl() argument 490 c.get_bb.spba = cpu_to_le64(ppa.ppa); in nvme_nvm_get_bb_tbl() 540 c.set_bb.spba = cpu_to_le64(ppas->ppa); in nvme_nvm_set_bb_tbl() 563 struct ppa_addr ppa; in nvme_nvm_get_chk_meta() local 580 ppa.ppa = slba; in nvme_nvm_get_chk_meta() 581 ppa = dev_to_generic_addr(ndev, ppa); in nvme_nvm_get_chk_meta() 583 log_pos = ppa in nvme_nvm_get_chk_meta() [all...] |
/kernel/liteos_a/arch/arm/arm/src/ |
H A D | los_arch_mmu.c | 609 STATIC STATUS_T OsGetL2Table(LosArchMmu *archMmu, UINT32 l1Index, paddr_t *ppa) in OsGetL2Table() argument 620 *ppa = (PADDR_T)ROUNDDOWN(MMU_DESCRIPTOR_L1_PAGE_TABLE_ADDR(ttEntry), MMU_DESCRIPTOR_L2_SMALL_SIZE) + in OsGetL2Table() 645 *ppa = OsKVaddrToPaddr((VADDR_T)kvaddr) + l2Offset; in OsGetL2Table()
|
/kernel/linux/linux-5.10/arch/x86/kvm/svm/ |
H A D | avic.c | 200 phys_addr_t ppa = __sme_set(page_to_phys(kvm_svm->avic_physical_id_table_page)); in avic_init_vmcb() local 204 vmcb->control.avic_physical_id = ppa & AVIC_HPA_MASK; in avic_init_vmcb()
|
/kernel/linux/linux-6.6/arch/x86/kvm/svm/ |
H A D | avic.c | 249 phys_addr_t ppa = __sme_set(page_to_phys(kvm_svm->avic_physical_id_table_page)); in avic_init_vmcb() local 253 vmcb->control.avic_physical_id = ppa & AVIC_HPA_MASK; in avic_init_vmcb()
|
/kernel/linux/linux-5.10/drivers/scsi/ |
H A D | Makefile | 117 obj-$(CONFIG_SCSI_PPA) += ppa.o
|
/kernel/linux/linux-6.6/drivers/scsi/ |
H A D | Makefile | 115 obj-$(CONFIG_SCSI_PPA) += ppa.o
|