• Home
  • Raw
  • Download

Lines Matching refs:w_ctx

141 		entry->w_ctx.flags = PBLK_WRITABLE_ENTRY;  in pblk_rb_init()
148 entry->w_ctx.flags = PBLK_WRITABLE_ENTRY; in pblk_rb_init()
149 bio_list_init(&entry->w_ctx.bios); in pblk_rb_init()
170 static void clean_wctx(struct pblk_w_ctx *w_ctx) in clean_wctx() argument
174 flags = READ_ONCE(w_ctx->flags); in clean_wctx()
179 smp_store_release(&w_ctx->flags, PBLK_WRITABLE_ENTRY); in clean_wctx()
180 pblk_ppa_set_empty(&w_ctx->ppa); in clean_wctx()
181 w_ctx->lba = ADDR_EMPTY; in clean_wctx()
242 struct pblk_w_ctx *w_ctx; in __pblk_rb_update_l2p() local
249 w_ctx = &entry->w_ctx; in __pblk_rb_update_l2p()
251 flags = READ_ONCE(entry->w_ctx.flags); in __pblk_rb_update_l2p()
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()
265 clean_wctx(w_ctx); in __pblk_rb_update_l2p()
328 struct pblk_w_ctx w_ctx, in __pblk_rb_write_entry() argument
333 entry->w_ctx.lba = w_ctx.lba; in __pblk_rb_write_entry()
334 entry->w_ctx.ppa = w_ctx.ppa; in __pblk_rb_write_entry()
338 struct pblk_w_ctx w_ctx, unsigned int ring_pos) in pblk_rb_write_entry_user() argument
345 flags = READ_ONCE(entry->w_ctx.flags); in pblk_rb_write_entry_user()
351 __pblk_rb_write_entry(rb, data, w_ctx, entry); in pblk_rb_write_entry_user()
353 pblk_update_map_cache(pblk, w_ctx.lba, entry->cacheline); in pblk_rb_write_entry_user()
354 flags = w_ctx.flags | PBLK_WRITTEN_DATA; in pblk_rb_write_entry_user()
357 smp_store_release(&entry->w_ctx.flags, flags); in pblk_rb_write_entry_user()
361 struct pblk_w_ctx w_ctx, struct pblk_line *line, in pblk_rb_write_entry_gc() argument
369 flags = READ_ONCE(entry->w_ctx.flags); in pblk_rb_write_entry_gc()
375 __pblk_rb_write_entry(rb, data, w_ctx, entry); in pblk_rb_write_entry_gc()
377 if (!pblk_update_map_gc(pblk, w_ctx.lba, entry->cacheline, line, paddr)) in pblk_rb_write_entry_gc()
378 entry->w_ctx.lba = ADDR_EMPTY; in pblk_rb_write_entry_gc()
380 flags = w_ctx.flags | PBLK_WRITTEN_DATA; in pblk_rb_write_entry_gc()
383 smp_store_release(&entry->w_ctx.flags, flags); in pblk_rb_write_entry_gc()
411 bio_list_add(&entry->w_ctx.bios, bio); in pblk_rb_flush_point_set()
583 flags = READ_ONCE(entry->w_ctx.flags); in pblk_rb_read_to_bio()
595 smp_store_release(&entry->w_ctx.flags, flags); in pblk_rb_read_to_bio()
605 smp_store_release(&entry->w_ctx.flags, flags); in pblk_rb_read_to_bio()
613 smp_store_release(&entry->w_ctx.flags, flags); in pblk_rb_read_to_bio()
649 struct pblk_w_ctx *w_ctx; in pblk_rb_copy_to_bio() local
662 w_ctx = &entry->w_ctx; in pblk_rb_copy_to_bio()
663 flags = READ_ONCE(w_ctx->flags); in pblk_rb_copy_to_bio()
671 if (!pblk_ppa_comp(l2p_ppa, ppa) || w_ctx->lba != lba || in pblk_rb_copy_to_bio()
688 return &rb->entries[entry].w_ctx; in pblk_rb_w_ctx()