discard_info
r = dm_bitset_resize(&cmd->discard_info,
return dm_bitset_set_bit(&cmd->discard_info, cmd->discard_root,
return dm_bitset_clear_bit(&cmd->discard_info, cmd->discard_root,
struct dm_disk_bitset discard_info;
r = dm_bitset_flush(&cmd->discard_info, cmd->discard_root, &cmd->discard_root);
r = dm_bitset_cursor_begin(&cmd->discard_info, cmd->discard_root,
dm_disk_bitset_init(cmd->tm, &cmd->discard_info);
r = dm_bitset_empty(&cmd->discard_info, &cmd->discard_root);
dm_disk_bitset_init(cmd->tm, &cmd->discard_info);
r = dm_bitset_flush(&cmd->discard_info, cmd->discard_root,
struct page_info *discard_info = NULL;
discard_info = page_completion->info;
if (discard_info != NULL) {
if (discard_info->write_status == WRITE_STATUS_DEFERRED) {
discard_info->write_status = WRITE_STATUS_NORMAL;
launch_page_save(discard_info);
static inline bool __is_discard_mergeable(struct discard_info *back,
struct discard_info *front, unsigned int max_len)
static inline bool __is_discard_back_mergeable(struct discard_info *cur,
struct discard_info *back, unsigned int max_len)
static inline bool __is_discard_front_mergeable(struct discard_info *cur,
struct discard_info *front, unsigned int max_len)
struct discard_info di; /* discard info */
struct discard_info di = dc->di;
struct discard_info di = {0};