[PATCH 1/2] Split return functionality of get_non_stale_global_range.
Tue Nov 23 17:02:22 GMT 2021
This is the first of 2 patches which will reduce the depth of the call
chain in ranger.
This patch simply splits the functionality of the routine
get_non_stale_global_range() from a single boolean return to a boolean
return and a bool reference.
This routine queries the global cache for a value. If there is no
value, it queries the legacy global range and sets it to that value. If
there was a value, it checks the temporal cache to see if its current,
and if it is, returns TRUe plus the range.
If the value is not currrent, or it was set to the legacy global value,
then the timestamp is marked as "always current" as it indicates a
calculation is ongoing, and we dont want to trigger any additional
temporal faults until the calculation is done. And finallt FALSE is
returned for all these cases.
The second patch in the series wants to disambiguate at the call site
whether this was a failure due to not being in the global cache, or
whether it was due to the timestamp being out of date and take different
actions for each case. Details in the following note.
This has been Bootstrapped on x86_64-pc-linux-gnu with no regressions. OK?
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 6035 bytes
Desc: not available
More information about the Gcc-patches