If the cache is invalid, _readtagcache() can return data which has a wrong
filenode. We want to fix the cache in such cases by replacing the wrong filenode
with a correct one. To do so, first the callers need to be aware from
which cache values returned by this function are read.
This patch adds a new return value which depicts the source of data return from
_readtagcache().
small nits: I would probably use 2 explicit line for this instead of a "one-liner" spawning 3 line: