Home
last modified time | relevance | path

Searched refs:chunk (Results 1 – 13 of 13) sorted by relevance

/spdk/lib/ftl/
H A Dftl_nv_cache.c77 get_chunk_idx(struct ftl_nv_cache_chunk *chunk) in get_chunk_idx() argument
79 struct ftl_nv_cache_chunk *first_chunk = chunk->nv_cache->chunks; in get_chunk_idx()
81 return (chunk->offset - first_chunk->offset) / chunk->nv_cache->chunk_blocks; in get_chunk_idx()
120 /* Move the dummy region along with the active chunk */ in nvc_scrub_find_next_chunk()
133 /* Move to the next chunk */ in nvc_scrub_clear_cb()
148 /* Scrub the next chunk */ in nvc_scrub_clear_cb()
172 /* Setup a dummy region for the first chunk */ in ftl_nv_cache_scrub()
204 /* Scrub the first chunk */ in ftl_nv_cache_scrub()
219 struct ftl_nv_cache_chunk *chunk; in ftl_nv_cache_init() local
367 chunk_get_free_space(struct ftl_nv_cache * nv_cache,struct ftl_nv_cache_chunk * chunk) chunk_get_free_space() argument
376 chunk_is_closed(struct ftl_nv_cache_chunk * chunk) chunk_is_closed() argument
389 struct ftl_nv_cache_chunk *chunk; ftl_nv_cache_get_wr_buffer() local
446 struct ftl_nv_cache_chunk *chunk = io->nv_cache_chunk; ftl_nv_cache_fill_md() local
464 chunk_advance_blocks(struct ftl_nv_cache * nv_cache,struct ftl_nv_cache_chunk * chunk,uint64_t advanced_blocks) chunk_advance_blocks() argument
477 chunk_user_blocks_written(struct ftl_nv_cache_chunk * chunk) chunk_user_blocks_written() argument
484 is_chunk_compacted(struct ftl_nv_cache_chunk * chunk) is_chunk_compacted() argument
496 ftl_chunk_alloc_md_entry(struct ftl_nv_cache_chunk * chunk) ftl_chunk_alloc_md_entry() argument
512 ftl_chunk_free_md_entry(struct ftl_nv_cache_chunk * chunk) ftl_chunk_free_md_entry() argument
521 ftl_chunk_free(struct ftl_nv_cache_chunk * chunk) ftl_chunk_free() argument
533 ftl_chunk_alloc_chunk_free_entry(struct ftl_nv_cache_chunk * chunk) ftl_chunk_alloc_chunk_free_entry() argument
548 ftl_chunk_free_chunk_free_entry(struct ftl_nv_cache_chunk * chunk) ftl_chunk_free_chunk_free_entry() argument
559 struct ftl_nv_cache_chunk *chunk = (struct ftl_nv_cache_chunk *)ctx; chunk_free_cb() local
588 struct ftl_nv_cache_chunk *tchunk, *chunk = NULL; ftl_chunk_persist_free_state() local
610 compaction_stats_update(struct ftl_nv_cache_chunk * chunk) compaction_stats_update() argument
640 chunk_compaction_advance(struct ftl_nv_cache_chunk * chunk,uint64_t num_blocks) chunk_compaction_advance() argument
737 struct ftl_nv_cache_chunk *chunk = entry->owner.priv; compaction_process_pin_lba() local
803 is_chunk_to_read(struct ftl_nv_cache_chunk * chunk) is_chunk_to_read() argument
817 struct ftl_nv_cache_chunk *chunk = NULL; get_chunk_for_compaction() local
845 chunk_blocks_to_read(struct ftl_nv_cache_chunk * chunk) chunk_blocks_to_read() argument
919 compaction_chunk_read_pos(struct spdk_ftl_dev * dev,struct ftl_nv_cache_chunk * chunk) compaction_chunk_read_pos() argument
951 struct ftl_nv_cache_chunk *chunk = NULL; compaction_entry_read_pos() local
1050 struct ftl_nv_cache_chunk *chunk = entry->owner.priv; compaction_process_ftl_done() local
1077 struct ftl_nv_cache_chunk *chunk = entry->owner.priv; compaction_process_finish_read() local
1318 ftl_chunk_map_set_lba(struct ftl_nv_cache_chunk * chunk,uint64_t offset,uint64_t lba) ftl_chunk_map_set_lba() argument
1328 ftl_chunk_map_get_lba(struct ftl_nv_cache_chunk * chunk,uint64_t offset) ftl_chunk_map_get_lba() argument
1337 ftl_chunk_set_addr(struct ftl_nv_cache_chunk * chunk,uint64_t lba,ftl_addr addr) ftl_chunk_set_addr() argument
1350 struct ftl_nv_cache_chunk *chunk = dev->nv_cache.chunks; ftl_nv_cache_get_chunk_from_addr() local
1364 struct ftl_nv_cache_chunk *chunk; ftl_nv_cache_set_addr() local
1423 struct ftl_nv_cache_chunk *chunk = TAILQ_FIRST(&nv_cache->chunk_free_list); ftl_nv_cache_process() local
1461 chunk_free_p2l_map(struct ftl_nv_cache_chunk * chunk) chunk_free_p2l_map() argument
1476 struct ftl_nv_cache_chunk *chunk; ftl_nv_cache_save_state() local
1541 struct ftl_nv_cache_chunk *chunk; sort_chunks() local
1575 chunk_alloc_p2l_map(struct ftl_nv_cache_chunk * chunk) chunk_alloc_p2l_map() argument
1605 struct ftl_nv_cache_chunk *chunk; ftl_nv_cache_load_state() local
1745 struct ftl_nv_cache_chunk *chunk; ftl_nv_cache_get_max_seq_id() local
1766 struct ftl_nv_cache_chunk *chunk = brq->io.chunk; write_brq_end() local
1804 ftl_chunk_basic_rq_write(struct ftl_nv_cache_chunk * chunk,struct ftl_basic_rq * brq) ftl_chunk_basic_rq_write() argument
1832 ftl_chunk_basic_rq_read(struct ftl_nv_cache_chunk * chunk,struct ftl_basic_rq * brq) ftl_chunk_basic_rq_read() argument
1854 struct ftl_nv_cache_chunk *chunk = (struct ftl_nv_cache_chunk *)ctx; chunk_open_cb() local
1869 ftl_chunk_open(struct ftl_nv_cache_chunk * chunk) ftl_chunk_open() argument
1903 struct ftl_nv_cache_chunk *chunk = (struct ftl_nv_cache_chunk *)ctx; chunk_close_cb() local
1933 struct ftl_nv_cache_chunk *chunk = brq->io.chunk; chunk_map_write_cb() local
1961 ftl_chunk_close(struct ftl_nv_cache_chunk * chunk) ftl_chunk_close() argument
1986 struct ftl_nv_cache_chunk *chunk = parent->io.chunk; restore_chunk_close_cb() local
2002 struct ftl_nv_cache_chunk *chunk = parent->io.chunk; restore_fill_p2l_map_cb() local
2030 restore_fill_tail_md(struct ftl_basic_rq * parent,struct ftl_nv_cache_chunk * chunk) restore_fill_tail_md() argument
2052 struct ftl_nv_cache_chunk *chunk = parent->io.chunk; read_open_chunk_cb() local
2113 restore_open_chunk(struct ftl_nv_cache_chunk * chunk,struct ftl_basic_rq * parent) restore_open_chunk() argument
2166 ftl_chunk_read_tail_md(struct ftl_nv_cache_chunk * chunk,struct ftl_basic_rq * brq,void (* cb)(struct ftl_basic_rq * brq),void * cb_ctx) ftl_chunk_read_tail_md() argument
2209 struct ftl_nv_cache_chunk *chunk = brq->io.chunk; walk_tail_md_cb() local
2267 struct ftl_nv_cache_chunk *chunk = &nvc->chunks[ctx->id]; ftl_mngt_nv_cache_walk_tail_md() local
2321 struct ftl_nv_cache_chunk *chunk; restore_chunk_state_cb() local
2395 struct ftl_nv_cache_chunk *chunk = brq->io.chunk; recover_open_chunk_cb() local
2428 struct ftl_nv_cache_chunk *chunk; ftl_mngt_nv_cache_recover_open_chunk() local
2488 struct ftl_nv_cache_chunk *chunk; ftl_nv_cache_halt() local
2531 struct ftl_nv_cache_chunk *chunk = nv_cache->chunk_current; ftl_nv_cache_acquire_trim_seq_id() local
2564 ftl_nv_cache_get_chunk_utilization(struct ftl_nv_cache * nv_cache,struct ftl_nv_cache_chunk * chunk) ftl_nv_cache_get_chunk_utilization() argument
2573 ftl_nv_cache_get_chunk_state_name(struct ftl_nv_cache_chunk * chunk) ftl_nv_cache_get_chunk_state_name() argument
2593 struct ftl_nv_cache_chunk *chunk; ftl_property_dump_cache_dev() local
[all...]
H A Dftl_nv_cache.h20 * Size of each chunk is multiple of xfer size plus additional metadata.
22 * written chunk by chunk sequentially. When number of free chunks reaches
71 /* Sequence ID when chunk was closed */
80 /* Number of skipped block (case when IO size is greater than blocks left in chunk) */
92 /* CRC32 checksum of the associated P2L map when chunk is in closed state */
121 /* This flag is used to indicate chunk is used in recovery */
175 /* Number of blocks in chunk */
178 /* Number of blocks in tail md per chunk */
184 /* Current processed chunk */
[all...]
H A Dftl_io.h282 struct ftl_nv_cache_chunk *chunk; member
/spdk/doc/
H A Dcompression.md42 A compressed block device compresses and decompresses data in units of chunks, where a chunk is a
43 multiple of at least two 4KB backing IO units. The number of backing IO units per chunk determines
44 the chunk size and is specified when the compressed block device is created. A chunk
45 consumes a number of 4KB backing IO units between 1 and the number of 4KB units in the chunk. For
46 example, a 16KB chunk consumes 1, 2, 3 or 4 backing IO units. The number of backing IO units depen…
47 much the chunk was able to be compressed. The blocks on disk associated with a chunk are stored in…
48 "chunk map" in persistent memory. Each chunk map consists of N 64-bit values, where N is the maxim…
49 number of backing IO units in the chunk. Each 64-bit value corresponds to a backing IO unit index.…
51 number of chunk maps allocated is equal to the size of the compressed block device divided by its c…
52 size, plus some number of extra chunk maps. These extra chunk maps are used to ensure atomicity on
[all …]
H A Dftl.md76 is moved to base_bdev. This process is called chunk compaction.
80 |chunk 1 |
88 |chunk N |
146 …e, FTL needs to rebuild the whole L2P using the address maps (`P2L`) stored within each band/chunk.
/spdk/module/bdev/raid/
H A Draid5f.c19 struct chunk { struct
54 struct chunk *parity_chunk;
73 struct chunk *chunk; member
100 struct chunk chunks[0];
162 raid5f_chunk_stripe_req(struct chunk *chunk) in raid5f_chunk_stripe_req() argument
164 return SPDK_CONTAINEROF((chunk - chunk->index), struct stripe_request, chunks); in raid5f_chunk_stripe_req()
286 struct chunk *chunk; in raid5f_xor_stripe() local
287 struct chunk *dest_chunk = NULL; in raid5f_xor_stripe()
298 dest_chunk = stripe_req->reconstruct.chunk; in raid5f_xor_stripe()
304 FOR_EACH_CHUNK(stripe_req, chunk) { in raid5f_xor_stripe()
[all …]
/spdk/test/unit/lib/bdev/raid/raid5f.c/
H A Draid5f_ut.c406 struct chunk *chunk = cb_arg; in spdk_bdev_writev_blocks_with_md() local
419 stripe_req = raid5f_chunk_stripe_req(chunk); in spdk_bdev_writev_blocks_with_md()
425 if (chunk == stripe_req->parity_chunk) { in spdk_bdev_writev_blocks_with_md()
434 data_chunk_idx = chunk < stripe_req->parity_chunk ? chunk->index : chunk->index - 1; in spdk_bdev_writev_blocks_with_md()
459 struct chunk *chunk = cb_arg; in spdk_bdev_readv_blocks_degraded() local
470 stripe_req = raid5f_chunk_stripe_req(chunk); in spdk_bdev_readv_blocks_degraded()
931 struct chunk *chunk; __test_raid5f_stripe_request_map_iovecs() local
[all...]
/spdk/lib/reduce/
H A Dreduce.c72 * Scratch buffer used for uncompressed chunk. This is used for:
75 * 3) data buffer when writing uncompressed chunk to disk
76 * 4) data buffer when reading uncompressed chunk from disk
90 * Scratch buffer used for compressed chunk. This is used for:
93 * 3) data buffer when writing compressed chunk to disk
94 * 4) data buffer when reading compressed chunk from disk
113 struct spdk_reduce_chunk_map *chunk;
137 /* Cache free chunks to speed up lookup of free chunk. */
766 * Note that this writes 0xFF to not just the logical map but the chunk maps as well. in _load_read_super_and_path_cpl()
805 struct spdk_reduce_chunk_map *chunk;
108 struct spdk_reduce_chunk_map *chunk; global() member
708 struct spdk_reduce_chunk_map *chunk; _load_read_super_and_path_cpl() local
[all...]
/spdk/scripts/
H A Drpc_http_proxy.py107 chunk = self.rfile.read(chunk_length)
108 data_string += chunk
/spdk/lib/ftl/mngt/
H A Dftl_mngt_recovery.c496 restore_chunk_l2p_cb(struct ftl_nv_cache_chunk *chunk, void *ctx) in restore_chunk_l2p_cb() argument
500 struct ftl_nv_cache *nv_cache = chunk->nv_cache; in restore_chunk_l2p_cb()
502 const uint64_t seq_id = chunk->md->seq_id; in restore_chunk_l2p_cb()
506 dev = SPDK_CONTAINEROF(chunk->nv_cache, struct spdk_ftl_dev, nv_cache); in restore_chunk_l2p_cb()
508 chunk_map_crc = spdk_crc32c_update(chunk->p2l_map.chunk_map, in restore_chunk_l2p_cb()
509 ftl_nv_cache_chunk_tail_md_num_blocks(chunk->nv_cache) * FTL_BLOCK_SIZE, 0); in restore_chunk_l2p_cb()
510 if (chunk->md->p2l_map_checksum != chunk_map_crc) { in restore_chunk_l2p_cb()
518 lba = ftl_chunk_map_get_lba(chunk, i); in restore_chunk_l2p_cb()
537 addr = ftl_addr_from_nvc_offset(dev, chunk->offset + i); in restore_chunk_l2p_cb()
/spdk/include/spdk/
H A Dnvme_ocssd_spec.h258 uint8_t chunk : 1; member
/spdk/test/unit/lib/reduce/reduce.c/
H A Dreduce_ut.c104 /* 100 chunks in logical map * 8 bytes per chunk */ in get_pm_file_size()
106 /* 100 chunks * (chunk struct size + 4 backing io units per chunk * 8 bytes per backing io unit) */ in get_pm_file_size()
110 * times (chunk struct size + 4 backing io units per chunk * 8 bytes per backing io unit). in get_pm_file_size()
755 const int bufsize = 16 * 1024; /* chunk size */ in _write_maps()
853 char buf[16 * 1024]; /* chunk size */ in _read_write()
955 * This is writing into the second chunk of the volume. This also in _read_write()
957 * correctly - making sure we don't use the first chunk map again in _read_write()
958 * for this new write - the first chunk ma in _read_write()
1569 struct spdk_reduce_chunk_map chunk = {}; test_reduce_decompress_chunk() local
[all...]
/spdk/scripts/perf/nvmf/
H A DREADME.md323 parameter value, and each "num_jobs" fio thread gets it's own chunk to