Lines Matching defs:pblk_line
435 struct pblk_line { struct
436 struct pblk *pblk;
437 unsigned int id; /* Line number corresponds to the
440 unsigned int seq_nr; /* Unique line sequence number */
442 int state; /* PBLK_LINESTATE_X */
443 int type; /* PBLK_LINETYPE_X */
444 int gc_group; /* PBLK_LINEGC_X */
445 struct list_head list; /* Free, GC lists */
447 unsigned long *lun_bitmap; /* Bitmap for LUNs mapped in line */
449 struct nvm_chk_meta *chks; /* Chunks forming line */
451 struct pblk_smeta *smeta; /* Start metadata */
452 struct pblk_emeta *emeta; /* End medatada */
454 int meta_line; /* Metadata line id */
455 int meta_distance; /* Distance between data and metadata */
457 u64 smeta_ssec; /* Sector where smeta starts */
458 u64 emeta_ssec; /* Sector where emeta starts */
460 unsigned int sec_in_line; /* Number of usable secs in line */
462 atomic_t blk_in_line; /* Number of good blocks in line */
463 unsigned long *blk_bitmap; /* Bitmap for valid/invalid blocks */
464 unsigned long *erase_bitmap; /* Bitmap for erased blocks */
466 unsigned long *map_bitmap; /* Bitmap for mapped sectors in line */
467 unsigned long *invalid_bitmap; /* Bitmap for invalid sectors in line */
469 atomic_t left_eblks; /* Blocks left for erasing */
470 atomic_t left_seblks; /* Blocks left for sync erasing */
472 int left_msecs; /* Sectors left for mapping */
473 unsigned int cur_sec; /* Sector map pointer */
474 unsigned int nr_valid_lbas; /* Number of valid lbas in line */
498 struct pblk_line_mgmt { argument