ftl: temporarily disable reading the cached va in trace_path()

tags/0.1.0
S.J.R. van Schaik 7 years ago
parent 6c7594acaa
commit f7b11a8726
  1. 8
      source/ftl/map.c

@ -382,7 +382,9 @@ int trace_path(struct ftl_map *map, struct ftl_page_desc *new_page_desc,
uint8_t depth = 0;
uint32_t upage = map->root;
if ((map->flags & FTL_CACHED_VA) && map->last_va == va) {
#if 0
/* FIXME */
if (!new_page_desc && (map->flags & FTL_CACHED_VA) && map->last_va == va) {
if (map->flags & FTL_UNMAPPED)
return -1;
@ -391,6 +393,9 @@ int trace_path(struct ftl_map *map, struct ftl_page_desc *new_page_desc,
return 0;
}
#endif
map->flags &= ~(FTL_CACHED_VA | FTL_UNMAPPED);
if (new_page_desc)
new_page_desc->va = va;
@ -428,7 +433,6 @@ int trace_path(struct ftl_map *map, struct ftl_page_desc *new_page_desc,
*page = upage;
map->flags |= FTL_CACHED_VA;
map->flags &= ~FTL_UNMAPPED;
map->last_va = va;
map->last_pa = upage;

Loading…
Cancel
Save