__le64 *pblk_recov_get_lba_list(struct pblk *pblk, struct line_emeta *emeta_buf) { u32 crc; crc = pblk_calc_emeta_crc(pblk, emeta_buf); if (le32_to_cpu(emeta_buf->crc) != crc) return NULL; if (le32_to_cpu(emeta_buf->header.identifier) != PBLK_MAGIC) return NULL; return emeta_to_lbas(pblk, emeta_buf); }
int pblk_recov_check_emeta(struct pblk *pblk, struct line_emeta *emeta_buf) { u32 crc; crc = pblk_calc_emeta_crc(pblk, emeta_buf); if (le32_to_cpu(emeta_buf->crc) != crc) return 1; if (le32_to_cpu(emeta_buf->header.identifier) != PBLK_MAGIC) return 1; return 0; }