Merge pull request #55 from MinneyJohn/metadata_improve

Improvement of metadata flush setting
This commit is contained in:
Robert Bałdyga 2019-02-19 15:49:02 +01:00 committed by GitHub
commit 163392af0b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 5 deletions

View File

@ -117,7 +117,8 @@ void ocf_engine_update_req_info(struct ocf_cache *cache,
req->info.dirty_any++;
/* Check if cache line is fully dirty */
if (metadata_test_dirty_all(cache, _entry->coll_idx))
if (metadata_test_dirty_sec(cache, _entry->coll_idx,
start_sector, end_sector))
req->info.dirty_all++;
}

View File

@ -133,9 +133,9 @@ void set_cache_line_clean(struct ocf_cache *cache, uint8_t start_bit,
evict_policy_ops[evp_type].clean_cline(cache, part_id, line);
ocf_purge_cleaning_policy(cache, line);
ocf_metadata_flush_mark(cache, req, map_idx, CLEAN, start_bit,
end_bit);
}
ocf_metadata_flush_mark(cache, req, map_idx, CLEAN, start_bit, end_bit);
}
void set_cache_line_dirty(struct ocf_cache *cache, uint8_t start_bit,
@ -169,9 +169,10 @@ void set_cache_line_dirty(struct ocf_cache *cache, uint8_t start_bit,
if (likely(evict_policy_ops[evp_type].dirty_cline))
evict_policy_ops[evp_type].dirty_cline(cache, part_id, line);
ocf_metadata_flush_mark(cache, req, map_idx, DIRTY, start_bit,
end_bit);
}
ocf_cleaning_set_hot_cache_line(cache, line);
ocf_metadata_flush_mark(cache, req, map_idx, DIRTY, start_bit, end_bit);
}