Home
last modified time | relevance | path

Searched refs:pblk (Results 1 - 25 of 51) sorted by relevance

123

/kernel/linux/linux-5.10/drivers/lightnvm/
H A Dpblk-init.c19 * pblk-init.c - pblk's initialization.
22 #include "pblk.h"
23 #include "pblk-trace.h"
52 struct pblk *pblk = bio->bi_disk->queue->queuedata; in pblk_submit_bio() local
55 pblk_discard(pblk, bio); in pblk_submit_bio()
67 pblk_submit_read(pblk, bio); in pblk_submit_bio()
73 if (pblk_get_secs(bio) > pblk_rl_max_io(&pblk->rl)) in pblk_submit_bio()
76 pblk_write_to_cache(pblk, bi in pblk_submit_bio()
88 pblk_trans_map_size(struct pblk *pblk) pblk_trans_map_size() argument
99 pblk_l2p_crc(struct pblk *pblk) pblk_l2p_crc() argument
110 pblk_l2p_free(struct pblk *pblk) pblk_l2p_free() argument
115 pblk_l2p_recover(struct pblk *pblk, bool factory_init) pblk_l2p_recover() argument
146 pblk_l2p_init(struct pblk *pblk, bool factory_init) pblk_l2p_init() argument
174 pblk_rwb_free(struct pblk *pblk) pblk_rwb_free() argument
182 pblk_rwb_init(struct pblk *pblk) pblk_rwb_init() argument
201 pblk_set_addrf_12(struct pblk *pblk, struct nvm_geo *geo, struct nvm_addrf_12 *dst) pblk_set_addrf_12() argument
274 pblk_set_addrf(struct pblk *pblk) pblk_set_addrf() argument
376 pblk_core_init(struct pblk *pblk) pblk_core_init() argument
518 pblk_core_free(struct pblk *pblk) pblk_core_free() argument
540 pblk_line_mg_free(struct pblk *pblk) pblk_line_mg_free() argument
572 pblk_lines_free(struct pblk *pblk) pblk_lines_free() argument
591 pblk_luns_init(struct pblk *pblk) pblk_luns_init() argument
625 calc_emeta_len(struct pblk *pblk) calc_emeta_len() argument
653 pblk_set_provision(struct pblk *pblk, int nr_free_chks) pblk_set_provision() argument
709 pblk_setup_line_meta_chk(struct pblk *pblk, struct pblk_line *line, struct nvm_chk_meta *meta) pblk_setup_line_meta_chk() argument
756 pblk_setup_line_meta(struct pblk *pblk, struct pblk_line *line, void *chunk_meta, int line_id) pblk_setup_line_meta() argument
788 pblk_alloc_line_meta(struct pblk *pblk, struct pblk_line *line) pblk_alloc_line_meta() argument
821 pblk_line_mg_init(struct pblk *pblk) pblk_line_mg_init() argument
938 pblk_line_meta_init(struct pblk *pblk) pblk_line_meta_init() argument
999 pblk_lines_init(struct pblk *pblk) pblk_lines_init() argument
1072 pblk_writer_init(struct pblk *pblk) pblk_writer_init() argument
1090 pblk_writer_stop(struct pblk *pblk) pblk_writer_stop() argument
1106 pblk_free(struct pblk *pblk) pblk_free() argument
1116 pblk_tear_down(struct pblk *pblk, bool graceful) pblk_tear_down() argument
1130 struct pblk *pblk = private; pblk_exit() local
1144 struct pblk *pblk = private; pblk_capacity() local
1155 struct pblk *pblk; pblk_init() local
[all...]
H A Dpblk-write.c16 * pblk-write.c - pblk's write path from write buffer to media
19 #include "pblk.h"
20 #include "pblk-trace.h"
22 static unsigned long pblk_end_w_bio(struct pblk *pblk, struct nvm_rq *rqd, in pblk_end_w_bio() argument
26 struct pblk_rb *rwb = &pblk->rwb; in pblk_end_w_bio()
53 pblk_bio_free_pages(pblk, rqd->bio, c_ctx->nr_valid, in pblk_end_w_bio()
57 atomic_long_add(rqd->nr_ppas, &pblk->sync_writes); in pblk_end_w_bio()
60 ret = pblk_rb_sync_advance(&pblk in pblk_end_w_bio()
68 pblk_end_queued_w_bio(struct pblk *pblk, struct nvm_rq *rqd, struct pblk_c_ctx *c_ctx) pblk_end_queued_w_bio() argument
76 pblk_complete_write(struct pblk *pblk, struct nvm_rq *rqd, struct pblk_c_ctx *c_ctx) pblk_complete_write() argument
108 pblk_map_remaining(struct pblk *pblk, struct ppa_addr *ppa, int rqd_ppas) pblk_map_remaining() argument
147 pblk_prepare_resubmit(struct pblk *pblk, unsigned int sentry, unsigned int nr_entries) pblk_prepare_resubmit() argument
186 pblk_queue_resubmit(struct pblk *pblk, struct pblk_c_ctx *c_ctx) pblk_queue_resubmit() argument
212 struct pblk *pblk = recovery->pblk; pblk_submit_rec() local
235 pblk_end_w_fail(struct pblk *pblk, struct nvm_rq *rqd) pblk_end_w_fail() argument
254 struct pblk *pblk = rqd->private; pblk_end_io_write() local
274 struct pblk *pblk = rqd->private; pblk_end_io_write_meta() local
302 pblk_alloc_w_rq(struct pblk *pblk, struct nvm_rq *rqd, unsigned int nr_secs, nvm_end_io_fn(*end_io)) pblk_alloc_w_rq() argument
315 pblk_setup_w_rq(struct pblk *pblk, struct nvm_rq *rqd, struct ppa_addr *erase_ppa) pblk_setup_w_rq() argument
348 pblk_calc_secs_to_sync(struct pblk *pblk, unsigned int secs_avail, unsigned int secs_to_flush) pblk_calc_secs_to_sync() argument
367 pblk_submit_meta_io(struct pblk *pblk, struct pblk_line *meta_line) pblk_submit_meta_io() argument
433 pblk_valid_meta_ppa(struct pblk *pblk, struct pblk_line *meta_line, struct nvm_rq *data_rqd) pblk_valid_meta_ppa() argument
469 pblk_should_submit_meta_io(struct pblk *pblk, struct nvm_rq *data_rqd) pblk_should_submit_meta_io() argument
494 pblk_submit_io_set(struct pblk *pblk, struct nvm_rq *rqd) pblk_submit_io_set() argument
545 pblk_free_write_rqd(struct pblk *pblk, struct nvm_rq *rqd) pblk_free_write_rqd() argument
555 pblk_submit_write(struct pblk *pblk, int *secs_left) pblk_submit_write() argument
649 struct pblk *pblk = data; pblk_write_ts() local
[all...]
H A Dpblk-core.c16 * pblk-core.c - pblk's core functionality
22 #include "pblk.h"
23 #include "pblk-trace.h"
29 struct pblk *pblk = line_ws->pblk; in pblk_line_mark_bb() local
30 struct nvm_tgt_dev *dev = pblk->dev; in pblk_line_mark_bb()
39 line = pblk_ppa_to_line(pblk, *ppa); in pblk_line_mark_bb()
42 pblk_err(pblk, "faile in pblk_line_mark_bb()
50 pblk_mark_bb(struct pblk *pblk, struct pblk_line *line, struct ppa_addr ppa_addr) pblk_mark_bb() argument
79 __pblk_end_io_erase(struct pblk *pblk, struct nvm_rq *rqd) __pblk_end_io_erase() argument
115 struct pblk *pblk = rqd->private; pblk_end_io_erase() local
126 pblk_get_chunk_meta(struct pblk *pblk) pblk_get_chunk_meta() argument
151 pblk_chunk_get_off(struct pblk *pblk, struct nvm_chk_meta *meta, struct ppa_addr ppa) pblk_chunk_get_off() argument
164 __pblk_map_invalidate(struct pblk *pblk, struct pblk_line *line, u64 paddr) __pblk_map_invalidate() argument
204 pblk_map_invalidate(struct pblk *pblk, struct ppa_addr ppa) pblk_map_invalidate() argument
221 pblk_invalidate_range(struct pblk *pblk, sector_t slba, unsigned int nr_secs) pblk_invalidate_range() argument
241 pblk_alloc_rqd_meta(struct pblk *pblk, struct nvm_rq *rqd) pblk_alloc_rqd_meta() argument
259 pblk_free_rqd_meta(struct pblk *pblk, struct nvm_rq *rqd) pblk_free_rqd_meta() argument
269 pblk_alloc_rqd(struct pblk *pblk, int type) pblk_alloc_rqd() argument
297 pblk_free_rqd(struct pblk *pblk, struct nvm_rq *rqd, int type) pblk_free_rqd() argument
323 pblk_bio_free_pages(struct pblk *pblk, struct bio *bio, int off, int nr_pages) pblk_bio_free_pages() argument
339 pblk_bio_add_pages(struct pblk *pblk, struct bio *bio, gfp_t flags, int nr_pages) pblk_bio_add_pages() argument
363 pblk_write_kick(struct pblk *pblk) pblk_write_kick() argument
371 struct pblk *pblk = from_timer(pblk, t, wtimer); pblk_write_timer_fn() local
377 pblk_write_should_kick(struct pblk *pblk) pblk_write_should_kick() argument
385 pblk_wait_for_meta(struct pblk *pblk) pblk_wait_for_meta() argument
395 pblk_flush_writer(struct pblk *pblk) pblk_flush_writer() argument
407 pblk_line_gc_list(struct pblk *pblk, struct pblk_line *line) pblk_line_gc_list() argument
465 pblk_discard(struct pblk *pblk, struct bio *bio) pblk_discard() argument
473 pblk_log_write_err(struct pblk *pblk, struct nvm_rq *rqd) pblk_log_write_err() argument
481 pblk_log_read_err(struct pblk *pblk, struct nvm_rq *rqd) pblk_log_read_err() argument
505 pblk_set_sec_per_write(struct pblk *pblk, int sec_per_write) pblk_set_sec_per_write() argument
510 pblk_submit_io(struct pblk *pblk, struct nvm_rq *rqd, void *buf) pblk_submit_io() argument
524 pblk_check_chunk_state_update(struct pblk *pblk, struct nvm_rq *rqd) pblk_check_chunk_state_update() argument
544 pblk_submit_io_sync(struct pblk *pblk, struct nvm_rq *rqd, void *buf) pblk_submit_io_sync() argument
565 pblk_submit_io_sync_sem(struct pblk *pblk, struct nvm_rq *rqd, void *buf) pblk_submit_io_sync_sem() argument
578 pblk_calc_secs(struct pblk *pblk, unsigned long secs_avail, unsigned long secs_to_flush, bool skip_meta) pblk_calc_secs() argument
598 pblk_dealloc_page(struct pblk *pblk, struct pblk_line *line, int nr_secs) pblk_dealloc_page() argument
613 __pblk_alloc_page(struct pblk *pblk, struct pblk_line *line, int nr_secs) __pblk_alloc_page() argument
634 pblk_alloc_page(struct pblk *pblk, struct pblk_line *line, int nr_secs) pblk_alloc_page() argument
650 pblk_lookup_page(struct pblk *pblk, struct pblk_line *line) pblk_lookup_page() argument
662 pblk_line_smeta_start(struct pblk *pblk, struct pblk_line *line) pblk_line_smeta_start() argument
677 pblk_line_smeta_read(struct pblk *pblk, struct pblk_line *line) pblk_line_smeta_read() argument
717 pblk_line_smeta_write(struct pblk *pblk, struct pblk_line *line, u64 paddr) pblk_line_smeta_write() argument
764 pblk_line_emeta_read(struct pblk *pblk, struct pblk_line *line, void *emeta_buf) pblk_line_emeta_read() argument
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
885 pblk_line_erase(struct pblk *pblk, struct pblk_line *line) pblk_line_erase() argument
951 pblk_line_init_metadata(struct pblk *pblk, struct pblk_line *line, struct pblk_line *cur) pblk_line_init_metadata() argument
1034 pblk_line_alloc_bitmaps(struct pblk *pblk, struct pblk_line *line) pblk_line_alloc_bitmaps() argument
1059 pblk_line_init_bb(struct pblk *pblk, struct pblk_line *line, int init) pblk_line_init_bb() argument
1133 pblk_prepare_new_line(struct pblk *pblk, struct pblk_line *line) pblk_prepare_new_line() argument
1157 pblk_line_prepare(struct pblk *pblk, struct pblk_line *line) pblk_line_prepare() argument
1209 pblk_line_recov_alloc(struct pblk *pblk, struct pblk_line *line) pblk_line_recov_alloc() argument
1246 pblk_line_recov_close(struct pblk *pblk, struct pblk_line *line) pblk_line_recov_close() argument
1268 struct pblk *pblk = line->pblk; pblk_line_free() local
1277 pblk_line_get(struct pblk *pblk) pblk_line_get() argument
1330 pblk_line_retry(struct pblk *pblk, struct pblk_line *line) pblk_line_retry() argument
1364 pblk_set_space_limit(struct pblk *pblk) pblk_set_space_limit() argument
1371 pblk_line_get_first_data(struct pblk *pblk) pblk_line_get_first_data() argument
1436 pblk_ppa_to_line_put(struct pblk *pblk, struct ppa_addr ppa) pblk_ppa_to_line_put() argument
1444 pblk_rq_to_line_put(struct pblk *pblk, struct nvm_rq *rqd) pblk_rq_to_line_put() argument
1453 pblk_stop_writes(struct pblk *pblk, struct pblk_line *line) pblk_stop_writes() argument
1462 pblk_line_close_meta_sync(struct pblk *pblk) pblk_line_close_meta_sync() argument
1497 __pblk_pipeline_flush(struct pblk *pblk) __pblk_pipeline_flush() argument
1525 __pblk_pipeline_stop(struct pblk *pblk) __pblk_pipeline_stop() argument
1537 pblk_pipeline_stop(struct pblk *pblk) pblk_pipeline_stop() argument
1543 pblk_line_replace_data(struct pblk *pblk) pblk_line_replace_data() argument
1615 __pblk_line_put(struct pblk *pblk, struct pblk_line *line) __pblk_line_put() argument
1656 struct pblk *pblk = line_put_ws->pblk; pblk_line_put_ws() local
1666 struct pblk *pblk = line->pblk; pblk_line_put() local
1674 struct pblk *pblk = line->pblk; pblk_line_put_wq() local
1689 pblk_blk_erase_async(struct pblk *pblk, struct ppa_addr ppa) pblk_blk_erase_async() argument
1720 pblk_line_get_data(struct pblk *pblk) pblk_line_get_data() argument
1726 pblk_line_get_erase(struct pblk *pblk) pblk_line_get_erase() argument
1736 pblk_line_should_sync_meta(struct pblk *pblk) pblk_line_should_sync_meta() argument
1742 pblk_line_close(struct pblk *pblk, struct pblk_line *line) pblk_line_close() argument
1788 pblk_line_close_meta(struct pblk *pblk, struct pblk_line *line) pblk_line_close_meta() argument
1835 pblk_save_lba_list(struct pblk *pblk, struct pblk_line *line) pblk_save_lba_list() argument
1851 struct pblk *pblk = line_ws->pblk; pblk_line_close_ws() local
1865 pblk_gen_run_ws(struct pblk *pblk, struct pblk_line *line, void *priv, void (*work)(struct work_struct *), gfp_t gfp_mask, struct workqueue_struct *wq) pblk_gen_run_ws() argument
1881 __pblk_down_chunk(struct pblk *pblk, int pos) __pblk_down_chunk() argument
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
1933 pblk_up_rq(struct pblk *pblk, unsigned long *lun_bitmap) pblk_up_rq() 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
1979 pblk_update_map_gc(struct pblk *pblk, sector_t lba, struct ppa_addr ppa_new, struct pblk_line *gc_line, u64 paddr_gc) pblk_update_map_gc() argument
2017 pblk_update_map_dev(struct pblk *pblk, sector_t lba, struct ppa_addr ppa_mapped, struct ppa_addr ppa_cache) pblk_update_map_dev() argument
2064 pblk_lookup_l2p_seq(struct pblk *pblk, struct ppa_addr *ppas, sector_t blba, int nr_secs, bool *from_cache) pblk_lookup_l2p_seq() argument
2094 pblk_lookup_l2p_rand(struct pblk *pblk, struct ppa_addr *ppas, u64 *lba_list, int nr_secs) pblk_lookup_l2p_rand() argument
2115 pblk_get_meta_for_writes(struct pblk *pblk, struct nvm_rq *rqd) pblk_get_meta_for_writes() argument
2133 pblk_get_packed_meta(struct pblk *pblk, struct nvm_rq *rqd) pblk_get_packed_meta() argument
[all...]
H A Dpblk.h126 struct pblk *pblk; member
133 struct pblk *pblk; member
271 * pblk->max_write_pgs size, which in NVMe is
327 #define PBLK_MAGIC 0x70626c6b /*pblk*/
343 __le32 identifier; /* pblk identifier */
433 struct pblk *pblk; member
592 struct pblk { struct
702 struct pblk *pblk; global() member
945 emeta_to_lbas(struct pblk *pblk, struct line_emeta *emeta) emeta_to_lbas() argument
950 emeta_to_vsc(struct pblk *pblk, struct line_emeta *emeta) emeta_to_vsc() argument
965 pblk_ppa_to_line(struct pblk *pblk, struct ppa_addr p) pblk_ppa_to_line() argument
976 addr_to_gen_ppa(struct pblk *pblk, u64 paddr, u64 line_id) addr_to_gen_ppa() argument
1016 pblk_dev_ppa_to_chunk(struct pblk *pblk, struct ppa_addr p) pblk_dev_ppa_to_chunk() argument
1027 pblk_dev_ppa_to_chunk_addr(struct pblk *pblk, struct ppa_addr p) pblk_dev_ppa_to_chunk_addr() argument
1035 pblk_dev_ppa_to_line_addr(struct pblk *pblk, struct ppa_addr p) pblk_dev_ppa_to_line_addr() argument
1066 pblk_ppa32_to_ppa64(struct pblk *pblk, u32 ppa32) pblk_ppa32_to_ppa64() argument
1073 pblk_ppa64_to_ppa32(struct pblk *pblk, struct ppa_addr ppa64) pblk_ppa64_to_ppa32() argument
1080 pblk_trans_map_get(struct pblk *pblk, sector_t lba) pblk_trans_map_get() argument
1098 pblk_trans_map_set(struct pblk *pblk, sector_t lba, struct ppa_addr ppa) pblk_trans_map_set() argument
1147 pblk_calc_meta_header_crc(struct pblk *pblk, struct line_header *header) pblk_calc_meta_header_crc() argument
1158 pblk_calc_smeta_crc(struct pblk *pblk, struct line_smeta *smeta) pblk_calc_smeta_crc() argument
1172 pblk_calc_emeta_crc(struct pblk *pblk, struct line_emeta *emeta) pblk_calc_emeta_crc() argument
1186 pblk_io_aligned(struct pblk *pblk, int nr_secs) pblk_io_aligned() argument
1192 print_ppa(struct pblk *pblk, struct ppa_addr *p, char *msg, int error) print_ppa() argument
1212 pblk_print_failed_rqd(struct pblk *pblk, struct nvm_rq *rqd, int error) pblk_print_failed_rqd() argument
1265 pblk_check_io(struct pblk *pblk, struct nvm_rq *rqd) pblk_check_io() argument
1298 pblk_boundary_paddr_checks(struct pblk *pblk, u64 paddr) pblk_boundary_paddr_checks() argument
1323 pblk_disk_name(struct pblk *pblk) pblk_disk_name() argument
1330 pblk_get_min_chks(struct pblk *pblk) pblk_get_min_chks() argument
1340 pblk_get_meta(struct pblk *pblk, void *meta, int index) pblk_get_meta() argument
1348 pblk_dma_meta_size(struct pblk *pblk) pblk_dma_meta_size() argument
1354 pblk_is_oob_meta_supported(struct pblk *pblk) pblk_is_oob_meta_supported() argument
[all...]
H A Dpblk-recovery.c15 * pblk-recovery.c - pblk's recovery path
21 #include "pblk.h"
22 #include "pblk-trace.h"
24 int pblk_recov_check_emeta(struct pblk *pblk, struct line_emeta *emeta_buf) in pblk_recov_check_emeta() argument
28 crc = pblk_calc_emeta_crc(pblk, emeta_buf); in pblk_recov_check_emeta()
38 static int pblk_recov_l2p_from_emeta(struct pblk *pblk, struct pblk_line *line) in pblk_recov_l2p_from_emeta() argument
40 struct nvm_tgt_dev *dev = pblk in pblk_recov_l2p_from_emeta()
93 pblk_update_line_wp(struct pblk *pblk, struct pblk_line *line, u64 written_secs) pblk_update_line_wp() argument
116 pblk_sec_in_open_line(struct pblk *pblk, struct pblk_line *line) pblk_sec_in_open_line() argument
162 struct pblk *pblk = pad_rq->pblk; pblk_end_io_recov() local
173 pblk_recov_pad_line(struct pblk *pblk, struct pblk_line *line, int left_ppas) pblk_recov_pad_line() argument
291 pblk_pad_distance(struct pblk *pblk, struct pblk_line *line) pblk_pad_distance() argument
301 pblk_get_stripe_chunk(struct pblk *pblk, struct pblk_line *line, int index) pblk_get_stripe_chunk() argument
318 pblk_line_wps_are_unbalanced(struct pblk *pblk, struct pblk_line *line) pblk_line_wps_are_unbalanced() argument
354 pblk_recov_scan_oob(struct pblk *pblk, struct pblk_line *line, struct pblk_recov_alloc p) pblk_recov_scan_oob() argument
477 pblk_recov_l2p_from_oob(struct pblk *pblk, struct pblk_line *line) pblk_recov_l2p_from_oob() argument
543 pblk_line_emeta_start(struct pblk *pblk, struct pblk_line *line) pblk_line_emeta_start() argument
567 pblk_recov_check_line_version(struct pblk *pblk, struct line_emeta *emeta) pblk_recov_check_line_version() argument
587 pblk_recov_wa_counters(struct pblk *pblk, struct line_emeta *emeta) pblk_recov_wa_counters() argument
610 pblk_line_was_written(struct pblk_line *line, struct pblk *pblk) pblk_line_was_written() argument
639 pblk_line_is_open(struct pblk *pblk, struct pblk_line *line) pblk_line_is_open() argument
651 pblk_recov_l2p(struct pblk *pblk) pblk_recov_l2p() argument
855 pblk_recov_pad(struct pblk *pblk) pblk_recov_pad() argument
[all...]
H A Dpblk-gc.c16 * pblk-gc.c - pblk's garbage collector
19 #include "pblk.h"
20 #include "pblk-trace.h"
31 static int pblk_gc_write(struct pblk *pblk) in pblk_gc_write() argument
33 struct pblk_gc *gc = &pblk->gc; in pblk_gc_write()
48 pblk_write_gc_to_cache(pblk, gc_rq); in pblk_gc_write()
62 void pblk_put_line_back(struct pblk *pblk, struc argument
90 struct pblk *pblk = gc_rq_ws->pblk; pblk_gc_line_ws() local
131 get_lba_list_from_emeta(struct pblk *pblk, struct pblk_line *line) get_lba_list_from_emeta() argument
180 struct pblk *pblk = line_ws->pblk; pblk_gc_line_prepare_ws() local
302 pblk_gc_line(struct pblk *pblk, struct pblk_line *line) pblk_gc_line() argument
328 pblk_gc_kick(struct pblk *pblk) pblk_gc_kick() argument
343 pblk_gc_read(struct pblk *pblk) pblk_gc_read() argument
371 pblk_gc_get_victim_line(struct pblk *pblk, struct list_head *group_list) pblk_gc_get_victim_line() argument
407 pblk_gc_free_full_lines(struct pblk *pblk) pblk_gc_free_full_lines() argument
444 pblk_gc_run(struct pblk *pblk) pblk_gc_run() argument
503 struct pblk *pblk = from_timer(pblk, t, gc.gc_timer); pblk_gc_timer() local
510 struct pblk *pblk = data; pblk_gc_ts() local
523 struct pblk *pblk = data; pblk_gc_writer_ts() local
537 struct pblk *pblk = data; pblk_gc_reader_ts() local
562 pblk_gc_start(struct pblk *pblk) pblk_gc_start() argument
568 pblk_gc_should_start(struct pblk *pblk) pblk_gc_should_start() argument
578 pblk_gc_should_stop(struct pblk *pblk) pblk_gc_should_stop() argument
586 pblk_gc_should_kick(struct pblk *pblk) pblk_gc_should_kick() argument
591 pblk_gc_sysfs_state_show(struct pblk *pblk, int *gc_enabled, int *gc_active) pblk_gc_sysfs_state_show() argument
602 pblk_gc_sysfs_force(struct pblk *pblk, int force) pblk_gc_sysfs_force() argument
623 pblk_gc_init(struct pblk *pblk) pblk_gc_init() argument
703 pblk_gc_exit(struct pblk *pblk, bool graceful) pblk_gc_exit() argument
[all...]
H A Dpblk-sysfs.c18 * pblk-sysfs.c - pblk's sysfs
22 #include "pblk.h"
24 static ssize_t pblk_sysfs_luns_show(struct pblk *pblk, char *page) in pblk_sysfs_luns_show() argument
26 struct nvm_tgt_dev *dev = pblk->dev; in pblk_sysfs_luns_show()
35 rlun = &pblk->luns[i]; in pblk_sysfs_luns_show()
41 "pblk: pos:%d, ch:%d, lun:%d - %d\n", in pblk_sysfs_luns_show()
51 static ssize_t pblk_sysfs_rate_limiter(struct pblk *pblk, cha argument
83 pblk_sysfs_gc_state_show(struct pblk *pblk, char *page) pblk_sysfs_gc_state_show() argument
92 pblk_sysfs_stats(struct pblk *pblk, char *page) pblk_sysfs_stats() argument
108 pblk_sysfs_write_buffer(struct pblk *pblk, char *page) pblk_sysfs_write_buffer() argument
113 pblk_sysfs_ppaf(struct pblk *pblk, char *page) pblk_sysfs_ppaf() argument
164 pblk_sysfs_lines(struct pblk *pblk, char *page) pblk_sysfs_lines() argument
309 pblk_sysfs_lines_info(struct pblk *pblk, char *page) pblk_sysfs_lines_info() argument
337 pblk_sysfs_get_sec_per_write(struct pblk *pblk, char *page) pblk_sysfs_get_sec_per_write() argument
368 pblk_sysfs_get_write_amp_mileage(struct pblk *pblk, char *page) pblk_sysfs_get_write_amp_mileage() argument
375 pblk_sysfs_get_write_amp_trip(struct pblk *pblk, char *page) pblk_sysfs_get_write_amp_trip() argument
393 pblk_sysfs_get_padding_dist(struct pblk *pblk, char *page) pblk_sysfs_get_padding_dist() argument
431 pblk_sysfs_stats_debug(struct pblk *pblk, char *page) pblk_sysfs_stats_debug() argument
451 pblk_sysfs_gc_force(struct pblk *pblk, const char *page, size_t len) pblk_sysfs_gc_force() argument
469 pblk_sysfs_set_sec_per_write(struct pblk *pblk, const char *page, size_t len) pblk_sysfs_set_sec_per_write() argument
499 pblk_sysfs_set_write_amp_trip(struct pblk *pblk, const char *page, size_t len) pblk_sysfs_set_write_amp_trip() argument
523 pblk_sysfs_set_padding_dist(struct pblk *pblk, const char *page, size_t len) pblk_sysfs_set_padding_dist() argument
644 struct pblk *pblk = container_of(kobj, struct pblk, kobj); pblk_sysfs_show() local
680 struct pblk *pblk = container_of(kobj, struct pblk, kobj); pblk_sysfs_store() local
705 struct pblk *pblk = tdisk->private_data; pblk_sysfs_init() local
723 struct pblk *pblk = tdisk->private_data; pblk_sysfs_exit() local
[all...]
H A Dpblk-read.c16 * pblk-read.c - pblk's read path
19 #include "pblk.h"
28 static int pblk_read_from_cache(struct pblk *pblk, struct bio *bio, in pblk_read_from_cache() argument
37 return pblk_rb_copy_to_bio(&pblk->rwb, bio, lba, ppa); in pblk_read_from_cache()
40 static int pblk_read_ppalist_rq(struct pblk *pblk, struct nvm_rq *rqd, in pblk_read_ppalist_rq() argument
48 nr_secs = pblk_lookup_l2p_seq(pblk, rqd->ppa_list, blba, rqd->nr_ppas, in pblk_read_ppalist_rq()
55 struct pblk_sec_meta *meta = pblk_get_meta(pblk, meta_lis in pblk_read_ppalist_rq()
109 pblk_read_check_seq(struct pblk *pblk, struct nvm_rq *rqd, sector_t blba) pblk_read_check_seq() argument
142 pblk_read_check_rand(struct pblk *pblk, struct nvm_rq *rqd, u64 *lba_list, int nr_lbas) pblk_read_check_rand() argument
187 __pblk_end_io_read(struct pblk *pblk, struct nvm_rq *rqd, bool put_line) __pblk_end_io_read() argument
216 struct pblk *pblk = rqd->private; pblk_end_io_read() local
224 pblk_read_rq(struct pblk *pblk, struct nvm_rq *rqd, struct bio *bio, sector_t lba, bool *from_cache) pblk_read_rq() argument
263 pblk_submit_read(struct pblk *pblk, struct bio *bio) pblk_submit_read() argument
349 read_ppalist_rq_gc(struct pblk *pblk, struct nvm_rq *rqd, struct pblk_line *line, u64 *lba_list, u64 *paddr_list_gc, unsigned int nr_secs) read_ppalist_rq_gc() argument
380 read_rq_gc(struct pblk *pblk, struct nvm_rq *rqd, struct pblk_line *line, sector_t lba, u64 paddr_gc) read_rq_gc() argument
415 pblk_submit_read_gc(struct pblk *pblk, struct pblk_gc_rq *gc_rq) pblk_submit_read_gc() argument
[all...]
H A Dpblk-map.c16 * pblk-map.c - pblk's lba-ppa mapping strategy
20 #include "pblk.h"
22 static int pblk_map_page_data(struct pblk *pblk, unsigned int sentry, in pblk_map_page_data() argument
28 struct pblk_line *line = pblk_line_get_data(pblk); in pblk_map_page_data()
33 int nr_secs = pblk->min_write_pgs; in pblk_map_page_data()
45 line = pblk_line_replace_data(pblk); in pblk_map_page_data()
46 pblk_line_close_meta(pblk, prev_line); in pblk_map_page_data()
49 pblk_pipeline_stop(pblk); in pblk_map_page_data()
96 pblk_map_rq(struct pblk *pblk, struct nvm_rq *rqd, unsigned int sentry, unsigned long *lun_bitmap, unsigned int valid_secs, unsigned int off) pblk_map_rq() argument
122 pblk_map_erase_rq(struct pblk *pblk, struct nvm_rq *rqd, unsigned int sentry, unsigned long *lun_bitmap, unsigned int valid_secs, struct ppa_addr *erase_ppa) pblk_map_erase_rq() argument
[all...]
H A Dpblk-cache.c16 * pblk-cache.c - pblk's write cache
19 #include "pblk.h"
21 void pblk_write_to_cache(struct pblk *pblk, struct bio *bio, in pblk_write_to_cache() argument
38 ret = pblk_rb_may_write_user(&pblk->rwb, bio, nr_entries, &bpos); in pblk_write_to_cache()
44 pblk_pipeline_stop(pblk); in pblk_write_to_cache()
53 pblk_write_kick(pblk); in pblk_write_to_cache()
64 pos = pblk_rb_wrap_pos(&pblk->rwb, bpos + i); in pblk_write_to_cache()
65 pblk_rb_write_entry_user(&pblk in pblk_write_to_cache()
91 pblk_write_gc_to_cache(struct pblk *pblk, struct pblk_gc_rq *gc_rq) pblk_write_gc_to_cache() argument
[all...]
H A DMakefile7 obj-$(CONFIG_NVM_PBLK) += pblk.o
8 pblk-y := pblk-init.o pblk-core.o pblk-rb.o \
9 pblk-write.o pblk-cache.o pblk-read.o \
10 pblk-gc.o pblk
[all...]
H A Dpblk-rb.c17 * pblk-rb.c - pblk's write buffer
22 #include "pblk.h"
75 struct pblk *pblk = container_of(rb, struct pblk, rwb); in pblk_rb_init() local
165 pblk_rl_init(&pblk->rl, rb->nr_entries, threshold); in pblk_rb_init()
176 "pblk: overwriting unsubmitted data\n"); in clean_wctx()
239 struct pblk *pblk in __pblk_rb_update_l2p() local
340 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_write_entry_user() local
364 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_write_entry_gc() local
454 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_flush() local
476 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_may_write_flush() local
497 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_may_write_user() local
524 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_may_write_gc() local
554 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_read_to_bio() local
647 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_copy_to_bio() local
811 struct pblk *pblk = container_of(rb, struct pblk, rwb); pblk_rb_sysfs() local
[all...]
H A Dpblk-rl.c16 * pblk-rl.c - pblk's rate limiter for user I/O
20 #include "pblk.h"
111 struct pblk *pblk = container_of(rl, struct pblk, rl); in __pblk_rl_update_rates() local
149 pblk_gc_should_start(pblk); in __pblk_rl_update_rates()
151 pblk_gc_should_stop(pblk); in __pblk_rl_update_rates()
212 struct pblk *pblk in pblk_rl_init() local
[all...]
H A Dpblk-trace.h3 #define TRACE_SYSTEM pblk
144 #define TRACE_INCLUDE_FILE pblk-trace
/kernel/linux/linux-5.10/fs/crypto/
H A Dbio.c45 pgoff_t lblk, sector_t pblk, in fscrypt_zeroout_range_inline_crypt()
65 pblk << (blockbits - SECTOR_SHIFT); in fscrypt_zeroout_range_inline_crypt()
76 pblk += blocks_this_page; in fscrypt_zeroout_range_inline_crypt()
95 * @pblk: the first filesystem physical block to zero out
109 sector_t pblk, unsigned int len) in fscrypt_zeroout_range()
126 return fscrypt_zeroout_range_inline_crypt(inode, lblk, pblk, in fscrypt_zeroout_range()
155 bio->bi_iter.bi_sector = pblk << (blockbits - 9); in fscrypt_zeroout_range()
167 pblk++; in fscrypt_zeroout_range()
44 fscrypt_zeroout_range_inline_crypt(const struct inode *inode, pgoff_t lblk, sector_t pblk, unsigned int len) fscrypt_zeroout_range_inline_crypt() argument
108 fscrypt_zeroout_range(const struct inode *inode, pgoff_t lblk, sector_t pblk, unsigned int len) fscrypt_zeroout_range() argument
/kernel/linux/linux-6.6/fs/crypto/
H A Dbio.c49 pgoff_t lblk, sector_t pblk, in fscrypt_zeroout_range_inline_crypt()
69 pblk << (blockbits - SECTOR_SHIFT); in fscrypt_zeroout_range_inline_crypt()
79 pblk += blocks_this_page; in fscrypt_zeroout_range_inline_crypt()
98 * @pblk: the first filesystem physical block to zero out
112 sector_t pblk, unsigned int len) in fscrypt_zeroout_range()
129 return fscrypt_zeroout_range_inline_crypt(inode, lblk, pblk, in fscrypt_zeroout_range()
157 bio->bi_iter.bi_sector = pblk << (blockbits - 9); in fscrypt_zeroout_range()
168 pblk++; in fscrypt_zeroout_range()
48 fscrypt_zeroout_range_inline_crypt(const struct inode *inode, pgoff_t lblk, sector_t pblk, unsigned int len) fscrypt_zeroout_range_inline_crypt() argument
111 fscrypt_zeroout_range(const struct inode *inode, pgoff_t lblk, sector_t pblk, unsigned int len) fscrypt_zeroout_range() argument
/kernel/linux/linux-5.10/include/trace/events/
H A Dext4.h1727 __field( ext4_fsblk_t, pblk )
1738 __entry->pblk = map->m_pblk;
1745 TP_printk("dev %d,%d ino %lu flags %s lblk %u pblk %llu len %u "
1749 show_map_flags(__entry->flags), __entry->lblk, __entry->pblk,
1768 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk),
1770 TP_ARGS(inode, lblk, pblk),
1775 __field( ext4_fsblk_t, pblk )
1782 __entry->pblk = pblk;
1786 TP_printk("dev %d,%d ino %lu lblk %u pblk
[all...]
/kernel/linux/linux-6.6/include/trace/events/
H A Dext4.h1671 __field( ext4_fsblk_t, pblk )
1682 __entry->pblk = map->m_pblk;
1689 TP_printk("dev %d,%d ino %lu flags %s lblk %u pblk %llu len %u "
1693 show_map_flags(__entry->flags), __entry->lblk, __entry->pblk,
1712 TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk),
1714 TP_ARGS(inode, lblk, pblk),
1719 __field( ext4_fsblk_t, pblk )
1726 __entry->pblk = pblk;
1730 TP_printk("dev %d,%d ino %lu lblk %u pblk
[all...]
/kernel/linux/linux-5.10/fs/ext4/
H A Dextents_status.h131 ext4_lblk_t len, ext4_fsblk_t pblk,
134 ext4_lblk_t len, ext4_fsblk_t pblk,
H A Dextents.c369 ext4_lblk_t lblk, ext4_fsblk_t *pblk, in ext4_valid_extent_entries()
399 *pblk = ext4_ext_pblock(ext); in ext4_valid_extent_entries()
423 *pblk = ext4_idx_pblock(ext_idx); in ext4_valid_extent_entries()
436 int depth, ext4_fsblk_t pblk, ext4_lblk_t lblk) in __ext4_ext_check()
466 if (!ext4_valid_extent_entries(inode, eh, lblk, &pblk, depth)) { in __ext4_ext_check()
485 "pblk %llu bad header/extent: %s - magic %x, " in __ext4_ext_check()
487 (unsigned long long) pblk, error_msg, in __ext4_ext_check()
495 #define ext4_ext_check(inode, eh, depth, pblk) \
496 __ext4_ext_check(__func__, __LINE__, (inode), (eh), (depth), (pblk), 0)
535 ext4_fsblk_t pblk; in __read_extent_tree_block() local
367 ext4_valid_extent_entries(struct inode *inode, struct ext4_extent_header *eh, ext4_lblk_t lblk, ext4_fsblk_t *pblk, int depth) ext4_valid_extent_entries() argument
434 __ext4_ext_check(const char *function, unsigned int line, struct inode *inode, struct ext4_extent_header *eh, int depth, ext4_fsblk_t pblk, ext4_lblk_t lblk) __ext4_ext_check() argument
2465 ext4_fsblk_t last_pblk, pblk; ext4_remove_blocks() local
2609 ext4_fsblk_t pblk; ext4_ext_rm_leaf() local
2854 ext4_fsblk_t pblk; ext4_ext_remove_space() local
4098 ext4_fsblk_t newblock = 0, pblk; ext4_ext_map_blocks() local
5890 ext4_ext_replay_update_ex(struct inode *inode, ext4_lblk_t start, int len, int unwritten, ext4_fsblk_t pblk) ext4_ext_replay_update_ex() argument
[all...]
/kernel/linux/linux-6.6/fs/ext4/
H A Dextents_status.h131 ext4_lblk_t len, ext4_fsblk_t pblk,
134 ext4_lblk_t len, ext4_fsblk_t pblk,
H A Dextents.c389 ext4_lblk_t lblk, ext4_fsblk_t *pblk, in ext4_valid_extent_entries()
419 *pblk = ext4_ext_pblock(ext); in ext4_valid_extent_entries()
443 *pblk = ext4_idx_pblock(ext_idx); in ext4_valid_extent_entries()
456 int depth, ext4_fsblk_t pblk, ext4_lblk_t lblk) in __ext4_ext_check()
486 if (!ext4_valid_extent_entries(inode, eh, lblk, &pblk, depth)) { in __ext4_ext_check()
505 "pblk %llu bad header/extent: %s - magic %x, " in __ext4_ext_check()
507 (unsigned long long) pblk, error_msg, in __ext4_ext_check()
515 #define ext4_ext_check(inode, eh, depth, pblk) \
516 __ext4_ext_check(__func__, __LINE__, (inode), (eh), (depth), (pblk), 0)
555 ext4_fsblk_t pblk; in __read_extent_tree_block() local
387 ext4_valid_extent_entries(struct inode *inode, struct ext4_extent_header *eh, ext4_lblk_t lblk, ext4_fsblk_t *pblk, int depth) ext4_valid_extent_entries() argument
454 __ext4_ext_check(const char *function, unsigned int line, struct inode *inode, struct ext4_extent_header *eh, int depth, ext4_fsblk_t pblk, ext4_lblk_t lblk) __ext4_ext_check() argument
2437 ext4_fsblk_t last_pblk, pblk; ext4_remove_blocks() local
2581 ext4_fsblk_t pblk; ext4_ext_rm_leaf() local
2825 ext4_fsblk_t pblk; ext4_ext_remove_space() local
4129 ext4_fsblk_t newblock = 0, pblk; ext4_ext_map_blocks() local
5875 ext4_ext_replay_update_ex(struct inode *inode, ext4_lblk_t start, int len, int unwritten, ext4_fsblk_t pblk) ext4_ext_replay_update_ex() argument
[all...]
/kernel/linux/linux-5.10/drivers/net/wireless/quantenna/qtnfmac/pcie/
H A Dpearl_pcie.c908 int blk, const u8 *pblk, const u8 *fw) in qtnf_ep_fw_send()
940 if (pblk >= (fw + size - len)) { in qtnf_ep_fw_send()
941 len = fw + size - pblk; in qtnf_ep_fw_send()
946 memcpy(pdata, pblk, len); in qtnf_ep_fw_send()
959 const u8 *pblk = fw; in qtnf_ep_fw_load() local
972 len = qtnf_ep_fw_send(ps->base.pdev, fw_size, blk, pblk, fw); in qtnf_ep_fw_load()
996 pblk -= ((last_round - 1) * in qtnf_ep_fw_load()
1000 pblk -= QTN_PCIE_FW_DLMASK * blk_size; in qtnf_ep_fw_load()
1013 pblk += len; in qtnf_ep_fw_load()
907 qtnf_ep_fw_send(struct pci_dev *pdev, uint32_t size, int blk, const u8 *pblk, const u8 *fw) qtnf_ep_fw_send() argument
/kernel/linux/linux-6.6/drivers/net/wireless/quantenna/qtnfmac/pcie/
H A Dpearl_pcie.c908 int blk, const u8 *pblk, const u8 *fw) in qtnf_ep_fw_send()
940 if (pblk >= (fw + size - len)) { in qtnf_ep_fw_send()
941 len = fw + size - pblk; in qtnf_ep_fw_send()
946 memcpy(pdata, pblk, len); in qtnf_ep_fw_send()
959 const u8 *pblk = fw; in qtnf_ep_fw_load() local
972 len = qtnf_ep_fw_send(ps->base.pdev, fw_size, blk, pblk, fw); in qtnf_ep_fw_load()
996 pblk -= ((last_round - 1) * in qtnf_ep_fw_load()
1000 pblk -= QTN_PCIE_FW_DLMASK * blk_size; in qtnf_ep_fw_load()
1013 pblk += len; in qtnf_ep_fw_load()
907 qtnf_ep_fw_send(struct pci_dev *pdev, uint32_t size, int blk, const u8 *pblk, const u8 *fw) qtnf_ep_fw_send() argument
/kernel/linux/linux-5.10/fs/erofs/
H A Dzmap.c114 erofs_blk_t pblk; member
186 m->pblk = le32_to_cpu(di->di_u.blkaddr); in legacy_load_cluster_from_disk()
254 /* figout out blkaddr (pblk) for HEAD lclusters */ in unpack_compacted_index()
267 m->pblk = le32_to_cpu(*(__le32 *)in) + nblk; in unpack_compacted_index()
461 map->m_pa = blknr_to_addr(m.pblk); in z_erofs_map_blocks_iter()

Completed in 24 milliseconds

123