w_ctx 25 drivers/lightnvm/pblk-cache.c struct pblk_w_ctx w_ctx; w_ctx 51 drivers/lightnvm/pblk-cache.c pblk_ppa_set_empty(&w_ctx.ppa); w_ctx 52 drivers/lightnvm/pblk-cache.c w_ctx.flags = flags; w_ctx 54 drivers/lightnvm/pblk-cache.c w_ctx.flags |= PBLK_FLUSH_ENTRY; w_ctx 64 drivers/lightnvm/pblk-cache.c w_ctx.lba = lba + i; w_ctx 67 drivers/lightnvm/pblk-cache.c pblk_rb_write_entry_user(&pblk->rwb, data, w_ctx, pos); w_ctx 95 drivers/lightnvm/pblk-cache.c struct pblk_w_ctx w_ctx; w_ctx 110 drivers/lightnvm/pblk-cache.c w_ctx.flags = PBLK_IOTYPE_GC; w_ctx 111 drivers/lightnvm/pblk-cache.c pblk_ppa_set_empty(&w_ctx.ppa); w_ctx 117 drivers/lightnvm/pblk-cache.c w_ctx.lba = gc_rq->lba_list[i]; w_ctx 120 drivers/lightnvm/pblk-cache.c pblk_rb_write_entry_gc(&pblk->rwb, data, w_ctx, gc_rq->line, w_ctx 30 drivers/lightnvm/pblk-map.c struct pblk_w_ctx *w_ctx; w_ctx 77 drivers/lightnvm/pblk-map.c w_ctx = pblk_rb_w_ctx(&pblk->rwb, sentry + i); w_ctx 78 drivers/lightnvm/pblk-map.c w_ctx->ppa = ppa_list[i]; w_ctx 79 drivers/lightnvm/pblk-map.c meta->lba = cpu_to_le64(w_ctx->lba); w_ctx 80 drivers/lightnvm/pblk-map.c lba_list[paddr] = cpu_to_le64(w_ctx->lba); w_ctx 141 drivers/lightnvm/pblk-rb.c entry->w_ctx.flags = PBLK_WRITABLE_ENTRY; w_ctx 148 drivers/lightnvm/pblk-rb.c entry->w_ctx.flags = PBLK_WRITABLE_ENTRY; w_ctx 149 drivers/lightnvm/pblk-rb.c bio_list_init(&entry->w_ctx.bios); w_ctx 170 drivers/lightnvm/pblk-rb.c static void clean_wctx(struct pblk_w_ctx *w_ctx) w_ctx 174 drivers/lightnvm/pblk-rb.c flags = READ_ONCE(w_ctx->flags); w_ctx 179 drivers/lightnvm/pblk-rb.c smp_store_release(&w_ctx->flags, PBLK_WRITABLE_ENTRY); w_ctx 180 drivers/lightnvm/pblk-rb.c pblk_ppa_set_empty(&w_ctx->ppa); w_ctx 181 drivers/lightnvm/pblk-rb.c w_ctx->lba = ADDR_EMPTY; w_ctx 242 drivers/lightnvm/pblk-rb.c struct pblk_w_ctx *w_ctx; w_ctx 249 drivers/lightnvm/pblk-rb.c w_ctx = &entry->w_ctx; w_ctx 251 drivers/lightnvm/pblk-rb.c flags = READ_ONCE(entry->w_ctx.flags); w_ctx 259 drivers/lightnvm/pblk-rb.c pblk_update_map_dev(pblk, w_ctx->lba, w_ctx->ppa, w_ctx 262 drivers/lightnvm/pblk-rb.c line = pblk_ppa_to_line(pblk, w_ctx->ppa); w_ctx 265 drivers/lightnvm/pblk-rb.c clean_wctx(w_ctx); w_ctx 328 drivers/lightnvm/pblk-rb.c struct pblk_w_ctx w_ctx, w_ctx 333 drivers/lightnvm/pblk-rb.c entry->w_ctx.lba = w_ctx.lba; w_ctx 334 drivers/lightnvm/pblk-rb.c entry->w_ctx.ppa = w_ctx.ppa; w_ctx 338 drivers/lightnvm/pblk-rb.c struct pblk_w_ctx w_ctx, unsigned int ring_pos) w_ctx 345 drivers/lightnvm/pblk-rb.c flags = READ_ONCE(entry->w_ctx.flags); w_ctx 351 drivers/lightnvm/pblk-rb.c __pblk_rb_write_entry(rb, data, w_ctx, entry); w_ctx 353 drivers/lightnvm/pblk-rb.c pblk_update_map_cache(pblk, w_ctx.lba, entry->cacheline); w_ctx 354 drivers/lightnvm/pblk-rb.c flags = w_ctx.flags | PBLK_WRITTEN_DATA; w_ctx 357 drivers/lightnvm/pblk-rb.c smp_store_release(&entry->w_ctx.flags, flags); w_ctx 361 drivers/lightnvm/pblk-rb.c struct pblk_w_ctx w_ctx, struct pblk_line *line, w_ctx 369 drivers/lightnvm/pblk-rb.c flags = READ_ONCE(entry->w_ctx.flags); w_ctx 375 drivers/lightnvm/pblk-rb.c __pblk_rb_write_entry(rb, data, w_ctx, entry); w_ctx 377 drivers/lightnvm/pblk-rb.c if (!pblk_update_map_gc(pblk, w_ctx.lba, entry->cacheline, line, paddr)) w_ctx 378 drivers/lightnvm/pblk-rb.c entry->w_ctx.lba = ADDR_EMPTY; w_ctx 380 drivers/lightnvm/pblk-rb.c flags = w_ctx.flags | PBLK_WRITTEN_DATA; w_ctx 383 drivers/lightnvm/pblk-rb.c smp_store_release(&entry->w_ctx.flags, flags); w_ctx 411 drivers/lightnvm/pblk-rb.c bio_list_add(&entry->w_ctx.bios, bio); w_ctx 583 drivers/lightnvm/pblk-rb.c flags = READ_ONCE(entry->w_ctx.flags); w_ctx 595 drivers/lightnvm/pblk-rb.c smp_store_release(&entry->w_ctx.flags, flags); w_ctx 605 drivers/lightnvm/pblk-rb.c smp_store_release(&entry->w_ctx.flags, flags); w_ctx 613 drivers/lightnvm/pblk-rb.c smp_store_release(&entry->w_ctx.flags, flags); w_ctx 649 drivers/lightnvm/pblk-rb.c struct pblk_w_ctx *w_ctx; w_ctx 662 drivers/lightnvm/pblk-rb.c w_ctx = &entry->w_ctx; w_ctx 663 drivers/lightnvm/pblk-rb.c flags = READ_ONCE(w_ctx->flags); w_ctx 671 drivers/lightnvm/pblk-rb.c if (!pblk_ppa_comp(l2p_ppa, ppa) || w_ctx->lba != lba || w_ctx 688 drivers/lightnvm/pblk-rb.c return &rb->entries[entry].w_ctx; w_ctx 31 drivers/lightnvm/pblk-write.c struct pblk_w_ctx *w_ctx; w_ctx 35 drivers/lightnvm/pblk-write.c w_ctx = pblk_rb_w_ctx(rwb, pos); w_ctx 36 drivers/lightnvm/pblk-write.c flags = READ_ONCE(w_ctx->flags); w_ctx 41 drivers/lightnvm/pblk-write.c smp_store_release(&w_ctx->flags, flags); w_ctx 48 drivers/lightnvm/pblk-write.c while ((original_bio = bio_list_pop(&w_ctx->bios))) w_ctx 153 drivers/lightnvm/pblk-write.c struct pblk_w_ctx *w_ctx; w_ctx 161 drivers/lightnvm/pblk-write.c w_ctx = &entry->w_ctx; w_ctx 164 drivers/lightnvm/pblk-write.c if (w_ctx->lba != ADDR_EMPTY) { w_ctx 165 drivers/lightnvm/pblk-write.c ppa_l2p = pblk_trans_map_get(pblk, w_ctx->lba); w_ctx 167 drivers/lightnvm/pblk-write.c w_ctx->lba = ADDR_EMPTY; w_ctx 171 drivers/lightnvm/pblk-write.c flags = READ_ONCE(w_ctx->flags); w_ctx 174 drivers/lightnvm/pblk-write.c smp_store_release(&w_ctx->flags, flags); w_ctx 179 drivers/lightnvm/pblk-write.c line = pblk_ppa_to_line(pblk, w_ctx->ppa); w_ctx 151 drivers/lightnvm/pblk.h struct pblk_w_ctx w_ctx; /* Context for this entry */ w_ctx 730 drivers/lightnvm/pblk.h struct pblk_w_ctx w_ctx, unsigned int pos); w_ctx 732 drivers/lightnvm/pblk.h struct pblk_w_ctx w_ctx, struct pblk_line *line,